/// <summary>
        /// 
        /// </summary>
        /// <param name="user"></param>
        /// <param name="realUser"></param>
        public GenericTicketPrincipal(ITicketToken user, ITicketToken realUser)
        {
            user.NullCheck("user");
            realUser.NullCheck("realUser");

            this._Identity = new GenericTicketIdentity(user, realUser);
        }
        /// <summary>
        ///
        /// </summary>
        /// <param name="user"></param>
        /// <param name="realUser"></param>
        public GenericTicketPrincipal(ITicketToken user, ITicketToken realUser)
        {
            user.NullCheck("user");
            realUser.NullCheck("realUser");

            this._Identity = new GenericTicketIdentity(user, realUser);
        }
        /// <summary>
        /// 
        /// </summary>
        /// <param name="identity"></param>
        public GenericTicketPrincipal(GenericTicketIdentity identity)
        {
            identity.NullCheck("identity");

            this._Identity = identity;
        }
        /// <summary>
        ///
        /// </summary>
        /// <param name="identity"></param>
        public GenericTicketPrincipal(GenericTicketIdentity identity)
        {
            identity.NullCheck("identity");

            this._Identity = identity;
        }