Exemple #1
0
 /// <summary>
 /// Initializes a new instance of the <see cref="T:ExitGames.Net.Sockets.PooledReceiver"/> class.
 /// </summary>
 /// <param name="receiver">The underlying receiver.</param>
 /// <param name="batchedSender">Indicates whether to expected message batches from the <see
 /// cref="T:ExitGames.Net.Sockets.PooledSender"/>.
 /// </param>
 public PooledReceiver(ISocketReceiver receiver, bool batchedSender)
 {
     Fiber.Start();
     if (batchedSender)
     {
         receiveAction = new Action <ReceiveBuffer>(ProcessBufferBatched);
     }
     else
     {
         receiveAction = new Action <ReceiveBuffer>(ProcessBuffer);
     }
     this.receiver          = receiver;
     this.receiver.Receive += new EventHandler <SocketReceiveEventArgs>(Receiver_OnReceive);
 }
Exemple #2
0
        public int connectXMPPAuth()
        {
            this.agent = Agent.getInstance();

            // 소켓이 연결되고 사전 인증절차가 끝나면 스레드를 시작한다.
            // 소켓이 연결되면 서버로 부터 패킷을 받는 스레드 시작 (Call Event Handle)

            // 로그인 시도전 XMPP 사전 인증 절차를 거친다.

            if (!isAlreadyAuth)
            {
                if (startPreProcess() != ERRORCODE.SUCCESS)
                {
                    return(ERRORCODE.LOGIN_FAIL);
                }
            }
            else
            {
                logwrite.write("connectXMPPAuth", "## Finesse Authentication is Already Success ##");
            }

            logwrite.write("connectXMPPAuth", "## Finesse Authentication Success ##");

            isAlreadyAuth = true; // XMPP 인증 완료 여부 flag

            // Finesse KeepAlive 체크 스레드 (굳이 스레드를 돌려야 할까..??)

            /*
             * finesseKeepAlive = new FinesseKeepAlive(sock, agent, this);
             * ThreadStart sendts = new ThreadStart(finesseKeepAlive.runThread);
             * Thread sendThread = new Thread(sendts);
             * sendThread.Start();
             */

            // Finesse XMPP 이벤트 받는 스레드 시작
            finesseRecv = new FinesseReceiver(sock, finesseObj, agent, this);
            ThreadStart recvts     = new ThreadStart(finesseRecv.runThread);
            Thread      recvThread = new Thread(recvts);

            recvThread.Start();
//          callConnectionEvent();  // Connection 성공 이벤트 전달

            return(ERRORCODE.SUCCESS);
        }
Exemple #3
0
 public SocketAuthenLogic(ISocketSender sender, ISocketReceiver receiver)
 {
     _sender   = sender;
     _receiver = receiver;
 }
Exemple #4
0
 /// <summary>
 ///  Initializes a new instance of the <see
 ///  cref="T:ExitGames.Diagnostics.Monitoring.CounterSampleReceiver"/> class.
 /// </summary>
 /// <param name="receiver">The receiver.</param>
 public CounterSampleReceiver(ISocketReceiver receiver)
 {
     this.receiver          = receiver;
     this.receiver.Receive += new EventHandler <SocketReceiveEventArgs>(OnReceive);
 }
Exemple #5
0
 public SocketBusinessLogic(ISocketSender sender, ISocketReceiver receiver)
 {
     _sender   = sender;
     _receiver = receiver;
 }