예제 #1
0
 /// <summary>
 /// FastWebSocket的客户端对象
 /// </summary>
 /// <param name="packetIdProvider"></param>
 /// <param name="taskSetActionTable"></param>
 /// <param name="jsonSerializer"></param>
 /// <param name="filterAttributeProvider"></param>
 internal FastWebSocketSession(PacketIdProvider packetIdProvider, TaskSetActionTable taskSetActionTable, IJsonSerializer jsonSerializer, IFilterAttributeProvider filterAttributeProvider)
 {
     this.packetIdProvider        = packetIdProvider;
     this.taskSetActionTable      = taskSetActionTable;
     this.JsonSerializer          = jsonSerializer;
     this.FilterAttributeProvider = filterAttributeProvider;
 }
예제 #2
0
 /// <summary>
 /// 服务器的客户端对象
 /// </summary>
 /// <param name="serializer">序列化工具</param>
 /// <param name="packetIdProvider">数据包id提供者</param>
 /// <param name="taskSetActionTable">任务行为表</param>
 /// <param name="filterAttributeProvider">特性过滤器提供者</param>
 internal FastSession(PacketIdProvider packetIdProvider, TaskSetActionTable taskSetActionTable, ISerializer serializer, IFilterAttributeProvider filterAttributeProvider)
 {
     this.packetIdProvider        = packetIdProvider;
     this.taskSetActionTable      = taskSetActionTable;
     this.Serializer              = serializer;
     this.FilterAttributeProvider = filterAttributeProvider;
 }
예제 #3
0
        /// <summary>
        /// 快速构建Tcp服务端
        /// </summary>
        public FastTcpServer()
        {
            this.apiActionList      = new ApiActionList();
            this.packetIdProvider   = new PacketIdProvider();
            this.taskSetActionTable = new TaskSetActionTable();

            this.Serializer = new DefaultSerializer();
            this.FilterAttributeProvider = new FilterAttributeProvider();
        }
예제 #4
0
        /// <summary>
        /// 快速构建WebSocket服务端
        /// </summary>
        public FastWebSocketServer()
        {
            this.apiActionList      = new ApiActionList();
            this.PacketIdProvider   = new PacketIdProvider();
            this.TaskSetActionTable = new TaskSetActionTable();

            this.JsonSerializer          = new DefaultJsonSerializer();
            this.GlobalFilter            = new GlobalFilters();
            this.DependencyResolver      = new DefaultDependencyResolver();
            this.FilterAttributeProvider = new FilterAttributeProvider();
        }
        /// <summary>
        /// JsonWebSocket中间件
        /// </summary>
        public JsonWebSocketMiddleware()
        {
            this.apiActionList      = new ApiActionList();
            this.PacketIdProvider   = new PacketIdProvider();
            this.TaskSetActionTable = new TaskSetActionTable();

            this.JsonSerializer          = new DefaultDynamicJsonSerializer();
            this.GlobalFilters           = new WebSocketGlobalFilters();
            this.DependencyResolver      = new DefaultDependencyResolver();
            this.FilterAttributeProvider = new DefaultFilterAttributeProvider();

            this.BindService();
        }
예제 #6
0
        /// <summary>
        /// fast协议中间件
        /// </summary>
        public FastMiddleware()
        {
            this.apiActionList      = new ApiActionList();
            this.PacketIdProvider   = new PacketIdProvider();
            this.TaskSetActionTable = new TaskSetActionTable();

            this.Serializer              = new DefaultSerializer();
            this.GlobalFilters           = new FastGlobalFilters();
            this.DependencyResolver      = new DefaultDependencyResolver();
            this.FilterAttributeProvider = new DefaultFilterAttributeProvider();

            DomainAssembly.GetAssemblies().ForEach(item => this.BindService(item));
        }
        /// <summary>
        /// JsonWebSocket中间件
        /// </summary>
        public JsonWebSocketMiddleware()
        {
            this.apiActionList = new ApiActionList();
            this.PacketIdProvider = new PacketIdProvider();
            this.TaskSetActionTable = new TaskSetActionTable();

            this.JsonSerializer = new DefaultDynamicJsonSerializer();
            this.GlobalFilters = new WebSocketGlobalFilters();
            this.DependencyResolver = new DefaultDependencyResolver();
            this.FilterAttributeProvider = new DefaultFilterAttributeProvider();

            DomainAssembly.GetAssemblies().ForEach(item => this.BindService(item));           
        }
        /// <summary>
        /// JsonWebSocket中间件
        /// </summary>
        public JsonWebSocketMiddleware()
        {
            this.apiActionList    = new ApiActionList();
            this.PacketIdProvider = new PacketIdProvider();
            this.TaskSetterTable  = new TaskSetterTable <long>();

            this.TimeOut                 = TimeSpan.FromSeconds(30);
            this.JsonSerializer          = new DefaultDynamicJsonSerializer();
            this.GlobalFilters           = new WebSocketGlobalFilters();
            this.DependencyResolver      = new DefaultDependencyResolver();
            this.FilterAttributeProvider = new DefaultFilterAttributeProvider();

            DomainAssembly.GetAssemblies().ForEach(item => this.BindService(item));
        }
예제 #9
0
        /// <summary>
        /// fast协议中间件
        /// </summary>
        public FastMiddleware()
        {
            this.apiActionTable   = new ApiActionTable();
            this.PacketIdProvider = new PacketIdProvider();
            this.TaskSetterTable  = new TaskSetterTable <long>();

            this.TimeOut                 = TimeSpan.FromSeconds(30);
            this.Serializer              = new DefaultSerializer();
            this.GlobalFilters           = new FastGlobalFilters();
            this.DependencyResolver      = new DefaultDependencyResolver();
            this.FilterAttributeProvider = new DefaultFilterAttributeProvider();

            DomainAssembly.GetAssemblies().ForEach(this.BindService);
        }
예제 #10
0
        /// <summary>
        /// 释放资源
        /// </summary>
        /// <param name="disposing">是否也释放托管资源</param>
        protected override void Dispose(bool disposing)
        {
            base.Dispose(disposing);
            if (disposing)
            {
                this.apiActionList = null;

                this.taskSetActionTable.Clear();
                this.taskSetActionTable = null;

                this.packetIdProvider        = null;
                this.Serializer              = null;
                this.FilterAttributeProvider = null;
            }
        }
예제 #11
0
        /// <summary>
        /// 释放资源
        /// </summary>
        /// <param name="disposing">是否也释放托管资源</param>
        protected override void Dispose(bool disposing)
        {
            base.Dispose(disposing);
            if (disposing)
            {
                this.apiActionList = null;

                this.TaskSetActionTable.Clear();
                this.TaskSetActionTable = null;

                this.PacketIdProvider        = null;
                this.JsonSerializer          = null;
                this.GlobalFilter            = null;
                this.DependencyResolver      = null;
                this.FilterAttributeProvider = null;
            }
        }