public UpdateProvider ( long AtulServiceProviderID, string ServiceProviderName, string ServiceProviderDescription, int AtulServiceProviderClassID, string queue, int ModifiedBy, string ServiceProviderXML ) : bool | ||
AtulServiceProviderID | long | The atul service provider ID. |
ServiceProviderName | string | Name of the service provider. |
ServiceProviderDescription | string | The service provider description. |
AtulServiceProviderClassID | int | The atul service provider class ID. |
queue | string | The queue. |
ModifiedBy | int | The modified by. |
ServiceProviderXML | string | The service provider XML. |
return | bool |
public bool UpdateProvider(long AtulServiceProviderID, string ServiceProviderName, string ServiceProviderDescription, int AtulServiceProviderClassID, string queue, int ModifiedBy, string ServiceProviderXML)
{
SqlCommand cmd = new SqlCommand("exec dbo.Atul_ServiceProviderUpdate_sp @ServiceProviderName, @ServiceProviderDescription, @AtulServiceProviderClassID, @CreatedBy, @ServiceProviderXML, @ESBQueue", this._connection);
cmd.Parameters.Add(new SqlParameter("@AtulServiceProviderID", AtulServiceProviderID));
cmd.Parameters.Add(new SqlParameter("@ServiceProviderName", ServiceProviderName.Trim()));
cmd.Parameters.Add(new SqlParameter("@ServiceProviderDescription", ServiceProviderDescription.Trim()));
cmd.Parameters.Add(new SqlParameter("@AtulServiceProviderClassID", AtulServiceProviderClassID));
cmd.Parameters.Add(new SqlParameter("@ModifiedBy", ModifiedBy));
cmd.Parameters.Add(new SqlParameter("@ServiceProviderXML",ServiceProviderXML.Trim()));
cmd.Parameters.Add(new SqlParameter("@ESBQueue", queue));
bool success = Convert.ToBoolean(cmd.ExecuteNonQuery());
return success;
}
/// <summary> /// Upsert provider. /// </summary> /// <param name="queue">The queue.</param> /// <param name="providerXML">The provider XML.</param> /// <returns></returns> public bool UpSertProvider(string queue, string providerXML) { StringWriter decodedXML = new StringWriter(); // Decode the encoded string. HttpUtility.HtmlDecode(providerXML, decodedXML); bool success = false; DataTable pTable = new DataTable(); Atul_v1Data adb = new Atul_v1Data(); pTable = adb.GetProviders(); XmlDocument pXML = new XmlDocument(); pXML.LoadXml(decodedXML.ToString()); XmlNodeList submittedProviders = pXML.SelectNodes(@"//endpoint/provider"); foreach (XmlNode xn in submittedProviders) { int ModifiedBy = -1; string xmlproviderName = xn["name"].InnerText; string xmlclassid = xn["classid"].InnerText; string xmlDescription = xn["description"].InnerText; //To insert or update, that is the question. We'll add the queue check in when the db gets sorted. DataRow providerRow = adb.GetProviderBySearch(xmlproviderName, Convert.ToInt32(xmlclassid), queue); string ServiceProviderXML = xn.OuterXml; if (providerRow != null) { long AtulServiceProviderID = Convert.ToInt64(providerRow["AtulServiceProviderID"]); int AtulServiceProviderClassID = Convert.ToInt32(Convert.ToInt32(xmlclassid)); success = adb.UpdateProvider(AtulServiceProviderID, xmlproviderName, xmlDescription, AtulServiceProviderClassID, queue, ModifiedBy, ServiceProviderXML); } else { //insert provider success = adb.InsertProvider(xmlproviderName, xmlDescription, Convert.ToInt32(xmlclassid), queue, ModifiedBy, ServiceProviderXML); } } return success; }