public static string GetOutboundTransportCLSID(string adapterName) { string outboundTansportCLSID = string.Empty; try { BizTalkServerRegistry bizTalkServerRegistry = default(BizTalkServerRegistry); bizTalkServerRegistry = Utility.GetMgmtServerInfo(); string commandText = "SELECT OutboundEngineCLSID FROM BizTalkMgmtDb.dbo.adm_Adapter WHERE Name = '{0}'"; using (SqlConnection connection = new SqlConnection(string.Format(btsMgmtDbConn, bizTalkServerRegistry.BizTalkMgmtDb, bizTalkServerRegistry.BizTalkMgmtDbName))) { using (SqlCommand sqlCommand = new SqlCommand(string.Format(commandText, adapterName), connection)) { connection.Open(); object obj = sqlCommand.ExecuteScalar(); connection.Close(); if (obj != null) { outboundTansportCLSID = obj.ToString(); } } } } catch (Exception) { } return(outboundTansportCLSID); }
/// <summary> /// Builds Fault Message /// </summary> /// <param name="faultXml"></param> /// <param name="requestXml"></param> /// <param name="faultType"></param> /// <returns></returns> private static XLANGMessage GetFaultMessage(string faultXml, string requestXml, FaultType faultType) { XmlDocument xmlDocument = new XmlDocument(); string appName = string.Empty; XlangServiceInfo serviceXlangInfo; BizTalkServerRegistry bizTalkServerRegistry = default(BizTalkServerRegistry); XLANGMessage result; string xmlSafe = System.Net.WebUtility.HtmlEncode(requestXml); if (xmlSafe != requestXml) { requestXml = "Contents have been HTML Encoded: " + xmlSafe; } try { serviceXlangInfo = GetServiceXlangInfo(); bizTalkServerRegistry = Utility.GetMgmtServerInfo(); appName = Utility.GetApplication(Utility.ServiceType.Orchestration, bizTalkServerRegistry.BizTalkMgmtDb, bizTalkServerRegistry.BizTalkMgmtDbName, Context.RootService.ServiceId.ToString(), string.Empty); xmlDocument.LoadXml(GetMessage(new object[] { appName, serviceXlangInfo.ServiceInstanceID, serviceXlangInfo.ServiceName, faultType, "", //ArchiveTag for future use "", //FaultEventId for future use "", //FaultDetails for any additional info "", //FaultSeverity for future use faultXml, requestXml })); XmlDocumentSerializationProxy xmlDocumentSerializationProxy = (XmlDocumentSerializationProxy)xmlDocument; BTXMessage bTXMessage = new AvistaEsbInternalMsg("FaultMessage", Service.RootService.XlangStore.OwningContext); bTXMessage.AddPart("", "Body"); bTXMessage[0].LoadFrom(xmlDocumentSerializationProxy.UnderlyingXmlDocument); SetMsgProperty(bTXMessage, typeof(ErrorReport.ErrorType), faultType.ToString()); XLANGMessage messageWrapperForUserCode = bTXMessage.GetMessageWrapperForUserCode(); result = messageWrapperForUserCode; } catch (Exception ex) { Logger.WriteWarning(ex.ToString(), 14000); throw ex; } finally { if (xmlDocument != null) { xmlDocument = null; } } return(result); }