using System;
using System.Collections.Generic;
using System.Text;
using System.Web.Services.Protocols;
using System.Xml.Serialization;

namespace BusinessCommon
{
    [XmlRoot(Namespace = HeaderName)]
    public class AuthenticationHeader : SoapHeader
    {
        public const string HeaderName = "uri://BusinessCommon/AuthenticationHeader";
        private string mName;
        private DateTime mIssueDate;
        private DateTime mExpiration;
        private string[] mRoles;
        private string mUserData;

        public AuthenticationHeader() { }

        public string Name
        {
            get { return mName; }
            set { mName = value; }
        }

        public DateTime IssueDate
        {
            get { return mIssueDate; }
            set { mIssueDate = value; }
        }

        public DateTime Expiration
        {
            get { return mExpiration; }
            set { mExpiration = value; }
        }

        public string[] Roles
        {
            get { return mRoles; }
            set { mRoles = value; }
        }

        public string UserData
        {
            get { return mUserData; }
            set { mUserData = value; }
        }
    }
}
