Example #1
0
        /// <summary>
        /// Performs additional custom processes when writing inner node of the html object in xsl template.
        /// </summary>
        /// <param name="writer">The XmlWriter to which you want to save xsl template.</param>
        protected override void OnWriteInnerTemplate(System.Xml.XmlWriter writer)
        {
            //if there is no data bound to control
            if (!DataBind)
            {
                //render html object for each list item
                for (int index = 0; index < Items.Count; index++)
                {
                    TemplateItem item = Items[index];

                    //<span style="float:left">
                    writer.WriteStartElement("span");
                    writer.WriteAttributeString("style", "float:left");

                    //<input type="InputType", name="GroupName", value="Value">
                    writer.WriteStartElement("input");
                    writer.WriteAttributeString("type", InputType.ToString().ToLower());
                    writer.WriteAttributeString("name", GroupName);
                    writer.WriteAttributeString("value", item.Value);

                    //add "checked" attribute when item is selected
                    if (item.Selected)
                    {
                        writer.WriteStartAttribute("checked");
                        writer.WriteEndAttribute();
                    }

                    //</input>
                    writer.WriteEndElement();

                    writer.WriteString(item.Caption);

                    //</span>
                    writer.WriteEndElement();

                    //line feed
                    if (Column > 0 && (index + 1) % Column == 0)
                    {
                        //<br />
                        writer.WriteStartElement("br");
                        writer.WriteEndElement();

                        //<div style="clear:both"></div>
                        writer.WriteStartElement("div");
                        writer.WriteAttributeString("style", "clear:both");
                        writer.WriteFullEndElement();
                    }
                }
            }
            else
            {
                //clearup user customized data when data bound
                Items.Clear();
            }
        }
Example #2
0
        private System.IO.MemoryStream WriteSettingsToMemoryStream(String AppServerURL, bool IncludeXMLDeclaration)
        {
            Trace.TraceInformation("Enter.");

            try
            {
                if (_Queues == null)
                {
                    Trace.TraceWarning("_Queues is null.");
                    return(null);
                }

                System.IO.Stream ms = new System.IO.MemoryStream();

                System.Xml.XmlWriterSettings _XMLSettings = new System.Xml.XmlWriterSettings();

                _XMLSettings.Indent             = true;
                _XMLSettings.OmitXmlDeclaration = !IncludeXMLDeclaration;

                System.Xml.XmlWriter _XMLWriter = System.Xml.XmlWriter.Create(ms, _XMLSettings);

                _XMLWriter.WriteStartDocument();

                _XMLWriter.WriteStartElement("callback");
                _XMLWriter.WriteStartElement("csqs");

                foreach (CallbackContactServiceQueue csq in _Queues)
                {
                    _XMLWriter.WriteStartElement("csq");
                    _XMLWriter.WriteAttributeString("name", csq.Name);

                    _XMLWriter.WriteStartElement("CallbackEnabled");
                    _XMLWriter.WriteValue(csq.CallbackEnabled.ToString());
                    _XMLWriter.WriteFullEndElement();//CallbackEnabled

                    if (csq.Profile != null)
                    {
                        _XMLWriter.WriteStartElement("CallerRecording");
                        _XMLWriter.WriteValue(csq.Profile.CallerRecording.ToString());
                        _XMLWriter.WriteFullEndElement();//CallerRecording

                        _XMLWriter.WriteStartElement("RetentionPeriod");
                        _XMLWriter.WriteValue(csq.Profile.RetentionPeriod.ToString());
                        _XMLWriter.WriteFullEndElement();//RetentionPeriod

                        _XMLWriter.WriteStartElement("AppServerURLPrefix");
                        _XMLWriter.WriteValue(AppServerURL);
                        _XMLWriter.WriteFullEndElement();//AppServerURLPrefix


                        _XMLWriter.WriteStartElement("EmailAlerts");
                        _XMLWriter.WriteValue(csq.Profile.EmailAlerts.ToString());
                        _XMLWriter.WriteFullEndElement();//EmailAlerts

                        _XMLWriter.WriteStartElement("AdminEmail");
                        _XMLWriter.WriteValue(csq.Profile.AdminEmail);
                        _XMLWriter.WriteFullEndElement();//AdminEmail

                        _XMLWriter.WriteStartElement("CallerIDVerify");
                        _XMLWriter.WriteValue(csq.Profile.CallerIDVerify);
                        _XMLWriter.WriteFullEndElement();//CallerIDVerify

                        _XMLWriter.WriteStartElement("AbandonCallback");
                        _XMLWriter.WriteValue(csq.Profile.AbandonCallback);
                        _XMLWriter.WriteFullEndElement();//AbandonCallback

                        _XMLWriter.WriteStartElement("AbandonCBMinQTime");
                        _XMLWriter.WriteValue(csq.Profile.AbandonCBMinQTime);
                        _XMLWriter.WriteFullEndElement();//AbandonCBMinQTime

                        _XMLWriter.WriteStartElement("AbandonCBMinInterCallTime");
                        _XMLWriter.WriteValue(csq.Profile.AbandonCBMinInterCallTime);
                        _XMLWriter.WriteFullEndElement();//AbandonCBMinInterCallTime

                        foreach (CallbackBackupCSQ bckCSQ in csq.Profile.BackupCSQs)
                        {
                            _XMLWriter.WriteStartElement("CBQueue");
                            _XMLWriter.WriteAttributeString("csq", bckCSQ.Name);
                            _XMLWriter.WriteAttributeString("overflowtime", bckCSQ.OverflowTime.ToString());
                            _XMLWriter.WriteFullEndElement();//CBQueue
                        }//foreach (CallbackBackupCSQ bckCSQ in csq.Profile.BackupCSQs)

                        _XMLWriter.WriteStartElement("AcceptCallbacksTimeframe");
                        _XMLWriter.WriteStartElement("Begin");
                        _XMLWriter.WriteValue(csq.Profile.AcceptCallbacksTimeframeBegin);
                        _XMLWriter.WriteFullEndElement();//Begin
                        _XMLWriter.WriteStartElement("End");
                        _XMLWriter.WriteValue(csq.Profile.AcceptCallbacksTimeframeEnd);
                        _XMLWriter.WriteFullEndElement(); //End
                        _XMLWriter.WriteFullEndElement(); //AcceptCallbacksTimeframe

                        _XMLWriter.WriteStartElement("CallbackOfferedAlgorithm");

                        foreach (CallbackAlgorithmFilter filter in csq.Profile.OfferedAlgorithmFilters)
                        {
                            _XMLWriter.WriteStartElement(filter.Name);
                            _XMLWriter.WriteAttributeString("Enabled", filter.Enabled.ToString());
                            _XMLWriter.WriteAttributeString("Operation", filter.Operation);
                            _XMLWriter.WriteAttributeString("Value", filter.Value.ToString());
                            _XMLWriter.WriteFullEndElement();
                        }//foreach (CallbackAlgorithmFilter filter in csq.Profile.OfferedAlgorithmFilters)

                        _XMLWriter.WriteFullEndElement();//CallbackOfferedAlgorithm

                        _XMLWriter.WriteStartElement("CallbackReentryAlgorithm");

                        foreach (CallbackAlgorithmFilter filter in csq.Profile.ReentryAlgorithmFilters)
                        {
                            _XMLWriter.WriteStartElement(filter.Name);
                            _XMLWriter.WriteAttributeString("Enabled", filter.Enabled.ToString());
                            _XMLWriter.WriteAttributeString("Operation", filter.Operation);
                            _XMLWriter.WriteAttributeString("Value", filter.Value.ToString());
                            _XMLWriter.WriteFullEndElement();
                        }//foreach (CallbackReentryAlgorithmFilter filter in csq.Profile.AlgorithmFilters)

                        _XMLWriter.WriteStartElement("CallbackProcessingTimeframe");
                        _XMLWriter.WriteStartElement("Begin");
                        _XMLWriter.WriteValue(csq.Profile.CallbackProcessingTimeframeBegin);
                        _XMLWriter.WriteFullEndElement();//Begin
                        _XMLWriter.WriteStartElement("End");
                        _XMLWriter.WriteValue(csq.Profile.CallbackProcessingTimeframeEnd);
                        _XMLWriter.WriteFullEndElement(); //End
                        _XMLWriter.WriteFullEndElement(); //CallbackProcessingTimeframe


                        _XMLWriter.WriteStartElement("EndOfDayPurgeCallbackRequests");
                        _XMLWriter.WriteValue(csq.Profile.EndOfDayPurgeCallbackRequests);
                        _XMLWriter.WriteFullEndElement(); //EndOfDayPurgeCallbackRequests

                        _XMLWriter.WriteFullEndElement(); //CallbackReentryAlgorithm
                    }

                    _XMLWriter.WriteFullEndElement();//CSQ
                }//foreach (CallbackContactServiceQueue csq in _Queues)

                _XMLWriter.WriteFullEndElement(); //csqs
                _XMLWriter.WriteFullEndElement(); //callback

                _XMLWriter.WriteEndDocument();

                _XMLWriter.Flush();
                _XMLWriter.Close();
                _XMLWriter = null;

                _XMLSettings = null;

                return((System.IO.MemoryStream)ms);
            }
            catch (Exception ex)
            {
                Trace.TraceError("Exception:" + ex.Message + Environment.NewLine + "StackTrace:" + ex.StackTrace);
                xmlDoc = null;
                return(null);
            }
        }
        public static void XmlReaderClone(System.Xml.XmlReader reader, System.Xml.XmlWriter writer)
        {
            if (reader == null)
            {
                throw new ArgumentNullException("System.Xml.XmlReader");
            }

            if (writer == null)
            {
                throw new ArgumentNullException("System.Xml.XmlWriter");
            }

            switch (reader.NodeType)
            {
            case System.Xml.XmlNodeType.Element:

                writer.WriteStartElement(reader.Prefix, reader.LocalName, reader.NamespaceURI);

                writer.WriteAttributes(reader, true);

                if (reader.IsEmptyElement)
                {
                    writer.WriteEndElement();
                }

                break;

            case System.Xml.XmlNodeType.Text:

                writer.WriteString(reader.Value);

                break;

            case System.Xml.XmlNodeType.Whitespace:

            case System.Xml.XmlNodeType.SignificantWhitespace:

                writer.WriteWhitespace(reader.Value);

                break;

            case System.Xml.XmlNodeType.CDATA:

                writer.WriteCData(reader.Value);

                break;

            case System.Xml.XmlNodeType.EntityReference:

                writer.WriteEntityRef(reader.Name);

                break;

            case System.Xml.XmlNodeType.XmlDeclaration:

            case System.Xml.XmlNodeType.ProcessingInstruction:

                writer.WriteProcessingInstruction(reader.Name, reader.Value);

                break;

            case System.Xml.XmlNodeType.DocumentType:

                writer.WriteDocType(reader.Name, reader.GetAttribute("PUBLIC"), reader.GetAttribute("SYSTEM"), reader.Value);

                break;

            case System.Xml.XmlNodeType.Comment:

                writer.WriteComment(reader.Value);

                break;

            case System.Xml.XmlNodeType.EndElement:

                writer.WriteFullEndElement();

                break;
            }

            if (reader.Read())
            {
                XmlReaderClone(reader, writer);
            }
        }
Example #4
0
        public void Serialize(System.Xml.XmlWriter xmlWriter, object o)
        {
            List <Profile> items = (List <Profile>)o;

            xmlWriter.WriteStartElement("Profiles");
            foreach (var profile in items)
            {
                xmlWriter.WriteStartElement("Profile");
                xmlWriter.WriteElementString("Name", profile.Name);
                xmlWriter.WriteElementString("Enabled", profile.Enabled.ToString());
                if (profile.EventTrigger != null)
                {
                    ISerializer eventTriggerSerializer = SerializerProvider.GetSerializer(typeof(IEventTrigger));
                    xmlWriter.WriteStartElement("EventTrigger");
                    xmlWriter.WriteStartElement("Trigger");
                    //xmlWriter.WriteAttributeString("AssemblyQualifiedName", profile.EventTrigger.GetType().AssemblyQualifiedName);
                    xmlWriter.WriteAttributeString("Type", SerializerHelper.GetTriggerName(profile.EventTrigger.GetType()));
                    eventTriggerSerializer.Serialize(xmlWriter, profile.EventTrigger);
                    xmlWriter.WriteEndElement();
                    xmlWriter.WriteEndElement();
                }

                //StateTriggers
                xmlWriter.WriteStartElement("StateTriggers");
                ISerializer stateTriggersSerializer = SerializerProvider.GetSerializer(typeof(IStateTrigger));
                foreach (var stateTrigger in profile.StateTriggers)
                {
                    xmlWriter.WriteStartElement("Trigger");
                    //xmlWriter.WriteAttributeString("AssemblyQualifiedName", stateTrigger.GetType().AssemblyQualifiedName);
                    xmlWriter.WriteAttributeString("Type", SerializerHelper.GetTriggerName(stateTrigger.GetType()));
                    stateTriggersSerializer.Serialize(xmlWriter, stateTrigger);
                    xmlWriter.WriteEndElement();
                }
                xmlWriter.WriteFullEndElement();

                //EnterStateAction
                ISerializer actionToExecuteSerializer = SerializerProvider.GetSerializer(profile.ActionToExecute.GetType());
                xmlWriter.WriteStartElement("EnterStateAction");
                xmlWriter.WriteStartElement("Action");
                //xmlWriter.WriteAttributeString("AssemblyQualifiedName", profile.ActionToExecute.GetType().AssemblyQualifiedName);
                xmlWriter.WriteAttributeString("Type", SerializerHelper.GetActionName(profile.ActionToExecute.GetType()));
                actionToExecuteSerializer.Serialize(xmlWriter, profile.ActionToExecute);
                xmlWriter.WriteEndElement();
                xmlWriter.WriteEndElement();

                //ExitStateAction
                ISerializer exitStateActionSerializer = SerializerProvider.GetSerializer(profile.ActionToExecute.GetType());
                if (profile.ActionOnExitState != null)
                {
                    xmlWriter.WriteStartElement("ExitStateAction");
                    xmlWriter.WriteStartElement("Action");
                    //xmlWriter.WriteAttributeString("AssemblyQualifiedName", profile.ActionOnExitState.GetType().AssemblyQualifiedName);
                    xmlWriter.WriteAttributeString("Type", SerializerHelper.GetActionName(profile.ActionOnExitState.GetType()));
                    exitStateActionSerializer.Serialize(xmlWriter, profile.ActionOnExitState);
                    xmlWriter.WriteEndElement();
                    xmlWriter.WriteEndElement();
                }

                xmlWriter.WriteEndElement();
            }
            xmlWriter.WriteEndElement();
        }
        public ApplicationTypes.ApplicationSettingsReturn CreateDefaultSettings()
        {
            Trace.TraceInformation("Enter.");

            try
            {
                _encDec = new com.workflowconcepts.utilities.AESSymmetricEncryption(Constants.ENCRYPTION_PASSWORD, Constants.ENCRYPTION_SALT);

                System.Xml.XmlWriterSettings _XMLSettings = new System.Xml.XmlWriterSettings();

                _XMLSettings.Indent = true;

                System.Xml.XmlWriter _XMLWriter = System.Xml.XmlWriter.Create(APPLICATIONSETTINGSFILEPATH + "\\" + Constants.APPLICATIONSETTINGSFILENAME, _XMLSettings);

                _XMLWriter.WriteStartDocument();

                _XMLWriter.WriteStartElement("ApplicationSettings");

                _XMLWriter.WriteStartElement("WebServer");
                _XMLWriter.WriteAttributeString("IP", Constants.IPAddress);
                _XMLWriter.WriteAttributeString("Port", Constants.WEBSERVER_PORT);
                _XMLWriter.WriteAttributeString("Prefix", Constants.WEBSERVER_PREFIX);
                _XMLWriter.WriteFullEndElement();

                _XMLWriter.WriteStartElement("EmailNotifications");
                _XMLWriter.WriteAttributeString("EmailFrom", _EmailFrom);
                _XMLWriter.WriteAttributeString("EmailTo", _EmailTo);
                _XMLWriter.WriteAttributeString("SMTPServer", _EmailSMTPServer);
                _XMLWriter.WriteAttributeString("SMTPPort", _EmailSMTPPort);
                _XMLWriter.WriteAttributeString("SMTPUser", _encDec.Encrypt(_EmailSMTPUserName));
                _XMLWriter.WriteAttributeString("SMTPPassword", _encDec.Encrypt(_EmailSMTPPassword));
                _XMLWriter.WriteAttributeString("OnFailure", _EmailOnFailure.ToString());
                _XMLWriter.WriteAttributeString("OnSuccess", _EmailOnSuccess.ToString());
                _XMLWriter.WriteFullEndElement();

                _XMLWriter.WriteStartElement("CallbackRecords");
                _XMLWriter.WriteAttributeString("MaximumNumberOfDays", Constants.MAXIMUM_NUMBER_OF_DAYS.ToString());
                _XMLWriter.WriteFullEndElement();

                _XMLWriter.WriteStartElement("BasicInsertionThrottling");
                _XMLWriter.WriteAttributeString("Enabled", _BasicInsertionThrottling_Enabled.ToString());
                _XMLWriter.WriteAttributeString("MaximumAtATime", _BasicInsertionThrottling_MaximumRecordsAtATime.ToString());
                _XMLWriter.WriteFullEndElement();

                _XMLWriter.WriteStartElement("API");
                _XMLWriter.WriteAttributeString("NumberOfHandlerThreads", Constants.NUMBER_OF_HANDLER_THREADS.ToString());
                _XMLWriter.WriteAttributeString("HandlerThreadsSleep", Constants.API_HANDLER_THREADS_SLEEP.ToString());
                _XMLWriter.WriteFullEndElement();

                _XMLWriter.WriteStartElement("Debug");
                _XMLWriter.WriteAttributeString("Enabled", "true");
                _XMLWriter.WriteAttributeString("Level", "verbose");
                _XMLWriter.WriteAttributeString("RetainUnit", "Files");
                _XMLWriter.WriteAttributeString("RetainValue", "100");
                _XMLWriter.WriteFullEndElement();

                _XMLWriter.WriteFullEndElement();

                _XMLWriter.WriteEndDocument();

                _XMLWriter.Flush();
                _XMLWriter.Close();
                _XMLWriter = null;

                _XMLSettings = null;

                _encDec = null;

                return(ApplicationTypes.ApplicationSettingsReturn.SUCCESS);
            }
            catch (Exception ex)
            {
                _encDec = null;

                Trace.TraceError("Exception:" + ex.Message + Environment.NewLine + "StackTrace:" + ex.StackTrace);

                return(ApplicationTypes.ApplicationSettingsReturn.ERROR);
            }
        }
        public ApplicationTypes.ApplicationSettingsReturn Save()
        {
            Trace.TraceInformation("Enter.");

            try
            {
                _encDec = new com.workflowconcepts.utilities.AESSymmetricEncryption(Constants.ENCRYPTION_PASSWORD, Constants.ENCRYPTION_SALT);

                System.Xml.XmlWriterSettings _XMLSettings = new System.Xml.XmlWriterSettings();

                _XMLSettings.Indent = true;

                System.Xml.XmlWriter _XMLWriter = System.Xml.XmlWriter.Create(APPLICATIONSETTINGSFILEPATH + "\\" + Constants.APPLICATIONSETTINGSFILENAME, _XMLSettings);

                _XMLWriter.WriteStartDocument();

                _XMLWriter.WriteStartElement("ApplicationSettings");

                _XMLWriter.WriteStartElement("WebServer");
                _XMLWriter.WriteAttributeString("IP", WebServerIP);
                _XMLWriter.WriteAttributeString("Port", WebServerPort);
                _XMLWriter.WriteAttributeString("Prefix", WebServerPrefix);
                _XMLWriter.WriteAttributeString("DataCollectionPort", WebServerDataCollectionPort);
                _XMLWriter.WriteFullEndElement();

                _XMLWriter.WriteStartElement("EmailNotifications");
                _XMLWriter.WriteAttributeString("EmailFrom", _EmailFrom);
                _XMLWriter.WriteAttributeString("EmailTo", _EmailTo);
                _XMLWriter.WriteAttributeString("SMTPServer", _EmailSMTPServer);
                _XMLWriter.WriteAttributeString("SMTPPort", _EmailSMTPPort);
                _XMLWriter.WriteAttributeString("SMTPUser", _encDec.Encrypt(_EmailSMTPUserName));
                _XMLWriter.WriteAttributeString("SMTPPassword", _encDec.Encrypt(_EmailSMTPPassword));
                _XMLWriter.WriteAttributeString("OnFailure", _EmailOnFailure.ToString());
                _XMLWriter.WriteAttributeString("OnSuccess", _EmailOnSuccess.ToString());
                _XMLWriter.WriteFullEndElement();

                _XMLWriter.WriteStartElement("UCCX");
                _XMLWriter.WriteAttributeString("Node1IPAddress", _UCCXNode1IPAddress);
                _XMLWriter.WriteAttributeString("Node2IPAddress", _UCCXNode2IPAddress);
                _XMLWriter.WriteAttributeString("ApplicationPort", _UCCXApplicationPort);
                _XMLWriter.WriteAttributeString("RealtimeDataPort", _UCCXRealtimeDataPort);
                _XMLWriter.WriteAttributeString("AuthorizationPrefix", _UCCXAuthorizationPrefix);
                _XMLWriter.WriteAttributeString("CallbackPrefix", _UCCXCallbackPrefix);
                _XMLWriter.WriteAttributeString("AdminUser", _encDec.Encrypt(_UCCXAdminUser));
                _XMLWriter.WriteAttributeString("AdminPassword", _encDec.Encrypt(_UCCXAdminPassword));
                _XMLWriter.WriteAttributeString("NumberOfIVRPorts", _UCCXNumberOfIVRPorts);
                _XMLWriter.WriteAttributeString("MaxIVRPortUsagePercent", _UCCXMaxIVRPortUsagePercent);
                _XMLWriter.WriteFullEndElement();

                _EncryptedUCCXAdminUser     = _encDec.Encrypt(_UCCXAdminUser);
                _EncryptedUCCXAdminPassword = _encDec.Encrypt(_UCCXAdminPassword);

                _XMLWriter.WriteStartElement("CallbackRecords");
                _XMLWriter.WriteAttributeString("MaximumNumberOfDays", _MaximumNumberOfDays.ToString());
                _XMLWriter.WriteAttributeString("MaximumNumberOfAttempts", _MaximumNumberOfAttempts.ToString());
                _XMLWriter.WriteAttributeString("MinimumIntervalBetweenRetries", _MinimumIntervalBetweenRetries.ToString());
                _XMLWriter.WriteFullEndElement();

                _XMLWriter.WriteStartElement("BasicInsertionThrottling");
                _XMLWriter.WriteAttributeString("Enabled", _BasicInsertionThrottling_Enabled.ToString());
                _XMLWriter.WriteAttributeString("MaximumAtATime", _BasicInsertionThrottling_MaximumRecordsAtATime.ToString());
                _XMLWriter.WriteFullEndElement();

                _XMLWriter.WriteStartElement("API");
                _XMLWriter.WriteAttributeString("NumberOfHandlerThreads", _NumberOfAPIThreads.ToString());
                _XMLWriter.WriteAttributeString("HandlerThreadsSleep", _APIHandlerThreadsSleep.ToString());
                _XMLWriter.WriteFullEndElement();

                _XMLWriter.WriteStartElement("Debug");
                _XMLWriter.WriteAttributeString("Enabled", _DebugEnabled.ToString());
                _XMLWriter.WriteAttributeString("Level", _DebugLevel);
                _XMLWriter.WriteAttributeString("RetainUnit", _DebugRetainUnit);
                _XMLWriter.WriteAttributeString("RetainValue", _DebugRetainValue);
                _XMLWriter.WriteFullEndElement();

                _XMLWriter.WriteFullEndElement();

                _XMLWriter.WriteEndDocument();

                _XMLWriter.Flush();
                _XMLWriter.Close();
                _XMLWriter = null;

                _XMLSettings = null;

                _encDec = null;

                return(ApplicationTypes.ApplicationSettingsReturn.SUCCESS);
            }
            catch (Exception ex)
            {
                _encDec = null;

                Trace.TraceError("Exception:" + ex.Message + Environment.NewLine + "StackTrace:" + ex.StackTrace);

                return(ApplicationTypes.ApplicationSettingsReturn.ERROR);
            }
        }