コード例 #1
0
        private void _ProcConnectErrorEvent(LPNetEvent netEvent)
        {
            LPConnectErrorNetEvent connectErrorEvent = null;

            if (LOG_ERROR(netEvent != null))
            {
                goto Exit0;
            }
            connectErrorEvent = (LPConnectErrorNetEvent)netEvent;

            m_NetMessageHandler.OnConnectError(connectErrorEvent.Connector, connectErrorEvent.ErrorNo);
Exit0:
            return;
        }
コード例 #2
0
        internal bool PushConnectorErrorEvent(LPConnector connector, int errorNo)
        {
            bool result = false;
            LPConnectErrorNetEvent connectErrorEvent = null;

            if (LOG_ERROR(connector != null))
            {
                goto Exit0;
            }


            connectErrorEvent = (LPConnectErrorNetEvent)_CreateEvent(ENetEventType.ConnectError);
            if (LOG_ERROR(connectErrorEvent != null))
            {
                goto Exit0;
            }


            connectErrorEvent.Flag      = connector.ID;
            connectErrorEvent.Connector = connector;
            connectErrorEvent.ErrorNo   = errorNo;

            lock (m_EventListLocker[connectErrorEvent.Flag % m_EventListCount])
            {
                result = m_EventLists[connectErrorEvent.Flag % m_EventListCount].PushRear(connectErrorEvent);
                if (LOG_ERROR(result))
                {
                    goto Exit0;
                }
            }

            return(true);

Exit0:
            return(false);
        }
コード例 #3
0
        private LPNetEvent _CreateEvent(ENetEventType eType)
        {
            LPNetEvent netEvent = null;

            switch (eType)
            {
            case ENetEventType.Recv:
            {
                netEvent = new LPRecvNetEvent();
                if (LOG_ERROR(netEvent != null))
                {
                    goto Exit0;
                }
                netEvent.eType = ENetEventType.Recv;
            }
            break;

            case ENetEventType.Terminate:
            {
                netEvent = new LPTerminateNetEvent();
                if (LOG_ERROR(netEvent != null))
                {
                    goto Exit0;
                }
                netEvent.eType = ENetEventType.Terminate;
            }
            break;

            case ENetEventType.Establish:
            {
                netEvent = new LPEstablishNetEvent();
                if (LOG_ERROR(netEvent != null))
                {
                    goto Exit0;
                }
                netEvent.eType = ENetEventType.Establish;
            }
            break;

            case ENetEventType.ConnectError:
            {
                netEvent = new LPConnectErrorNetEvent();
                if (LOG_ERROR(netEvent != null))
                {
                    goto Exit0;
                }
                netEvent.eType = ENetEventType.ConnectError;
            }
            break;

            default:
                if (LOG_ERROR(false))
                {
                    goto Exit0;
                }
                break;
            }

            return(netEvent);

Exit0:
            return(null);
        }