protected override void InternalSetValue(PropertyBag.BasicPropertyStore propertyBag, object value)
        {
            RecipientDisplayType recipientDisplayType = (RecipientDisplayType)value;

            propertyBag.SetValueWithFixup(InternalSchema.DisplayTypeExInternal, (int)recipientDisplayType);
            propertyBag.SetValueWithFixup(InternalSchema.DisplayType, (int)DisplayTypeExProperty.GetLegacyRecipientDisplayType(recipientDisplayType));
        }
 private static RecipientDisplayType GetRecipientDisplayTypeInNativeForest(RecipientDisplayType recipientDisplayType)
 {
     if (!DisplayTypeExProperty.IsLocalForestRecipient(recipientDisplayType))
     {
         return(DisplayTypeExProperty.GetRecipientDisplayTypeInForeignForest(recipientDisplayType));
     }
     return(DisplayTypeExProperty.GetRecipientDisplayTypeInLocalForest(recipientDisplayType));
 }
 private static RecipientDisplayType FixRecipientDisplayType(RecipientDisplayType recipientDisplayType)
 {
     if (!EnumValidator.IsValidValue <RecipientDisplayType>(recipientDisplayType) && EnumValidator.IsValidValue <RecipientDisplayType>(recipientDisplayType | RecipientDisplayType.ACLableMailboxUser))
     {
         recipientDisplayType |= RecipientDisplayType.ACLableMailboxUser;
     }
     return(recipientDisplayType);
 }
		private static bool TryGetEidt(RecipientDisplayType type, out Eidt eidt)
		{
			if (type <= RecipientDisplayType.ArbitrationMailbox)
			{
				if (type <= RecipientDisplayType.ACLableSyncedUSGasContact)
				{
					if (type != RecipientDisplayType.ACLableSyncedRemoteMailUser && type != RecipientDisplayType.ACLableSyncedUSGasContact)
					{
						goto IL_76;
					}
				}
				else
				{
					if (type == RecipientDisplayType.MailboxUser)
					{
						goto IL_71;
					}
					switch (type)
					{
					case RecipientDisplayType.RemoteMailUser:
						break;
					case RecipientDisplayType.ConferenceRoomMailbox:
					case RecipientDisplayType.EquipmentMailbox:
					case RecipientDisplayType.ArbitrationMailbox:
						goto IL_71;
					case (RecipientDisplayType)9:
						goto IL_76;
					default:
						goto IL_76;
					}
				}
			}
			else if (type <= RecipientDisplayType.ACLableMailboxUser)
			{
				if (type != RecipientDisplayType.TeamMailboxUser && type != RecipientDisplayType.ACLableMailboxUser)
				{
					goto IL_76;
				}
				goto IL_71;
			}
			else if (type != RecipientDisplayType.ACLableRemoteMailUser)
			{
				if (type != RecipientDisplayType.ACLableTeamMailboxUser)
				{
					goto IL_76;
				}
				goto IL_71;
			}
			eidt = Eidt.RemoteUser;
			return true;
			IL_71:
			eidt = Eidt.User;
			return true;
			IL_76:
			eidt = Eidt.User;
			return false;
		}
        private static LegacyRecipientDisplayType GetLegacyRecipientDisplayType(RecipientDisplayType recipientDisplayType)
        {
            LegacyRecipientDisplayType legacyRecipientDisplayType = (LegacyRecipientDisplayType)(DisplayTypeExProperty.GetRecipientDisplayTypeInLocalForest(recipientDisplayType) & (RecipientDisplayType)255);

            if (EnumValidator.IsValidValue <LegacyRecipientDisplayType>(legacyRecipientDisplayType))
            {
                return(legacyRecipientDisplayType);
            }
            if (legacyRecipientDisplayType != (LegacyRecipientDisplayType)9)
            {
                return(LegacyRecipientDisplayType.MailUser);
            }
            return(LegacyRecipientDisplayType.DistributionList);
        }
예제 #6
0
        private static RecipientDisplayType TryToClearACLableFlag(RecipientDisplayType displayType)
        {
            int num = 1073741824;

            if ((displayType & (RecipientDisplayType)num) != (RecipientDisplayType)num)
            {
                return(displayType);
            }
            if (displayType == RecipientDisplayType.SyncedUSGasUSG)
            {
                return(RecipientDisplayType.SyncedUSGasUDG);
            }
            if (displayType == RecipientDisplayType.SecurityDistributionGroup)
            {
                return(RecipientDisplayType.DistributionGroup);
            }
            int num2 = (int)(displayType & (RecipientDisplayType)(~(RecipientDisplayType)num));

            if (!Enum.IsDefined(typeof(RecipientDisplayType), num2))
            {
                return(displayType);
            }
            return((RecipientDisplayType)num2);
        }
 private static bool IsLocalForestRecipient(RecipientDisplayType recipientDisplayType)
 {
     return((recipientDisplayType & (RecipientDisplayType)(-2147483648)) == RecipientDisplayType.MailboxUser);
 }
        internal static bool IsGroupMailbox(RecipientDisplayType recipientDisplayType)
        {
            RecipientDisplayType recipientDisplayTypeInNativeForest = DisplayTypeExProperty.GetRecipientDisplayTypeInNativeForest(recipientDisplayType);

            return(recipientDisplayTypeInNativeForest == RecipientDisplayType.GroupMailboxUser);
        }
        internal static bool IsResource(RecipientDisplayType recipientDisplayType)
        {
            RecipientDisplayType recipientDisplayTypeInNativeForest = DisplayTypeExProperty.GetRecipientDisplayTypeInNativeForest(recipientDisplayType);

            return(recipientDisplayTypeInNativeForest == RecipientDisplayType.EquipmentMailbox);
        }
        internal static bool IsRoom(RecipientDisplayType recipientDisplayType)
        {
            RecipientDisplayType recipientDisplayTypeInNativeForest = DisplayTypeExProperty.GetRecipientDisplayTypeInNativeForest(recipientDisplayType);

            return(recipientDisplayTypeInNativeForest == RecipientDisplayType.ConferenceRoomMailbox);
        }
        internal static bool IsMailboxUser(RecipientDisplayType recipientDisplayType)
        {
            RecipientDisplayType recipientDisplayTypeInNativeForest = DisplayTypeExProperty.GetRecipientDisplayTypeInNativeForest(recipientDisplayType);

            return(recipientDisplayTypeInNativeForest == RecipientDisplayType.MailboxUser || recipientDisplayTypeInNativeForest == RecipientDisplayType.RemoteMailUser || recipientDisplayTypeInNativeForest == RecipientDisplayType.ACLableMailboxUser || recipientDisplayTypeInNativeForest == RecipientDisplayType.ACLableRemoteMailUser || recipientDisplayTypeInNativeForest == RecipientDisplayType.ACLableSyncedMailboxUser || recipientDisplayTypeInNativeForest == RecipientDisplayType.ACLableSyncedRemoteMailUser || recipientDisplayTypeInNativeForest == RecipientDisplayType.LinkedUser || recipientDisplayTypeInNativeForest == RecipientDisplayType.SyncedMailboxUser || recipientDisplayTypeInNativeForest == RecipientDisplayType.SyncedRemoteMailUser);
        }
        internal static bool IsDL(RecipientDisplayType recipientDisplayType)
        {
            RecipientDisplayType recipientDisplayTypeInNativeForest = DisplayTypeExProperty.GetRecipientDisplayTypeInNativeForest(recipientDisplayType);

            return(recipientDisplayTypeInNativeForest == RecipientDisplayType.DistributionGroup || recipientDisplayTypeInNativeForest == RecipientDisplayType.DynamicDistributionGroup || recipientDisplayTypeInNativeForest == RecipientDisplayType.SecurityDistributionGroup || recipientDisplayTypeInNativeForest == RecipientDisplayType.PrivateDistributionList);
        }
 private static RecipientDisplayType GetRecipientDisplayTypeInForeignForest(RecipientDisplayType recipientDisplayType)
 {
     return(DisplayTypeExProperty.FixRecipientDisplayType((recipientDisplayType & (RecipientDisplayType)65280) >> 8));
 }
 private static RecipientDisplayType GetRecipientDisplayTypeInLocalForest(RecipientDisplayType recipientDisplayType)
 {
     return(DisplayTypeExProperty.FixRecipientDisplayType(recipientDisplayType & (RecipientDisplayType)1073742079));
 }