Beispiel #1
0
        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);
            }
Beispiel #3
0
        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);
        }