示例#1
0
        /// <summary> Rollbacks sfb action.</summary>
        /// <param name="action"> The action.</param>
        /// <param name="runspace"> The runspace.</param>
        private void RollbackAction(TransactionAction action, Runspace runspace)
        {
            HostedSolutionLog.LogInfo("Rollback action: {0}", action.ActionType);
            switch (action.ActionType)
            {
            case TransactionAction.TransactionActionTypes.SfBNewSipDomain:
                DeleteSipDomain(runspace, action.Id);
                break;

            case TransactionAction.TransactionActionTypes.SfBNewUser:
                DeleteUser(runspace, action.Id);
                break;

            case TransactionAction.TransactionActionTypes.SfBNewConferencingPolicy:
                DeleteConferencingPolicy(runspace, action.Id);
                break;

            case TransactionAction.TransactionActionTypes.SfBNewExternalAccessPolicy:
                DeleteExternalAccessPolicy(runspace, action.Id);
                break;

            case TransactionAction.TransactionActionTypes.SfBNewMobilityPolicy:
                DeleteMobilityPolicy(runspace, action.Id);
                break;
            }
        }
示例#2
0
        public void RegisterNewGlobalAddressList(string id)
        {
            TransactionAction action = new TransactionAction();

            action.ActionType = TransactionAction.TransactionActionTypes.CreateGlobalAddressList;
            action.Id         = id;
            Actions.Add(action);
        }
示例#3
0
        public void RegisterNewAddressBookPolicy(string id)
        {
            TransactionAction action = new TransactionAction();

            action.ActionType = TransactionAction.TransactionActionTypes.CreateAddressBookPolicy;
            action.Id         = id;
            Actions.Add(action);
        }
示例#4
0
        public void RegisterNewDistributionGroup(string id)
        {
            TransactionAction action = new TransactionAction();

            action.ActionType = TransactionAction.TransactionActionTypes.CreateDistributionGroup;
            action.Id         = id;
            Actions.Add(action);
        }
示例#5
0
        public void RegisterMailEnabledDistributionGroup(string id)
        {
            TransactionAction action = new TransactionAction();

            action.ActionType = TransactionAction.TransactionActionTypes.EnableDistributionGroup;
            action.Id         = id;
            Actions.Add(action);
        }
示例#6
0
        public void RegisterNewPublicFolderMailbox(string id)
        {
            TransactionAction action = new TransactionAction();

            action.ActionType = TransactionAction.TransactionActionTypes.CreatePublicFolderMailbox;
            action.Id         = id;
            Actions.Add(action);
        }
示例#7
0
        public void RegisterNewOrganizationUnit(string id)
        {
            TransactionAction action = new TransactionAction();

            action.ActionType = TransactionAction.TransactionActionTypes.CreateOrganizationUnit;
            action.Id         = id;
            Actions.Add(action);
        }
示例#8
0
        public void RegisterNewContact(string id)
        {
            TransactionAction action = new TransactionAction();

            action.ActionType = TransactionAction.TransactionActionTypes.CreateContact;
            action.Id         = id;
            Actions.Add(action);
        }
示例#9
0
        public void RegisterEnableMailbox(string id)
        {
            TransactionAction action = new TransactionAction();

            action.ActionType = TransactionAction.TransactionActionTypes.EnableMailbox;
            action.Id         = id;
            Actions.Add(action);
        }
示例#10
0
        public void RegisterNewAcceptedDomain(string id)
        {
            TransactionAction action = new TransactionAction();

            action.ActionType = TransactionAction.TransactionActionTypes.CreateAcceptedDomain;
            action.Id         = id;
            Actions.Add(action);
        }
示例#11
0
        public void RegisterNewOfflineAddressBook(string id)
        {
            TransactionAction action = new TransactionAction();

            action.ActionType = TransactionAction.TransactionActionTypes.CreateOfflineAddressBook;
            action.Id         = id;
            Actions.Add(action);
        }
示例#12
0
        public void AddMailboxFolderPermission(string folderPath, ExchangeAccount account)
        {
            TransactionAction action = new TransactionAction();

            action.ActionType      = TransactionAction.TransactionActionTypes.AddMailboxFolderPermission;
            action.Id              = folderPath;
            action.ExchangeAccount = account;
            Actions.Add(action);
        }
示例#13
0
        public void RemoveSendAsPermission(string accountName, string id)
        {
            TransactionAction action = new TransactionAction();

            action.ActionType = TransactionAction.TransactionActionTypes.RemoveSendAsPermission;
            action.Id         = id;
            action.Account    = accountName;
            Actions.Add(action);
        }
示例#14
0
        public void AddMailBoxFullAccessPermission(string accountName, string id)
        {
            TransactionAction action = new TransactionAction();

            action.ActionType = TransactionAction.TransactionActionTypes.AddMailboxFullAccessPermission;
            action.Id         = id;
            action.Account    = accountName;
            Actions.Add(action);
        }
示例#15
0
        public void ResetMailboxOnBehalfPermissions(string id, string[] accounts)
        {
            TransactionAction action = new TransactionAction();

            action.ActionType = TransactionAction.TransactionActionTypes.ResetMailboxOnBehalfPermissions;
            action.Accounts   = accounts;
            action.Id         = id;
            Actions.Add(action);
        }
示例#16
0
        public void RegisterNewUPNSuffix(string id, string suffix)
        {
            TransactionAction action = new TransactionAction();

            action.ActionType = TransactionAction.TransactionActionTypes.AddUPNSuffix;
            action.Id         = id;
            action.Suffix     = suffix;
            Actions.Add(action);
        }