private static string GetTokenType(System.IdentityModel.Tokens.GenericXmlSecurityToken token) { using (System.Xml.XmlReader xmlReader = new System.Xml.XmlNodeReader(token.TokenXml)) { xmlReader.MoveToContent(); if (xmlReader.IsStartElement("BinarySecurityToken", "http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd")) { return(xmlReader.GetAttribute("ValueType", null)); } } return(string.Empty); }
private static OAuth2AccessTokenRequest CreateAccessTokenRequestWithAssertion(System.IdentityModel.Tokens.GenericXmlSecurityToken token, string resource) { Utility.VerifyNonNullArgument("token", token); OAuth2AccessTokenRequest oAuth2AccessTokenRequest = new OAuth2AccessTokenRequest(); JsonWebSecurityTokenHandler jsonWebSecurityTokenHandler = new JsonWebSecurityTokenHandler(); System.Xml.XmlReader reader = new System.Xml.XmlNodeReader(token.TokenXml); string text; string jsonTokenString = jsonWebSecurityTokenHandler.GetJsonTokenString(reader, out text); oAuth2AccessTokenRequest.GrantType = OAuth2MessageFactory.GetTokenType(token); oAuth2AccessTokenRequest.Assertion = jsonTokenString; oAuth2AccessTokenRequest.Resource = resource; return(oAuth2AccessTokenRequest); }
/// <summary> /// 將字串反序列化為 RtdCommInfo /// </summary> /// <param name="s"></param> /// <returns></returns> public RtdCommInfo SToMyInfo(string s) { try { // 如果傳入的 s 字串不是有效的 XML 格式的話,會發生 Exception,記得要做好 Error Handling System.Xml.XmlDocument xdoc = new System.Xml.XmlDocument(); xdoc.LoadXml(s); System.Xml.XmlNodeReader reader = new System.Xml.XmlNodeReader(xdoc.DocumentElement); System.Xml.Serialization.XmlSerializer ser = new System.Xml.Serialization.XmlSerializer(typeof(RtdCommInfo)); object obj = ser.Deserialize(reader); return(obj as RtdCommInfo); } catch (Exception ex) { throw new Exception("無法反序列化:" + ex.Message); } }
internal static object Deserialize(System.Xml.XmlNode node, Type type) { XmlSerializer serializer = GetSerializer(type); try { // Deserialise the web response into the Rtm response object System.Xml.XmlNodeReader reader = new System.Xml.XmlNodeReader(node); object o = serializer.Deserialize(reader); reader.Close(); return(o); } catch (InvalidOperationException ex) { // Serialization error occurred! throw new ResponseXmlException("Invalid response received from Rtm.", ex); } }
public ContentSlide(int SlideSerial) { _SlideSerial = SlideSerial; using (SqlConnection cn = new SqlConnection(ConfigurationManager.ConnectionStrings["ApplicationServices"].ConnectionString)) { string SQL = "SELECT [ModuleID], [SlideTitle], [SlideContents], [SlideImage], [SlideLink], [SortOrder] " + "FROM [cms_Slideshow] " + "WHERE SlideSerial = @SlideSerial"; using (SqlCommand cmd = new SqlCommand(SQL, cn)) { cmd.CommandType = CommandType.Text; cmd.Parameters.Add("SlideSerial", SqlDbType.Int).Value = SlideSerial; cmd.Connection.Open(); SqlDataReader dr = cmd.ExecuteReader(CommandBehavior.SingleRow); if (dr.HasRows) { dr.Read(); _ModuleID = dr.GetGuid(0); _SlideTitle = dr[1].ToString(); _SlideContents = dr[2].ToString(); _SlideImage = dr[3].ToString(); _SlideLink = dr[4].ToString(); _SortOrder = dr.GetInt32(5); } cmd.Connection.Close(); } if (!string.IsNullOrEmpty(_SlideImage)) { ImageSaveModel imageSaveModel = new ImageSaveModel(); System.Xml.XmlDocument doc = new System.Xml.XmlDocument(); doc.LoadXml(_SlideImage); System.Xml.XmlNodeReader reader = new System.Xml.XmlNodeReader(doc.DocumentElement); System.Xml.Serialization.XmlSerializer ser = new System.Xml.Serialization.XmlSerializer(imageSaveModel.GetType()); imageSaveModel = (ImageSaveModel)ser.Deserialize(reader); _SlideImageFile = imageSaveModel.Src; _DimHeight = Convert.ToInt32(imageSaveModel.Height); _DimWidth = Convert.ToInt32(imageSaveModel.Width); } } }
private bool ParseCallbackSettingsXML() { Trace.TraceInformation("Enter."); try { if (xmlDoc == null) { Trace.TraceWarning("xmlDoc is null."); return(false); } System.Xml.XmlNodeReader reader = new System.Xml.XmlNodeReader(xmlDoc); List <CallbackContactServiceQueue> _TempQueues = new List <CallbackContactServiceQueue>(); CallbackContactServiceQueue _cbCSQ = null; CallbackContactServiceQueueSettingsProfile _profile = null; CallbackBackupCSQ _bckCSQ = null; CallbackAlgorithmFilter _filter = null; bool bAcceptCallbacksTimeframeElementEnded = true; bool bCallbackProcessingTimeframeEnded = true; bool bCallbackReentryAlgorithmElementBegan = false; bool bCallbackOfferedAlgorithmElementBegan = false; while (reader.Read()) { switch (reader.NodeType) { case System.Xml.XmlNodeType.Element: if (reader.Name.Equals("csq")) { _cbCSQ = new CallbackContactServiceQueue(); _cbCSQ.Name = reader.GetAttribute("name"); bCallbackReentryAlgorithmElementBegan = false; bCallbackOfferedAlgorithmElementBegan = false; } if (reader.Name.Equals("CallbackEnabled")) { try { _cbCSQ.CallbackEnabled = bool.Parse(reader.ReadString()); } catch { _cbCSQ.CallbackEnabled = false; } } if (reader.Name.Equals("CallerRecording")) { if (_profile == null) { _profile = new CallbackContactServiceQueueSettingsProfile(); } try { _profile.CallerRecording = bool.Parse(reader.ReadString()); } catch { _profile.CallerRecording = false; } } if (reader.Name.Equals("RetentionPeriod")) { if (_profile == null) { _profile = new CallbackContactServiceQueueSettingsProfile(); } try { _profile.RetentionPeriod = int.Parse(reader.ReadString()); } catch { _profile.RetentionPeriod = 7; } } if (reader.Name.Equals("AppServerURLPrefix")) { if (_profile == null) { _profile = new CallbackContactServiceQueueSettingsProfile(); } _profile.AppServerURLPrefix = reader.ReadString(); } if (reader.Name.Equals("EmailAlerts")) { if (_profile == null) { _profile = new CallbackContactServiceQueueSettingsProfile(); } try { _profile.EmailAlerts = bool.Parse(reader.ReadString()); } catch { _profile.EmailAlerts = false; } } if (reader.Name.Equals("AdminEmail")) { if (_profile == null) { _profile = new CallbackContactServiceQueueSettingsProfile(); } _profile.AdminEmail = reader.ReadString(); } if (reader.Name.Equals("CallerIDVerify")) { if (_profile == null) { _profile = new CallbackContactServiceQueueSettingsProfile(); } try { _profile.CallerIDVerify = bool.Parse(reader.ReadString()); } catch { _profile.CallerIDVerify = false; } } if (reader.Name.Equals("AbandonCallback")) { if (_profile == null) { _profile = new CallbackContactServiceQueueSettingsProfile(); } try { _profile.AbandonCallback = bool.Parse(reader.ReadString()); } catch { _profile.AbandonCallback = false; } } if (reader.Name.Equals("AbandonCBMinQTime")) { if (_profile == null) { _profile = new CallbackContactServiceQueueSettingsProfile(); } try { _profile.AbandonCBMinQTime = int.Parse(reader.ReadString()); } catch { _profile.AbandonCBMinQTime = 0; } } if (reader.Name.Equals("AbandonCBMinInterCallTime")) { if (_profile == null) { _profile = new CallbackContactServiceQueueSettingsProfile(); } try { _profile.AbandonCBMinInterCallTime = int.Parse(reader.ReadString()); } catch { _profile.AbandonCBMinInterCallTime = 0; } } if (reader.Name.Equals("CBQueue")) { if (_profile == null) { _profile = new CallbackContactServiceQueueSettingsProfile(); } _bckCSQ = new CallbackBackupCSQ(); _bckCSQ.Name = reader.GetAttribute("csq"); try { _bckCSQ.OverflowTime = int.Parse(reader.GetAttribute("overflowtime")); } catch { _bckCSQ.OverflowTime = 0; } _profile.BackupCSQs.Add(_bckCSQ); _bckCSQ = null; } if (reader.Name.Equals("AcceptCallbacksTimeframe")) { if (_profile == null) { _profile = new CallbackContactServiceQueueSettingsProfile(); } bAcceptCallbacksTimeframeElementEnded = false; } if (reader.Name.Equals("Begin")) { if (!bAcceptCallbacksTimeframeElementEnded) { _profile.AcceptCallbacksTimeframeBegin = reader.ReadString(); } if (!bCallbackProcessingTimeframeEnded) { _profile.CallbackProcessingTimeframeBegin = reader.ReadString(); } } if (reader.Name.Equals("End")) { if (!bAcceptCallbacksTimeframeElementEnded) { _profile.AcceptCallbacksTimeframeEnd = reader.ReadString(); } if (!bCallbackProcessingTimeframeEnded) { _profile.CallbackProcessingTimeframeEnd = reader.ReadString(); } } if (reader.Name.Equals("CallbackOfferedAlgorithm")) { bCallbackOfferedAlgorithmElementBegan = true; } if (reader.Name.Equals("CallbackReentryAlgorithm")) { bCallbackReentryAlgorithmElementBegan = true; } if (reader.Name.Equals("TotalInQueue") || reader.Name.Equals("CSQAgentsReady") || reader.Name.Equals("CSQCallsWaiting") || reader.Name.Equals("AgentsLoggedIn") || reader.Name.Equals("CallsWaiting") || reader.Name.Equals("LongestQueueTime") || reader.Name.Equals("CallbackRequests")) { if (_profile == null) { _profile = new CallbackContactServiceQueueSettingsProfile(); } _filter = new CallbackAlgorithmFilter(); _filter.Name = reader.Name; try { _filter.Enabled = bool.Parse(reader.GetAttribute("Enabled")); } catch { _filter.Enabled = false; } _filter.Operation = reader.GetAttribute("Operation"); try { _filter.Value = int.Parse(reader.GetAttribute("Value")); } catch { _filter.Value = 0; } if (bCallbackOfferedAlgorithmElementBegan) { _profile.OfferedAlgorithmFilters.Add(_filter); } if (bCallbackReentryAlgorithmElementBegan) { _profile.ReentryAlgorithmFilters.Add(_filter); } _filter = null; } if (reader.Name.Equals("CallbackProcessingTimeframe")) { if (_profile == null) { _profile = new CallbackContactServiceQueueSettingsProfile(); } bCallbackProcessingTimeframeEnded = false; } if (reader.Name.Equals("EndOfDayPurgeCallbackRequests")) { if (_profile == null) { _profile = new CallbackContactServiceQueueSettingsProfile(); } try { _profile.EndOfDayPurgeCallbackRequests = bool.Parse(reader.ReadString()); } catch { _profile.EndOfDayPurgeCallbackRequests = false; } } break; case System.Xml.XmlNodeType.EndElement: if (reader.Name.Equals("csq")) { if (_cbCSQ != null) { _cbCSQ.Profile = _profile; _TempQueues.Add(_cbCSQ); } else { Trace.TraceWarning("CSQ was not added to list because _cbCSQ is null."); } _profile = null; _cbCSQ = null; } if (reader.Name.Equals("CallbackReentryAlgorithm")) { bCallbackReentryAlgorithmElementBegan = false; } if (reader.Name.Equals("AcceptCallbacksTimeframe")) { bAcceptCallbacksTimeframeElementEnded = true; } if (reader.Name.Equals("CallbackOfferedAlgorithm")) { bCallbackOfferedAlgorithmElementBegan = false; } if (reader.Name.Equals("CallbackProcessingTimeframe")) { bCallbackProcessingTimeframeEnded = true; } break; } //switch (reader.NodeType) } //while (reader.Read()) reader.Close(); reader = null; xmlDoc = null; _Queues = _TempQueues; _TempQueues = null; _profile = null; _cbCSQ = null; return(true); } catch (Exception ex) { Trace.TraceError("Exception:" + ex.Message + Environment.NewLine + "StackTrace:" + ex.StackTrace); xmlDoc = null; return(false); } }
private void Initialize() { if (_ContentID == Guid.Empty) { using (SqlConnection cn = new SqlConnection(ConfigurationManager.ConnectionStrings["ApplicationServices"].ConnectionString)) { string SQL = "SELECT ContentID " + "FROM [cms_Content] " + "WHERE ModuleID = @ModuleID " + "AND IsDraft = 0 " + "AND UpdateDate IS NULL"; using (SqlCommand cmd = new SqlCommand(SQL, cn)) { cmd.CommandType = CommandType.Text; cmd.Parameters.Add("ModuleID", SqlDbType.UniqueIdentifier).Value = ModuleID; cmd.Connection.Open(); SqlDataReader dr = cmd.ExecuteReader(CommandBehavior.SingleRow); if (dr.HasRows) { dr.Read(); _ContentID = dr.GetGuid(0); } cmd.Connection.Close(); } } } if (_ContentID == Guid.Empty) { //still not found - at least get the containing page's information using (SqlConnection cn = new SqlConnection(ConfigurationManager.ConnectionStrings["ApplicationServices"].ConnectionString)) { string SQL = "SELECT p.VirtualPath, p.PageID, m.ModuleName, mt.ModuleTypeName, ps.PageSectionName, p.Locale " + " FROM cms_Module m JOIN cms_Page p ON m.PageID = p.PageID "+ " JOIN cms_ModuleType mt ON m.ModuleTypeID = mt.ModuleTypeID "+ " JOIN cms_PageSection ps ON m.PageSectionID = ps.PageSectionID "+ " WHERE m.ModuleID = @ModuleID"; using (SqlCommand cmd = new SqlCommand(SQL, cn)) { cmd.CommandType = CommandType.Text; cmd.Parameters.Add("ModuleID", SqlDbType.UniqueIdentifier).Value = ModuleID; cmd.Connection.Open(); SqlDataReader dr = cmd.ExecuteReader(CommandBehavior.SingleRow); if (dr.HasRows) { dr.Read(); _Locale = dr[5].ToString(); _ModuleName = dr[2].ToString(); _ModuleTypeName = dr[3].ToString(); _PageID = dr.GetGuid(1); _PageSectionName = dr[4].ToString(); _PageURL = dr[0].ToString(); } cmd.Connection.Close(); } } } else { using (SqlConnection cn = new SqlConnection(ConfigurationManager.ConnectionStrings["ApplicationServices"].ConnectionString)) { string SQL = "SELECT c.ModuleID, c.Contents, c.IsDraft, p.VirtualPath, p.PageID, " + " m.ModuleName, p.Locale "+ " FROM [cms_Content] c JOIN cms_Module m ON c.ModuleID = m.ModuleID "+ " JOIN cms_Page p ON m.PageID = p.PageID "+ " WHERE ContentID = @ContentID"; using (SqlCommand cmd = new SqlCommand(SQL, cn)) { cmd.CommandType = CommandType.Text; cmd.Parameters.Add("ContentID", SqlDbType.UniqueIdentifier).Value = _ContentID; cmd.Connection.Open(); SqlDataReader dr = cmd.ExecuteReader(CommandBehavior.SingleRow); if (dr.HasRows) { dr.Read(); _Contents = dr[1].ToString(); _Locale = dr[6].ToString(); _ModuleID = dr.GetGuid(0); _ModuleName = dr[5].ToString(); _ModuleTypeName = ""; _PageID = dr.GetGuid(4); _PageSectionName = ""; _PageTitle = ""; _PageURL = dr[3].ToString(); } else { _ContentID = Guid.Empty; } cmd.Connection.Close(); } if (!string.IsNullOrEmpty(_Contents)) { try { VideoSaveModel vidSaveModel = new VideoSaveModel(); System.Xml.XmlDocument doc = new System.Xml.XmlDocument(); doc.LoadXml(_Contents); System.Xml.XmlNodeReader reader = new System.Xml.XmlNodeReader(doc.DocumentElement); System.Xml.Serialization.XmlSerializer ser = new System.Xml.Serialization.XmlSerializer(vidSaveModel.GetType()); vidSaveModel = (VideoSaveModel)ser.Deserialize(reader); _VideoURL = vidSaveModel.URL; _VideoSource = vidSaveModel.Src; _Height = vidSaveModel.Height; _Width = vidSaveModel.Width; } catch { } } } } }
internal static object Deserialize(System.Xml.XmlNode node, Type type) { XmlSerializer serializer = GetSerializer(type); try { // Deserialise the web response into the Flickr response object System.Xml.XmlNodeReader reader = new System.Xml.XmlNodeReader(node); object o = serializer.Deserialize(reader); reader.Close(); return o; } catch(InvalidOperationException ex) { // Serialization error occurred! throw new ResponseXmlException("Invalid response received from Flickr.", ex); } }
private bool ParseResponseIntoArraylist() { try { int iCode = 0; System.Xml.XmlDocument xmlDoc = null; xmlDoc = new System.Xml.XmlDocument(); xmlDoc.LoadXml(sResponse); System.Xml.XmlNode nodCode = xmlDoc.SelectSingleNode("//response/code"); if (nodCode != null) { try { iCode = int.Parse(nodCode.InnerText); } catch (Exception ex) { Trace.TraceWarning("Exception casting Code to integer; Code defaulted to -1."); iCode = -1; } } else { Trace.TraceWarning("//response/code element not found. Code defaulted to -1"); iCode = -1; } if (iCode == -1) { Trace.TraceWarning("//response/code element = -1"); nodCode = null; xmlDoc = null; return(false); } nodCode = null; System.Xml.XmlNodeReader reader = new System.Xml.XmlNodeReader(xmlDoc); CSQInfo.Clear(); ContactServiceQueueInformation _con = null; while (reader.Read()) { switch (reader.NodeType) { case System.Xml.XmlNodeType.Element: if (reader.Name.Equals("csq")) { _con = new ContactServiceQueueInformation(); } if (reader.Name.Equals("id")) { _con.ID = reader.ReadString(); } if (reader.Name.Equals("name")) { _con.Name = reader.ReadString(); } if (reader.Name.Equals("agentsloggedin")) { _con.AgentsLoggedIn = int.Parse(reader.ReadString()); } if (reader.Name.Equals("agentsnotready")) { _con.AgentsNotReady = int.Parse(reader.ReadString()); } if (reader.Name.Equals("agentsready")) { _con.AgentsReady = int.Parse(reader.ReadString()); } if (reader.Name.Equals("agentstalking")) { _con.AgentsTalking = int.Parse(reader.ReadString()); } if (reader.Name.Equals("agentswork")) { _con.AgentsWork = int.Parse(reader.ReadString()); } if (reader.Name.Equals("contactswaiting")) { _con.ContactsWaiting = int.Parse(reader.ReadString()); } if (reader.Name.Equals("longestwaitingcontact")) { _con.LongestWaitingContact = int.Parse(reader.ReadString()); } break; case System.Xml.XmlNodeType.EndElement: if (reader.Name.Equals("csq")) { CSQInfo.Add(_con); _con = null; } break; } //switch (reader.NodeType) } //while (reader.Read()) reader = null; xmlDoc = null; return(true); } catch (Exception ex) { Trace.TraceWarning("Exception: " + ex.Message + Environment.NewLine + "Stacktrace: " + ex.StackTrace); return(false); } }
private void btnOK_Click(object sender, EventArgs e) { if (!string.IsNullOrEmpty(txtURL.Text)) { txtResponse.Text = ""; try { System.Net.HttpWebRequest req = (System.Net.HttpWebRequest)System.Net.WebRequest.Create(txtURL.Text); req.Method = metodoRequest.Text; req.PreAuthenticate = true; req.ProtocolVersion = System.Net.HttpVersion.Version10; req.Headers["Authorization"] = "Basic " + Convert.ToBase64String(Encoding.Default.GetBytes(txtLogin.Text + ":" + txtSenha.Text)); req.Credentials = new NetworkCredential("username", "password"); var type = req.GetType(); var currentMethod = type.GetProperty("CurrentMethod", System.Reflection.BindingFlags.NonPublic | System.Reflection.BindingFlags.Instance).GetValue(req); var methodType = currentMethod.GetType(); methodType.GetField("ContentBodyNotAllowed", System.Reflection.BindingFlags.NonPublic | System.Reflection.BindingFlags.Instance).SetValue(currentMethod, false); System.Net.ServicePointManager.SecurityProtocol = System.Net.SecurityProtocolType.Tls12; if (!string.IsNullOrEmpty(txtJson.Text)) { byte[] byteArray = System.Text.Encoding.UTF8.GetBytes(txtJson.Text); req.ContentType = "application/json; charset=utf-8"; req.ContentLength = byteArray.Length; var dataStream = req.GetRequestStream(); dataStream.Write(byteArray, 0, byteArray.Length); dataStream.Close(); } else { //throw new Exception("Erro: JSON não informado."); } System.Net.HttpWebResponse resp = req.GetResponse() as System.Net.HttpWebResponse; System.IO.Stream receiveStream = resp.GetResponseStream(); System.Text.Encoding encode = Encoding.GetEncoding("utf-8"); // Pipes the stream to a higher level stream reader with the required encoding format. System.IO.StreamReader readStream = new System.IO.StreamReader(receiveStream, encode); Char[] read = new Char[256]; // Reads 256 characters at a time. int count = readStream.Read(read, 0, 256); while (count > 0) { // Dumps the 256 characters on a string and displays the string to the console. String str = new String(read, 0, count); txtResponse.Text += (str); count = readStream.Read(read, 0, 256); } System.Xml.XmlDocument xDoc = new System.Xml.XmlDocument(); xDoc.LoadXml(txtResponse.Text); System.Xml.XmlReader xmlReader = new System.Xml.XmlNodeReader(xDoc); DataSet dsXml = new DataSet(); dsXml.ReadXml(xmlReader); foreach (DataTable dt in dsXml.Tables) { if (dt.TableName == "value") { gridXMLDataTable.DataSource = dt; } } // Releases the resources of the response. resp.Close(); // Releases the resources of the Stream. readStream.Close(); } catch (Exception ex) { txtResponse.Text = "Erro ao consumir a API " + txtURL.Text + ". Exceção: " + ex.Message + ". Trace: " + ex.InnerException; } } }
public ApplicationTypes.ApplicationSettingsReturn Load() { Trace.TraceInformation("Enter."); try { if (!System.IO.File.Exists(APPLICATIONSETTINGSFILEPATH + "\\" + Constants.APPLICATIONSETTINGSFILENAME)) { Trace.TraceWarning(APPLICATIONSETTINGSFILEPATH + "\\" + Constants.APPLICATIONSETTINGSFILENAME + " was not found."); _LastOperationReturn = ApplicationTypes.ApplicationSettingsReturn.FILE_NOT_FOUND; return(_LastOperationReturn); } } catch (Exception ex) { Trace.TraceError("Exception:" + ex.Message + Environment.NewLine + "StackTrace:" + ex.StackTrace); _LastOperationReturn = ApplicationTypes.ApplicationSettingsReturn.ERROR; return(_LastOperationReturn); } try { _encDec = new com.workflowconcepts.utilities.AESSymmetricEncryption(Constants.ENCRYPTION_PASSWORD, Constants.ENCRYPTION_SALT); System.Xml.XmlDocument xmlDoc = null; System.Xml.XmlNodeReader reader = null; xmlDoc = new System.Xml.XmlDocument(); xmlDoc.Load(APPLICATIONSETTINGSFILEPATH + "\\" + Constants.APPLICATIONSETTINGSFILENAME); reader = new System.Xml.XmlNodeReader(xmlDoc); while (reader.Read()) { switch (reader.NodeType) { case System.Xml.XmlNodeType.Element: if (reader.Name.Equals("WebServer")) { _WebServerIP = reader.GetAttribute("IP"); _WebServerPort = reader.GetAttribute("Port"); _WebServerPrefix = reader.GetAttribute("Prefix"); _WebServerDataCollectionPort = reader.GetAttribute("DataCollectionPort"); } if (reader.Name.Equals("EmailNotifications")) { _EmailFrom = reader.GetAttribute("EmailFrom"); _EmailTo = reader.GetAttribute("EmailTo"); _EmailSMTPServer = reader.GetAttribute("SMTPServer"); _EmailSMTPPort = reader.GetAttribute("SMTPPort"); try { _EmailSMTPUserName = _encDec.Decrypt(reader.GetAttribute("SMTPUser")); } catch { _EmailSMTPUserName = string.Empty; } try { _EmailSMTPPassword = _encDec.Decrypt(reader.GetAttribute("SMTPPassword")); } catch { _EmailSMTPPassword = string.Empty; } try { _EmailOnFailure = Boolean.Parse(reader.GetAttribute("OnFailure")); } catch { _EmailOnFailure = true; } try { _EmailOnSuccess = Boolean.Parse(reader.GetAttribute("OnSuccess")); } catch { _EmailOnSuccess = false; } } if (reader.Name.Equals("UCCX")) { _UCCXNode1IPAddress = reader.GetAttribute("Node1IPAddress"); _UCCXNode2IPAddress = reader.GetAttribute("Node2IPAddress"); _UCCXApplicationPort = reader.GetAttribute("ApplicationPort"); _UCCXRealtimeDataPort = reader.GetAttribute("RealtimeDataPort"); _UCCXAuthorizationPrefix = reader.GetAttribute("AuthorizationPrefix"); _UCCXCallbackPrefix = reader.GetAttribute("CallbackPrefix"); _UCCXNumberOfIVRPorts = reader.GetAttribute("NumberOfIVRPorts"); _UCCXMaxIVRPortUsagePercent = reader.GetAttribute("MaxIVRPortUsagePercent"); try { int iUCCXMaxLicenseUsagePercent = int.Parse(_UCCXMaxIVRPortUsagePercent); if (iUCCXMaxLicenseUsagePercent < 0) { _UCCXMaxIVRPortUsagePercent = "0"; } if (iUCCXMaxLicenseUsagePercent >= 100) { _UCCXMaxIVRPortUsagePercent = "99"; } } catch { _UCCXMaxIVRPortUsagePercent = "0"; } try { int iUccxNumberOfLicenses = int.Parse(_UCCXNumberOfIVRPorts); if (iUccxNumberOfLicenses < 0) { _UCCXNumberOfIVRPorts = "0"; } } catch { _UCCXNumberOfIVRPorts = "0"; } try { _UCCXAdminUser = _encDec.Decrypt(reader.GetAttribute("AdminUser")); _EncryptedUCCXAdminUser = reader.GetAttribute("AdminUser"); } catch { _UCCXAdminUser = String.Empty; } try { _UCCXAdminPassword = _encDec.Decrypt(reader.GetAttribute("AdminPassword")); _EncryptedUCCXAdminPassword = reader.GetAttribute("AdminPassword"); } catch { _UCCXAdminPassword = String.Empty; } } if (reader.Name.Equals("CallbackRecords")) { try { _MaximumNumberOfDays = int.Parse(reader.GetAttribute("MaximumNumberOfDays")); if (_MaximumNumberOfDays < 0) { _MaximumNumberOfDays = Constants.MAXIMUM_NUMBER_OF_DAYS; } } catch { _MaximumNumberOfDays = Constants.MAXIMUM_NUMBER_OF_DAYS; } try { _MaximumNumberOfAttempts = int.Parse(reader.GetAttribute("MaximumNumberOfAttempts")); if (_MaximumNumberOfAttempts <= 0) { _MaximumNumberOfAttempts = Constants.MAXIMUM_NUMBER_OF_ATTEMPTS; } } catch { _MaximumNumberOfAttempts = Constants.MAXIMUM_NUMBER_OF_ATTEMPTS; } try { _MinimumIntervalBetweenRetries = int.Parse(reader.GetAttribute("MinimumIntervalBetweenRetries")); if (_MinimumIntervalBetweenRetries <= 0) { _MinimumIntervalBetweenRetries = Constants.MINIMUM_INTERVAL_BETWEEN_RETRIES; } } catch { _MinimumIntervalBetweenRetries = Constants.MINIMUM_INTERVAL_BETWEEN_RETRIES; } } if (reader.Name.Equals("BasicInsertionThrottling")) { try { _BasicInsertionThrottling_Enabled = Boolean.Parse(reader.GetAttribute("Enabled")); } catch { _BasicInsertionThrottling_Enabled = false; } try { _BasicInsertionThrottling_MaximumRecordsAtATime = int.Parse(reader.GetAttribute("MaximumAtATime")); if (_BasicInsertionThrottling_MaximumRecordsAtATime <= 0) { _BasicInsertionThrottling_MaximumRecordsAtATime = Constants.BASIC_INSERTION_THROTTLING_MAXIMUM_RECORDS_AT_A_TIME; } } catch { _BasicInsertionThrottling_MaximumRecordsAtATime = Constants.BASIC_INSERTION_THROTTLING_MAXIMUM_RECORDS_AT_A_TIME; } } if (reader.Name.Equals("API")) { try { _NumberOfAPIThreads = int.Parse(reader.GetAttribute("NumberOfHandlerThreads")); if (_NumberOfAPIThreads <= 0) { _NumberOfAPIThreads = Constants.NUMBER_OF_HANDLER_THREADS; } } catch { _NumberOfAPIThreads = Constants.NUMBER_OF_HANDLER_THREADS; } try { _APIHandlerThreadsSleep = int.Parse(reader.GetAttribute("HandlerThreadsSleep")); if (_APIHandlerThreadsSleep <= 0) { _APIHandlerThreadsSleep = Constants.API_HANDLER_THREADS_SLEEP; } } catch { _APIHandlerThreadsSleep = Constants.API_HANDLER_THREADS_SLEEP; } } if (reader.Name.Equals("Debug")) { try { _DebugEnabled = Boolean.Parse(reader.GetAttribute("Enabled")); } catch { _DebugEnabled = false; } _DebugLevel = reader.GetAttribute("Level"); _DebugRetainUnit = reader.GetAttribute("RetainUnit"); _DebugRetainValue = reader.GetAttribute("RetainValue"); } break; } } reader.Close(); reader = null; xmlDoc = null; _encDec = null; _LastOperationReturn = ApplicationTypes.ApplicationSettingsReturn.SUCCESS; return(_LastOperationReturn); } catch (Exception ex) { _encDec = null; Trace.TraceError("Exception:" + ex.Message + Environment.NewLine + "StackTrace:" + ex.StackTrace); _LastOperationReturn = ApplicationTypes.ApplicationSettingsReturn.ERROR; return(_LastOperationReturn); } }
public String GetVoiceCSQList() { try { if (_UCCXMasterNode == null) { Trace.TraceWarning("_UCCXMasterNode is null."); return(null); } if (_UCCXMasterNode == String.Empty) { Trace.TraceWarning("_UCCXMasterNode is empty."); return(null); } if (_UCCXUsername == null) { Trace.TraceWarning("_UCCXUsername is null."); return(null); } if (_UCCXUsername == String.Empty) { Trace.TraceWarning("_UCCXUsername is empty."); return(null); } if (_UCCXPassword == null) { Trace.TraceWarning("_UCCXPassword is null."); return(null); } if (_UCCXPassword == String.Empty) { Trace.TraceWarning("_UCCXPassword is empty."); return(null); } if (!SendRequest("http://" + _UCCXMasterNode + "/adminapi/csq")) { Trace.TraceWarning("SendRequest() returned false."); return(null); } StringBuilder sbCSQList = new StringBuilder(); sbCSQList.Append("<csqs>"); System.Xml.XmlDocument xmlDoc = null; xmlDoc = new System.Xml.XmlDocument(); xmlDoc.LoadXml(sResponse); System.Xml.XmlNodeReader reader = new System.Xml.XmlNodeReader(xmlDoc); String _CSQID = String.Empty; String _CSQName = String.Empty; while (reader.Read()) { switch (reader.NodeType) { case System.Xml.XmlNodeType.Element: if (reader.Name.Equals("id")) { _CSQID = reader.ReadString(); } if (reader.Name.Equals("name")) { _CSQName = reader.ReadString(); } if (reader.Name.Equals("queueType")) { if (reader.ReadString() == "VOICE") { sbCSQList.Append("<csq>"); sbCSQList.Append("<id>" + _CSQID + "</id>"); sbCSQList.Append("<name>" + _CSQName + "</name>"); sbCSQList.Append("</csq>"); _CSQID = String.Empty; _CSQName = String.Empty; } } break; case System.Xml.XmlNodeType.EndElement: break; } } reader = null; xmlDoc = null; sbCSQList.Append("</csqs>"); return(sbCSQList.ToString()); } catch (Exception ex) { Trace.TraceWarning("Exception: " + ex.Message + Environment.NewLine + "StackTrace: " + ex.StackTrace); return(null); } }
private void InitializeXmlNamespaceManager(bool i_AddFeedSyncNamespace) { System.Diagnostics.Debug.Assert(m_XmlDocument != null); System.Diagnostics.Debug.Assert(m_XmlNamespaceManager != null); if (i_AddFeedSyncNamespace) { m_XmlDocument.DocumentElement.SetAttribute ( "xmlns:" + Microsoft.Samples.FeedSync.Constants.FEEDSYNC_XML_NAMESPACE_PREFIX, Microsoft.Samples.FeedSync.Constants.FEEDSYNC_XML_NAMESPACE_URI ); } #region Populate namespaces into XmlNamespaceManager instance System.Xml.XmlReader XmlReader = new System.Xml.XmlNodeReader(m_XmlDocument); while (XmlReader.Read()) { XmlReader.MoveToFirstAttribute(); do { if (XmlReader.Name.StartsWith("xmlns:") || (XmlReader.Name == "xmlns")) { string NamespacePrefix = System.String.Empty; string NamespaceValue = System.String.Empty; if (XmlReader.Name.StartsWith("xmlns:")) NamespacePrefix = XmlReader.Name.Substring(XmlReader.Name.IndexOf(':') + 1); NamespaceValue = XmlReader.Value; if (!System.String.IsNullOrEmpty(NamespaceValue)) m_XmlNamespaceManager.AddNamespace(NamespacePrefix, NamespaceValue); } } while (XmlReader.MoveToNextAttribute()); } XmlReader.Close(); #endregion #region Get/set namespace prefix for subsequent xpath queries foreach (System.Collections.Generic.KeyValuePair<string, string> KeyValuePair in m_XmlNamespaceManager.GetNamespacesInScope(System.Xml.XmlNamespaceScope.All)) { if (KeyValuePair.Value == Microsoft.Samples.FeedSync.Constants.FEEDSYNC_XML_NAMESPACE_URI) { if (KeyValuePair.Key == Microsoft.Samples.FeedSync.Constants.FEEDSYNC_XML_NAMESPACE_PREFIX) { m_FeedSyncNamespacePrefix = Microsoft.Samples.FeedSync.Constants.FEEDSYNC_XML_NAMESPACE_PREFIX; continue; } // Check for default namespace if (System.String.IsNullOrEmpty(KeyValuePair.Key)) { // See if sse prefix used if (!m_XmlNamespaceManager.HasNamespace(Microsoft.Samples.FeedSync.Constants.FEEDSYNC_XML_NAMESPACE_PREFIX)) { m_FeedSyncNamespacePrefix = Microsoft.Samples.FeedSync.Constants.FEEDSYNC_XML_NAMESPACE_PREFIX; } else { // See if sse prefix is mapped to atom namespace uri string NamespaceURI = m_XmlNamespaceManager.LookupNamespace(Microsoft.Samples.FeedSync.Constants.FEEDSYNC_XML_NAMESPACE_PREFIX); if (NamespaceURI == Microsoft.Samples.FeedSync.Constants.FEEDSYNC_XML_NAMESPACE_URI) m_FeedSyncNamespacePrefix = Microsoft.Samples.FeedSync.Constants.FEEDSYNC_XML_NAMESPACE_PREFIX; else { // Create a new prefix m_FeedSyncNamespacePrefix = Microsoft.Samples.FeedSync.Constants.FEEDSYNC_XML_NAMESPACE_PREFIX + System.Guid.NewGuid().ToString(); } } // Add namespace with mapped prefix m_XmlNamespaceManager.AddNamespace ( m_FeedSyncNamespacePrefix, Microsoft.Samples.FeedSync.Constants.FEEDSYNC_XML_NAMESPACE_URI ); } if (System.String.IsNullOrEmpty(m_FeedSyncNamespacePrefix)) throw new System.Exception("Invalid FeedSync XML document!"); } else if (KeyValuePair.Value == Microsoft.Samples.FeedSync.Constants.ATOM_XML_NAMESPACE_URI) { if (KeyValuePair.Key == Microsoft.Samples.FeedSync.Constants.ATOM_XML_NAMESPACE_PREFIX) { m_AtomNamespacePrefix = Microsoft.Samples.FeedSync.Constants.ATOM_XML_NAMESPACE_PREFIX; continue; } // Check for default namespace if (System.String.IsNullOrEmpty(KeyValuePair.Key)) { // See if atom prefix used if (!m_XmlNamespaceManager.HasNamespace(Microsoft.Samples.FeedSync.Constants.ATOM_XML_NAMESPACE_PREFIX)) { m_AtomNamespacePrefix = Microsoft.Samples.FeedSync.Constants.ATOM_XML_NAMESPACE_PREFIX; } else { // See if atom prefix is mapped to atom namespace uri string NamespaceURI = m_XmlNamespaceManager.LookupNamespace(Microsoft.Samples.FeedSync.Constants.ATOM_XML_NAMESPACE_PREFIX); if (NamespaceURI == Microsoft.Samples.FeedSync.Constants.ATOM_XML_NAMESPACE_URI) m_AtomNamespacePrefix = Microsoft.Samples.FeedSync.Constants.ATOM_XML_NAMESPACE_PREFIX; else { // Create a new prefix m_AtomNamespacePrefix = Microsoft.Samples.FeedSync.Constants.ATOM_XML_NAMESPACE_PREFIX + System.Guid.NewGuid().ToString(); } } // Add namespace with mapped prefix m_XmlNamespaceManager.AddNamespace ( m_AtomNamespacePrefix, Microsoft.Samples.FeedSync.Constants.ATOM_XML_NAMESPACE_URI ); } if (System.String.IsNullOrEmpty(m_AtomNamespacePrefix)) throw new System.Exception("Invalid Atom XML document!"); } } #endregion }
/// <summary> /// Deserialize Xml into the target object. /// </summary> /// <param name="node">The Xml to load into the object.</param> /// <param name="target">The destination for the Xml.</param> /// <remarks></remarks> public object ReadXml(System.Xml.XmlNode node, object target) { System.Xml.XmlNodeReader _xmlReader = new System.Xml.XmlNodeReader(node); target = ReadXml(_xmlReader, target); return target; }
private bool ParseResponseIntoArraylist() { try { int iCode = 0; System.Xml.XmlDocument xmlDoc = null; xmlDoc = new System.Xml.XmlDocument(); xmlDoc.LoadXml(sResponse); System.Xml.XmlNode nodCode = xmlDoc.SelectSingleNode("//response/code"); if (nodCode != null) { try { iCode = int.Parse(nodCode.InnerText); } catch (Exception ex) { Trace.TraceWarning("Exception casting Code to integer; Code defaulted to -1."); iCode = -1; } } else { Trace.TraceWarning("//response/code element not found. Code defaulted to -1"); iCode = -1; } if (iCode == -1) { Trace.TraceWarning("//response/code element = -1"); nodCode = null; xmlDoc = null; return(false); } nodCode = null; System.Xml.XmlNodeReader reader = new System.Xml.XmlNodeReader(xmlDoc); QueuedContacts.Clear(); ContactQueuedInformation _con = null; while (reader.Read()) { switch (reader.NodeType) { case System.Xml.XmlNodeType.Element: if (reader.Name.Equals("contact")) { _con = new ContactQueuedInformation(); } if (reader.Name.Equals("contactid")) { _con.ID = reader.ReadString(); } if (reader.Name.Equals("type")) { _con.Type = reader.ReadString(); } if (reader.Name.Equals("implid")) { _con.ImplID = reader.ReadString(); } if (reader.Name.Equals("starttime")) { _con.StartTime = reader.ReadString(); } if (reader.Name.Equals("duration")) { _con.Duration = reader.ReadString(); } if (reader.Name.Equals("application")) { _con.Application = reader.ReadString(); } if (reader.Name.Equals("task")) { _con.Task = reader.ReadString(); } if (reader.Name.Equals("session")) { _con.Session = reader.ReadString(); } if (reader.Name.Equals("queuedfor")) { _con.QueuedFor = reader.ReadString(); } break; case System.Xml.XmlNodeType.EndElement: if (reader.Name.Equals("contact")) { QueuedContacts.Add(_con); _con = null; } break; } //switch (reader.NodeType) } //while (reader.Read()) reader = null; xmlDoc = null; return(true); } catch (Exception ex) { Trace.TraceWarning("Exception: " + ex.Message + Environment.NewLine + "Stacktrace: " + ex.StackTrace); return(false); } }
/// <summary> /// Deserialize Xml into the target object. /// </summary> /// <param name="document">The Xml to load into the object.</param> /// <param name="target">The destination for the Xml.</param> /// <remarks></remarks> public object ReadXml(System.Xml.XmlDocument document, object target) { System.Xml.XmlNodeReader _xmlReader = new System.Xml.XmlNodeReader(document); target = ReadXml(_xmlReader, target); return target; }
private bool ParseResponse() { try { System.Xml.XmlDocument xmlDoc = null; xmlDoc = new System.Xml.XmlDocument(); xmlDoc.LoadXml(sResponse); System.Xml.XmlNodeReader reader = new System.Xml.XmlNodeReader(xmlDoc); while (reader.Read()) { switch (reader.NodeType) { case System.Xml.XmlNodeType.Element: if (reader.Name.Equals("CSQ")) { _Information = new ContactServiceQueueInformation(); _Information.Name = reader.GetAttribute("name"); } if (reader.Name.Equals("LoggedIn")) { try { _Information.AgentsLoggedIn = int.Parse(reader.ReadString()); } catch (Exception ex) { _Information.AgentsLoggedIn = -99; } } if (reader.Name.Equals("Talking")) { try { _Information.AgentsTalking = int.Parse(reader.ReadString()); } catch (Exception ex) { _Information.AgentsTalking = -99; } } if (reader.Name.Equals("Ready")) { try { _Information.AgentsReady = int.Parse(reader.ReadString()); } catch (Exception ex) { _Information.AgentsReady = -99; } } if (reader.Name.Equals("NotReady")) { try { _Information.AgentsNotReady = int.Parse(reader.ReadString()); } catch (Exception ex) { _Information.AgentsNotReady = -99; } } if (reader.Name.Equals("Work")) { try { _Information.AgentsWork = int.Parse(reader.ReadString()); } catch (Exception ex) { _Information.AgentsWork = -99; } } if (reader.Name.Equals("CallsWaiting")) { try { _Information.ContactsWaiting = int.Parse(reader.ReadString()); } catch (Exception ex) { _Information.ContactsWaiting = -99; } } if (reader.Name.Equals("LongestQueueTime")) { try { _Information.LongestWaitingContact = int.Parse(reader.ReadString()); } catch (Exception ex) { _Information.LongestWaitingContact = -99; } } //if (reader.Name.Equals("TotalInQueue")) //{ // try // { // _Information.TotalInQueue = int.Parse(reader.ReadString()); // } // catch (Exception ex) // { // _Information.TotalInQueue = -99; // } //} break; case System.Xml.XmlNodeType.EndElement: if (reader.Name.Equals("CSQ")) { } break; } } reader = null; xmlDoc = null; return(true); } catch (Exception ex) { Trace.TraceWarning("Exception: " + ex.Message + Environment.NewLine + "Stacktrace: " + ex.StackTrace); return(false); } }