public SyncIOClient(TransportProtocol protocol, Packager packager) { Protocol = protocol; _packager = packager; _callbacks = new CallbackManager <SyncIOClient>(); _remoteFunctions = new RemoteFunctionManager(); _callbacks.SetHandler <HandshakePacket>((c, p) => { _handshakeComplete = p.Success; _connection.SetID(p.Id); _handshakeEvent?.Set(); _handshakeEvent?.Dispose(); _handshakeEvent = null; OnHandshake?.Invoke(this, ID, _handshakeComplete); _callbacks.RemoveHandler <HandshakePacket>(); }); _callbacks.SetHandler <RemoteCallResponse>((c, p) => _remoteFunctions.RaiseFunction(p)); }
public SyncIOClient(TransportProtocal _protocal, Packager _packager) { Protocal = _protocal; Packager = _packager; Callbacks = new CallbackManager <SyncIOClient>(); RemoteFunctions = new RemoteFunctionManager(); Callbacks.SetHandler <HandshakePacket>((c, p) => { HandshakeComplete = p.Success; Connection.SetID(p.ID); HandshakeEvent?.Set(); HandshakeEvent?.Dispose(); HandshakeEvent = null; OnHandshake?.Invoke(this, ID, HandshakeComplete); Callbacks.RemoveHandler <HandshakePacket>(); }); Callbacks.SetHandler <RemoteCallResponse>((c, p) => { RemoteFunctions.RaiseFunction(p); }); }