public ServiceHubJsonRpcConnection( object callbackTarget, Stream serviceStream, Stream snapshotStream, CancellationToken cancellationToken) : base(cancellationToken) { _serviceClient = new ServiceJsonRpcClient(serviceStream, callbackTarget, cancellationToken); _snapshotClient = new SnapshotJsonRpcClient(this, snapshotStream, cancellationToken); // dispose session when cancellation has raised _cancellationRegistration = CancellationToken.Register(Dispose); }
public JsonRpcSession( ChecksumScope snapshot, Stream snapshotStream, object callbackTarget, Stream serviceStream, CancellationToken cancellationToken) : base(snapshot, cancellationToken) { _snapshotClient = new SnapshotJsonRpcClient(this, snapshotStream); _serviceClient = new ServiceJsonRpcClient(serviceStream, callbackTarget); // dispose session when cancellation has raised _cancellationRegistration = CancellationToken.Register(Dispose); }
private JsonRpcSession( PinnedRemotableDataScope snapshot, Stream snapshotStream, object callbackTarget, Stream serviceStream, CancellationToken cancellationToken) : base(snapshot, cancellationToken) { // get session id _currentSessionId = Interlocked.Increment(ref s_sessionId); _snapshotClient = new SnapshotJsonRpcClient(this, snapshotStream, cancellationToken); _serviceClient = new ServiceJsonRpcClient(serviceStream, callbackTarget, cancellationToken); // dispose session when cancellation has raised _cancellationRegistration = CancellationToken.Register(Dispose); }