using Esiur.Core; using Esiur.Data; using Esiur.Net.Packets; using Esiur.Resource; using Esiur.Security.Authority; using Esiur.Security.Membership; using Esiur.Security.Permissions; using System; using System.Collections.Generic; using System.Text; namespace Esiur.Protocol; public class EpConnectionContext : IResourceContext { //public EpConnectionContext() // : base(0, new Map(), null, null) //{ //} //public override void Build() //{ // Attributes["AutoConnect"] = AutoReconnect; // Attributes["ReconnectInterval"] = ReconnectInterval; // Attributes["UseWebSocket"] = UseWebSocket; // Attributes["SecureWebSocket"] = SecureWebSocket; // Attributes["Domain"] = SecureWebSocket; // Attributes["AuthenticationProtocol"] = SecureWebSocket; // Attributes["Identity"] = SecureWebSocket; //} public ExceptionLevel ExceptionLevel { get; set; } = ExceptionLevel.Code | ExceptionLevel.Message | ExceptionLevel.Source | ExceptionLevel.Trace; //public Func> Authenticator { get; set; } //public Func> Authenticator { get; set; } public AuthenticationMode AuthenticationMode { get; set; } = AuthenticationMode.None; public string Identity { get; set; } public string AuthenticationProtocol { get; set; } = "hash"; public bool AutoReconnect { get; set; } = false; public uint ReconnectInterval { get; set; } = 5; //public string Username { get; set; } public bool UseWebSocket { get; set; } public bool SecureWebSocket { get; set; } // public string Password { get; set; } //public string Token { get; set; } //public ulong TokenIndex { get; set; } public string Domain { get; set; } public Map Attributes { get; set; } public Map Properties { get; set; } public ulong Age { get; } }