void IListener.Call(params object[] args)
            {
                var to = (Transport)args[0];

                if (_transport[0] != null && to.Name != _transport[0].Name)
                {
                    var log = LogManager.GetLogger(Global.CallerName());

                    log.Info(string.Format("'{0}' works - aborting '{1}'", to.Name, _transport[0].Name));
                    _freezeTransport.Call();
                }
            }
        void IListener.Call(params object[] args)
        {
            var err = args[0];
            PureEngineIOException error;

            if (err is Exception exception)
            {
                error = new PureEngineIOException("probe error", exception);
            }
            else if (err is string s)
            {
                error = new PureEngineIOException("probe error: " + s);
            }
            else
            {
                error = new PureEngineIOException("probe error");
            }
            error.Transport = Transport[0].Name;

            FreezeTransport.Call();

            Logger.Log(new Exception($"probe transport \"{error.Transport}\" failed because of error: {err}"));
            _socket.Emit(PureEngineIoSocket.EVENT_UPGRADE_ERROR, error);
        }
예제 #3
0
 void IListener.Call(params object[] args)
 {
     _onError.Call("socket closed");
 }
예제 #4
0
 void IListener.Call(params object[] args)
 {
     _onError.Call("transport closed");
 }
예제 #5
0
 void IListener.Call(params object[] args)
 {
     _emitter.Off(_eventString, this);
     _fn.Call(args);
 }