Ejemplo n.º 1
0
        void SubSystemConnect()
        {
            EB.Debug.Log("SparxHub: SubSystemConnect");

            State = HubState.Connecting;
            for (int i = 0, cnt = _subsystems.Count; i < cnt; ++i)
            {
                SubSystem system = _subsystems[i];
                system.State = SubSystemState.Connecting;
                system.Connect();
            }
        }
Ejemplo n.º 2
0
        void SubSystemDisconnect(bool isLogout)
        {
            EB.Debug.Log("SparxHub: SubSystemDisconnect");

            for (int i = _subsystems.Count - 1; i >= 0; --i)
            {
                SubSystem system = _subsystems[i];
                system.Disconnect(isLogout);
                system.State = SubSystemState.Disconnected;
            }

            ApiEndPoint.StopKeepAlive();
        }
Ejemplo n.º 3
0
        void SubSystemConnecting()
        {
            var allConnected = true;

            for (int i = 0, cnt = _subsystems.Count; i < cnt; ++i)
            {
                SubSystem system = _subsystems[i];
                switch (system.State)
                {
                case SubSystemState.Error:
                {
                    FatalError(Localizer.GetString("ID_SPARX_ERROR_UNKNOWN"));
                    return;
                }

                case SubSystemState.Connecting:
                case SubSystemState.Disconnected:
                {
                    allConnected = false;
                    return;
                }

                case SubSystemState.Connected:
                {
                }
                break;
                }
            }

            if (allConnected)
            {
                EB.Debug.Log("SparxHub: SubSystemConnected");
                State = HubState.Connected;

                ApiEndPoint.StartKeepAlive();

                if (Config.LoginConfig.Listener != null)
                {
                    Config.LoginConfig.Listener.OnLoggedIn();
                }

                for (int i = 0, cnt = _managers.Count; i < cnt; ++i)
                {
                    var manager = _managers[i];
                    EB.Debug.Log("manager.OnLoggedIn()===>{0}", manager.GetType().FullName);
                    manager.OnLoggedIn();
                }
            }
        }