示例#1
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="requestHandler"></param>
        protected GameWebSocketHost(WebSocketRequestHandler requestHandler)
        {
            _setting = GameEnvironment.Setting;
            int        port          = _setting != null ? _setting.GamePort : 0;
            IPEndPoint localEndPoint = new IPEndPoint(IPAddress.Any, port);

            var section        = GetSection();
            int maxConnections = section.SocketMaxConnection;
            int backlog        = section.SocketBacklog;
            int maxAcceptOps   = section.SocketMaxAcceptOps;
            int bufferSize     = section.SocketBufferSize;
            int expireInterval = section.SocketExpireInterval;
            int expireTime     = section.SocketExpireTime;

            var socketSettings = new SocketSettings(maxConnections, backlog, maxAcceptOps, bufferSize, localEndPoint, expireInterval, expireTime);

            socketListener = new SocketListener(socketSettings, requestHandler);
            socketListener.DataReceived   += new ConnectionEventHandler(OnDataReceived);
            socketListener.Connected      += new ConnectionEventHandler(socketLintener_OnConnectCompleted);
            socketListener.Handshaked     += new ConnectionEventHandler(OnHandshaked);
            socketListener.Disconnected   += new ConnectionEventHandler(OnDisconnected);
            socketListener.OnPing         += new ConnectionEventHandler(socketLintener_OnPing);
            socketListener.OnPong         += new ConnectionEventHandler(socketLintener_OnPong);
            socketListener.OnClosedStatus += socketLintener_OnClosedStatus;
        }
示例#2
0
 public SocketMiddleware(RequestDelegate next, ISocketHandler socketHandler, WebSocketRequestHandler webSocketRequestHandler)
 {
     _next                    = next ?? throw new ArgumentNullException(nameof(next));
     _socketHandler           = socketHandler ?? throw new ArgumentNullException(nameof(socketHandler));
     _webSocketRequestHandler = webSocketRequestHandler ?? throw new ArgumentNullException(nameof(webSocketRequestHandler));
 }