Ejemplo n.º 1
0
        /// <summary>
        /// Handle a socket accept
        /// </summary>
        private void AcceptSocket(IAsyncResult result)
        {
            State = EDispatcherState.AcceptingSocket;
            var sock = mListener.EndAcceptSocket(result);

            //Queue the next accept
            BeginAcceptingSockets();

            //Fire the event handler for sockets
            if (SocketConnected != null)
            {
                SocketConnected(sock);
            }
            else
            {
                //boot the user if nobody is listening
                sock.Disconnect(false);
            }
        }
Ejemplo n.º 2
0
 /// <summary>
 /// Stop listening for connections
 /// </summary>
 public void Stop()
 {
     mListener.Stop();
     State = EDispatcherState.Stopped;
 }
Ejemplo n.º 3
0
 /// <summary>
 /// Start an async socket accept
 /// </summary>
 private void BeginAcceptingSockets()
 {
     State = EDispatcherState.Listening;
     mListener.BeginAcceptSocket(AcceptSocket, null);
 }
Ejemplo n.º 4
0
 /// <summary>
 /// Create a tcp listener bound to the specified address and port
 /// </summary>
 public TcpDispatcher(IPAddress bindAddress, ushort port)
 {
     State     = EDispatcherState.Stopped;
     mListener = new TcpListener(bindAddress, port);
 }