コード例 #1
0
        internal static PermissionTable Create(Func <PermissionTable, PermissionSet> permissionSetFactory)
        {
            PermissionTable permissionTable = new PermissionTable(permissionSetFactory);

            permissionTable.defaultMemberPermission   = permissionTable.PermissionSet.CreatePermission(new PermissionSecurityPrincipal(PermissionSecurityPrincipal.SpecialPrincipalType.Default), MemberRights.None, 0L);
            permissionTable.anonymousMemberPermission = permissionTable.PermissionSet.CreatePermission(new PermissionSecurityPrincipal(PermissionSecurityPrincipal.SpecialPrincipalType.Anonymous), MemberRights.None, -1L);
            return(permissionTable);
        }
コード例 #2
0
        internal static PermissionTable Load(Func <PermissionTable, PermissionSet> permissionSetFactory, CoreFolder coreFolder)
        {
            PermissionTable permissionTable = new PermissionTable(permissionSetFactory);

            permissionTable.LoadFrom(coreFolder);
            object obj = coreFolder.Session.Mailbox.TryGetProperty(MailboxSchema.MailboxType);

            if (obj is int && StoreSession.IsPublicFolderMailbox((int)obj))
            {
                permissionTable.isPublicFolder = true;
            }
            PermissionTable.isCrossPremiseDelegateAllowedForMailboxOwner = (coreFolder.Session.MailboxOwner != null && DelegateUserCollection.IsCrossPremiseDelegateEnabled(coreFolder.Session.MailboxOwner));
            return(permissionTable);
        }
コード例 #3
0
 public CalendarFolderPermissionSet(PermissionTable permissionTable) : base(permissionTable)
 {
 }
コード例 #4
0
 public PermissionSet(PermissionTable permissionTable)
 {
     this.permissionTable = permissionTable;
 }