예제 #1
0
        public bool Save(QuarantinedMessageRecipient quarantinedMessageRecipient, bool ignorePartialDbFailures = false)
        {
            bool   result = true;
            object obj    = quarantinedMessageRecipient[QuarantinedMessageRecipientSchema.FssCopyIdProp];

            if (ignorePartialDbFailures && obj == null)
            {
                result = this.SaveAllCopies <QuarantinedMessageRecipient>(quarantinedMessageRecipient, ((Guid)quarantinedMessageRecipient[QuarantinedMessageRecipientSchema.OrganizationalUnitRootProperty]).ToString());
            }
            else
            {
                this.DataProvider.Save(quarantinedMessageRecipient);
            }
            return(result);
        }
예제 #2
0
        public void Add(QuarantinedMessageRecipient recipient)
        {
            if (recipient == null)
            {
                throw new ArgumentNullException("recipient");
            }
            if (recipient.EmailPrefix == null)
            {
                throw new ArgumentException("recipient.EmailPrefix");
            }
            if (recipient.EmailDomain == null)
            {
                throw new ArgumentException("recipient.EmailDomain");
            }
            Guid identity = CombGuidGenerator.NewGuid();

            this.batchRecipients.AddPropertyValue(identity, QuarantinedMessageRecipientSchema.ExMessageIdProperty, recipient.ExMessageId);
            this.batchRecipients.AddPropertyValue(identity, QuarantinedMessageRecipientSchema.EmailPrefixProperty, recipient.EmailPrefix);
            this.batchRecipients.AddPropertyValue(identity, QuarantinedMessageRecipientSchema.EmailDomainProperty, recipient.EmailDomain);
            this.batchRecipients.AddPropertyValue(identity, QuarantinedMessageRecipientSchema.QuarantinedProperty, recipient.Quarantined);
            this.batchRecipients.AddPropertyValue(identity, QuarantinedMessageRecipientSchema.NotifiedProperty, recipient.Notified);
            this.batchRecipients.AddPropertyValue(identity, QuarantinedMessageRecipientSchema.ReportedProperty, recipient.Reported);
            this.batchRecipients.AddPropertyValue(identity, QuarantinedMessageRecipientSchema.ReleasedProperty, recipient.Released);
        }