internal override void HandleRoomResponse(RealtimeManager.RealTimeRoomResponse response)
            {
                if (!response.RequestSucceeded())
                {
                    mContainingSession.EnterState(new ShutdownState(mContainingSession));
                    mContainingSession.OnGameThreadListener().RoomConnected(false);
                }

                mContainingSession.EnterState(new ConnectingState(response.Room(), mContainingSession));
            }
 internal override void HandleRoomResponse(RealtimeManager.RealTimeRoomResponse response)
 {
     if (!response.RequestSucceeded())
     {
         mSession.EnterState(new ShutdownState(mSession));
         mSession.OnGameThreadListener().RoomConnected(false);
     }
     else
     {
         mSession.EnterState(new LeavingRoom(mSession, response.Room(), delegate
         {
             mSession.OnGameThreadListener().RoomConnected(false);
         }));
     }
 }
示例#3
0
        private RoomSession GetTerminatedSession()
        {
            var terminatedRoom = new RoomSession(mRealtimeManager, new NoopListener());

            terminatedRoom.EnterState(new ShutdownState(terminatedRoom));
            return(terminatedRoom);
        }
示例#4
0
            internal override void HandleRoomResponse(RealtimeManager.RealTimeRoomResponse response)
            {
                // If the room creation didn't succeed, we have nothing left to do, just bail out
                // and alert the user callback.
                if (!response.RequestSucceeded())
                {
                    mSession.EnterState(new ShutdownState(mSession));
                    mSession.OnGameThreadListener().RoomConnected(false);
                    return;
                }

                // We just created a room which we're not going to use. Clean up and notify the user
                // when we're done.
                mSession.EnterState(new LeavingRoom(mSession, response.Room(),
                                                    () => mSession.OnGameThreadListener().RoomConnected(false)));
            }
        private RoomSession GetTerminatedSession()
        {
            RoomSession roomSession = new RoomSession(mRealtimeManager, new NoopListener());

            roomSession.EnterState(new ShutdownState(roomSession), false);
            return(roomSession);
        }
 internal override void OnStateEntered()
 {
     mSession.Manager().LeaveRoom(mRoomToLeave, delegate
     {
         mLeavingCompleteCallback();
         mSession.EnterState(new ShutdownState(mSession));
     });
 }
示例#7
0
 internal override void LeaveRoom()
 {
     Logger.d("Session was torn down before room was created.");
     mContainingSession.OnGameThreadListener().RoomConnected(false);
     mContainingSession.EnterState(new ShutdownState(mContainingSession));
 }