System.Security.PermissionToken.GetToken C# (CSharp) Method

GetToken() public static method

public static GetToken ( Type cls ) : PermissionToken
cls System.Type
return PermissionToken
        public static PermissionToken GetToken(Type cls)
        {
            if (cls == null)
                return null;
            
            if (cls.GetInterface( "System.Security.Permissions.IBuiltInPermission" ) != null)
            {
                if (s_reflectPerm == null)
                    s_reflectPerm = new ReflectionPermission(PermissionState.Unrestricted);
                s_reflectPerm.Assert();
                MethodInfo method = cls.GetMethod( "GetTokenIndex", BindingFlags.Static | BindingFlags.NonPublic );
                BCLDebug.Assert( method != null, "IBuiltInPermission types should have a static method called 'GetTokenIndex'" );
                return s_theTokenFactory.BuiltInGetToken( (int)method.Invoke( null, null ), null, cls );
            }
            else
            {
                return s_theTokenFactory.GetToken(cls, null);
            }
        }

Same methods

PermissionToken::GetToken ( IPermission perm ) : PermissionToken
PermissionToken::GetToken ( String typeStr ) : PermissionToken
PermissionToken::GetToken ( String typeStr, bool bCreateMscorlib ) : PermissionToken

Usage Example

        // static default constructor. This will be called before any of the static members are accessed.
        static CodeAccessSecurityEngine()
        {
#pragma warning disable 618
            AssertPermission = new SecurityPermission(SecurityPermissionFlag.Assertion);
#pragma warning restore 618
            AssertPermissionToken = PermissionToken.GetToken(AssertPermission);
        }
All Usage Examples Of System.Security.PermissionToken::GetToken