示例#1
0
 public override void Apply(MrsPSHandler psHandler, MailboxSession mailboxSession)
 {
     using (MonadCommand command = psHandler.GetCommand(MrsCmdlet.SetConsumerMailbox))
     {
         int num = 1;
         command.Parameters.AddWithValue("Identity", ConsumerMailboxIdParameter.Parse(mailboxSession.MailboxGuid.ToString()));
         if (this.LastName != null)
         {
             command.Parameters.AddWithValue("LastName", this.LastName);
         }
         if (this.FirstName != null)
         {
             command.Parameters.AddWithValue("FirstName", this.FirstName);
         }
         if (this.BirthdayInt != 0)
         {
             command.Parameters.AddWithValue("Birthdate", this.BirthdayInt);
             command.Parameters.AddWithValue("BirthdayPrecision", this.BirthdayPrecision);
         }
         if (command.Parameters.Count > num)
         {
             command.Execute();
         }
     }
 }
示例#2
0
 public MrsPSHandler(string prefix)
 {
     MrsPSHandler.CheckPSRunspaceInitialized();
     this.mrsCommandInteractionHandler = new MrsPSHandler.MrsCommandInteractionHandler(prefix);
     using (DisposeGuard disposeGuard = default(DisposeGuard))
     {
         this.MonadConnection = new MonadConnection("timeout=30", this.mrsCommandInteractionHandler);
         disposeGuard.Add <MonadConnection>(this.MonadConnection);
         this.MonadConnection.Open();
         disposeGuard.Success();
     }
 }
        public override void Apply(MrsPSHandler psHandler, MailboxSession mailboxSession)
        {
            JunkEmailRule junkEmailRule = mailboxSession.JunkEmailRule;

            if (this.TrustedSenderDomain != null)
            {
                this.AddEntriesToCollection(junkEmailRule.TrustedSenderDomainCollection, "TrustedSenderDomainCollection", mailboxSession.MailboxGuid, this.TrustedSenderDomain);
            }
            if (this.TrustedSenderEmail != null)
            {
                this.AddEntriesToCollection(junkEmailRule.TrustedSenderEmailCollection, "TrustedSenderEmailCollection", mailboxSession.MailboxGuid, this.TrustedSenderEmail);
            }
            if (this.BlockedSenderDomain != null)
            {
                this.AddEntriesToCollection(junkEmailRule.BlockedSenderDomainCollection, "BlockedSenderDomainCollection", mailboxSession.MailboxGuid, this.BlockedSenderDomain);
            }
            if (this.BlockedSenderEmail != null)
            {
                this.AddEntriesToCollection(junkEmailRule.BlockedSenderEmailCollection, "BlockedSenderEmailCollection", mailboxSession.MailboxGuid, this.BlockedSenderEmail);
            }
            if (this.TrustedRecipientDomain != null)
            {
                this.AddEntriesToCollection(junkEmailRule.TrustedRecipientDomainCollection, "TrustedRecipientDomainCollection", mailboxSession.MailboxGuid, this.TrustedRecipientDomain);
            }
            if (this.TrustedRecipientEmail != null)
            {
                this.AddEntriesToCollection(junkEmailRule.TrustedRecipientEmailCollection, "TrustedRecipientEmailCollection", mailboxSession.MailboxGuid, this.TrustedRecipientEmail);
            }
            if (this.TrustedContactsEmail != null)
            {
                IRecipientSession adrecipientSession = mailboxSession.GetADRecipientSession(true, ConsistencyMode.IgnoreInvalid);
                if (adrecipientSession == null)
                {
                    string itemList = this.TrustedContactsEmail.Aggregate((string result, string email) => result + ", " + email);
                    throw new MailboxSettingsJunkMailErrorPermanentException("TrustedContactsEmail", itemList, "error getting RecipientSession");
                }
                junkEmailRule.SynchronizeContactsCache();
                foreach (string email2 in this.TrustedContactsEmail)
                {
                    junkEmailRule.AddTrustedContact(email2, adrecipientSession);
                }
            }
            if (this.SendAsEmail != null)
            {
                this.AddEntriesToCollection(junkEmailRule.TrustedSenderEmailCollection, "TrustedSenderEmailCollection", mailboxSession.MailboxGuid, this.SendAsEmail);
            }
            junkEmailRule.Save();
        }
示例#4
0
 public virtual void Apply(MrsPSHandler psHandler, MailboxSession mailboxSession)
 {
     throw new OlcSettingNotImplementedPermanentException("Mailbox", base.GetType().ToString());
 }