Exemplo n.º 1
0
        private static RemoteRecipientType CalculateSourceRRT(RecipientTypeDetails recipientTypeDetails)
        {
            RemoteRecipientType remoteRecipientType = RemoteRecipientType.Migrated;

            if (recipientTypeDetails <= RecipientTypeDetails.RoomMailbox)
            {
                if (recipientTypeDetails != RecipientTypeDetails.SharedMailbox)
                {
                    if (recipientTypeDetails == RecipientTypeDetails.RoomMailbox)
                    {
                        remoteRecipientType |= RemoteRecipientType.RoomMailbox;
                    }
                }
                else
                {
                    remoteRecipientType |= RemoteRecipientType.SharedMailbox;
                }
            }
            else if (recipientTypeDetails != RecipientTypeDetails.EquipmentMailbox)
            {
                if (recipientTypeDetails == RecipientTypeDetails.TeamMailbox)
                {
                    remoteRecipientType |= RemoteRecipientType.TeamMailbox;
                }
            }
            else
            {
                remoteRecipientType |= RemoteRecipientType.EquipmentMailbox;
            }
            return(remoteRecipientType);
        }
Exemplo n.º 2
0
 internal static PropertyConstraintViolationError ValidateRemoteRecipientType(object value, PropertyDefinition propertyDefinition, IPropertyBag propertyBag, PropertyDefinitionConstraint owner)
 {
     if (value != null && ((RemoteRecipientType)value & RemoteRecipientType.Migrated) == RemoteRecipientType.None)
     {
         RemoteRecipientType remoteRecipientType = (RemoteRecipientType)value & (RemoteRecipientType.ProvisionMailbox | RemoteRecipientType.ProvisionArchive | RemoteRecipientType.DeprovisionMailbox | RemoteRecipientType.DeprovisionArchive | RemoteRecipientType.RoomMailbox | RemoteRecipientType.EquipmentMailbox | RemoteRecipientType.TeamMailbox);
         if (Array.IndexOf <RemoteRecipientType>(RemoteRecipientTypeHelper.AllowedProvisionOrDeprovisionType, remoteRecipientType) == -1)
         {
             return(new PropertyConstraintViolationError(DirectoryStrings.ErrorInvalidRemoteRecipientType(remoteRecipientType.ToString()), propertyDefinition, value, owner));
         }
     }
     return(null);
 }
Exemplo n.º 3
0
        public static RemoteMailboxType GetRemoteMailboxType(RemoteRecipientType remoteRecipientType)
        {
            RemoteMailboxType   result = (RemoteMailboxType)((ulong)int.MinValue);
            RemoteRecipientType remoteRecipientType2 = remoteRecipientType & (RemoteRecipientType.RoomMailbox | RemoteRecipientType.EquipmentMailbox | RemoteRecipientType.TeamMailbox);

            if (remoteRecipientType2 == RemoteRecipientType.RoomMailbox)
            {
                result = RemoteMailboxType.Room;
            }
            else if (remoteRecipientType2 == RemoteRecipientType.EquipmentMailbox)
            {
                result = RemoteMailboxType.Equipment;
            }
            else if (remoteRecipientType2 == RemoteRecipientType.SharedMailbox)
            {
                result = RemoteMailboxType.Shared;
            }
            else if (remoteRecipientType2 == RemoteRecipientType.TeamMailbox)
            {
                result = RemoteMailboxType.Team;
            }
            return(result);
        }