Пример #1
0
        public MessageTrace Read(Guid organizationalUnitRoot, Guid exMessageId)
        {
            if (exMessageId == Guid.Empty)
            {
                throw new ArgumentNullException("exMessageId");
            }
            MessageTraceDataSet messageTraceDataSet = (MessageTraceDataSet)this.DataProvider.Find <MessageTraceDataSet>(MessageTraceSession.BuildQueryFilter(organizationalUnitRoot, exMessageId), null, false, null).FirstOrDefault <IConfigurable>();

            if (messageTraceDataSet == null)
            {
                return(null);
            }
            return(messageTraceDataSet.ConvertToMessageTraceObject());
        }
Пример #2
0
        public MessageTrace ConvertToMessageTraceObject()
        {
            Dictionary <Guid, MessageAction>                  dictionary  = new Dictionary <Guid, MessageAction>();
            Dictionary <Guid, MessageClassification>          dict        = new Dictionary <Guid, MessageClassification>();
            Dictionary <Guid, MessageClientInformation>       dict2       = new Dictionary <Guid, MessageClientInformation>();
            Dictionary <Guid, MessageEvent>                   dictionary2 = new Dictionary <Guid, MessageEvent>();
            Dictionary <Guid, MessageEventRule>               dictionary3 = new Dictionary <Guid, MessageEventRule>();
            Dictionary <Guid, MessageEventRuleClassification> dictionary4 = new Dictionary <Guid, MessageEventRuleClassification>();
            Dictionary <Guid, MessageEventSourceItem>         dictionary5 = new Dictionary <Guid, MessageEventSourceItem>();
            Dictionary <Guid, MessageRecipient>               dict3       = new Dictionary <Guid, MessageRecipient>();
            Dictionary <Guid, MessageRecipientStatus>         dictionary6 = new Dictionary <Guid, MessageRecipientStatus>();

            MessageTraceEntityBase[] array        = this.LoadConfigurables <MessageTrace>(MessageTraceDataSetSchema.MessagesTableProperty);
            MessageTrace             messageTrace = null;

            if (array != null && array.Length > 0)
            {
                messageTrace = (array.FirstOrDefault <MessageTraceEntityBase>() as MessageTrace);
            }
            if (messageTrace == null)
            {
                return(null);
            }
            MessageTraceEntityBase[] messageProperties              = this.LoadConfigurables <MessageProperty>(MessageTraceDataSetSchema.MessagePropertiesTableProperty);
            MessageTraceEntityBase[] msgActions                     = this.LoadConfigurables <MessageAction>(MessageTraceDataSetSchema.MessageActionTableProperty);
            MessageTraceEntityBase[] msgActionProperties            = this.LoadConfigurables <MessageActionProperty>(MessageTraceDataSetSchema.MessageActionPropertiesTableProperty);
            MessageTraceEntityBase[] msgClassifications             = this.LoadConfigurables <MessageClassification>(MessageTraceDataSetSchema.MessageClassificationsTableProperty);
            MessageTraceEntityBase[] msgClassificationProperties    = this.LoadConfigurables <MessageClassificationProperty>(MessageTraceDataSetSchema.MessageClassificationPropertiesTableProperty);
            MessageTraceEntityBase[] msgClientInformation           = this.LoadConfigurables <MessageClientInformation>(MessageTraceDataSetSchema.MessageClientInformationTableProperty);
            MessageTraceEntityBase[] msgClientInformationProperties = this.LoadConfigurables <MessageClientInformationProperty>(MessageTraceDataSetSchema.MessageClientInformationPropertiesTableProperty);
            MessageTraceEntityBase[] msgEvents                            = this.LoadConfigurables <MessageEvent>(MessageTraceDataSetSchema.MessageEventsTableProperty);
            MessageTraceEntityBase[] eventProperties                      = this.LoadConfigurables <MessageEventProperty>(MessageTraceDataSetSchema.MessageEventPropertiesTableProperty);
            MessageTraceEntityBase[] eventRules                           = this.LoadConfigurables <MessageEventRule>(MessageTraceDataSetSchema.MessageEventRulesTableProperty);
            MessageTraceEntityBase[] msgEventRuleProperties               = this.LoadConfigurables <MessageEventRuleProperty>(MessageTraceDataSetSchema.MessageEventRulePropertiesTableProperty);
            MessageTraceEntityBase[] msgEventRuleClassifications          = this.LoadConfigurables <MessageEventRuleClassification>(MessageTraceDataSetSchema.MessageEventRuleClassificationsTableProperty);
            MessageTraceEntityBase[] msgEventRuleClassificationProperties = this.LoadConfigurables <MessageEventRuleClassificationProperty>(MessageTraceDataSetSchema.MessageEventRuleClassificationPropertiesTableProperty);
            MessageTraceEntityBase[] eventSourceItems                     = this.LoadConfigurables <MessageEventSourceItem>(MessageTraceDataSetSchema.MessageEventSourceItemsTableProperty);
            MessageTraceEntityBase[] msgEventSourceItemProperties         = this.LoadConfigurables <MessageEventSourceItemProperty>(MessageTraceDataSetSchema.MessageEventSourceItemPropertiesTableProperty);
            MessageTraceEntityBase[] msgRecipients                        = this.LoadConfigurables <MessageRecipient>(MessageTraceDataSetSchema.MessageRecipientsTableProperty);
            MessageTraceEntityBase[] recipientProperties                  = this.LoadConfigurables <MessageRecipientProperty>(MessageTraceDataSetSchema.MessageRecipientPropertiesTableProperty);
            MessageTraceEntityBase[] msgRecipientStatuses                 = this.LoadConfigurables <MessageRecipientStatus>(MessageTraceDataSetSchema.MessageRecipientStatusTableProperty);
            MessageTraceEntityBase[] msgRecipientStatusProperties         = this.LoadConfigurables <MessageRecipientStatusProperty>(MessageTraceDataSetSchema.MessageRecipientStatusPropertiesTableProperty);
            MessageTraceDataSet.AddMessageProperties(messageProperties, messageTrace);
            MessageTraceDataSet.AddClassifications(msgClassifications, messageTrace, dict);
            MessageTraceDataSet.AddClassificationProperties(msgClassificationProperties, dict);
            MessageTraceDataSet.AddClientInformation(msgClientInformation, messageTrace, dict2);
            MessageTraceDataSet.AddClientInformationProperties(msgClientInformationProperties, dict2);
            MessageTraceDataSet.AddEvents(msgEvents, messageTrace, dictionary2);
            MessageTraceDataSet.AddEventPropertiesToEvents(eventProperties, dictionary2);
            MessageTraceDataSet.AddEventRules(eventRules, dictionary2, dictionary3);
            MessageTraceDataSet.AddEventRuleProperties(msgEventRuleProperties, dictionary3);
            MessageTraceDataSet.AddEventRuleClassifications(msgEventRuleClassifications, dictionary3, dictionary4);
            MessageTraceDataSet.AddEventRuleClassificationProperties(msgEventRuleClassificationProperties, dictionary4);
            MessageTraceDataSet.AddActions(msgActions, dictionary3, dictionary);
            MessageTraceDataSet.AddActionProperties(msgActionProperties, dictionary);
            MessageTraceDataSet.AddEventSourceItems(eventSourceItems, dictionary2, dictionary5);
            MessageTraceDataSet.AddEventSourceItemProperties(msgEventSourceItemProperties, dictionary5);
            MessageTraceDataSet.AddRecipients(msgRecipients, messageTrace, dict3);
            MessageTraceDataSet.AddRecipientPropertiesToRecipients(recipientProperties, dict3);
            MessageTraceDataSet.AddRecipientStatuses(msgRecipientStatuses, dictionary6, dictionary2);
            MessageTraceDataSet.AddRecipientStatusProperties(msgRecipientStatusProperties, dictionary6);
            return(messageTrace);
        }