public WebSocketConnection( WebSocketTransport transport, SubscriptionServer subscriptionServer) { _transport = transport; _server = subscriptionServer; }
public WebSocketConnection CreateConnection(WebSocket socket, string tenantId, string connectionId) { _logger.LogDebug("Creating server for connection {connectionId}", connectionId); var transport = new WebSocketTransport(socket, _documentWriter); var manager = new SubscriptionManager(_executer, _loggerFactory); var server = new SubscriptionServer( transport, manager, _messageListeners.Union(new [] { new OspMessageListener(_ospService, tenantId) }), _loggerFactory.CreateLogger <SubscriptionServer>() ); return(new WebSocketConnection(transport, server)); }
public WebSocketConnection CreateConnection(WebSocket socket, string connectionId) { _logger.LogDebug("Creating server for connection {connectionId}", connectionId); var transport = new WebSocketTransport(socket, _serializer); var manager = new SubscriptionManager(_executer, _loggerFactory, _serviceScopeFactory); var server = new SubscriptionServer( transport, manager, _messageListeners, _loggerFactory.CreateLogger <SubscriptionServer>() ); return(new WebSocketConnection(transport, server)); }
public async Task Connect() { _logger.LogInformation("Creating server for connection {connectionId}", ConnectionId); var transport = new WebSocketTransport(_socket); var server = new SubscriptionServer( transport, _subscriptionManager, _messageListeners, _loggerFactory.CreateLogger <SubscriptionServer>()); await server.OnConnect(); await server.OnDisconnect(); await transport.CloseAsync(); }
public ChatSpec() { _chat = new Chat(); _transport = new TestableSubscriptionTransport(); _transportReader = _transport.Reader as TestableReader; _transportWriter = _transport.Writer as TestableWriter; _subscriptions = new SubscriptionManager( new SchemaDocumentExecuter(new ChatSchema(_chat, new DefaultServiceProvider())), new NullLoggerFactory(), NoopServiceScopeFactory.Instance); _server = new SubscriptionServer( _transport, _subscriptions, new[] { new ProtocolMessageListener(new NullLogger <ProtocolMessageListener>(), new GraphQLSerializer()) }, new NullLogger <SubscriptionServer>() ); }
public ChatSpec() { _chat = new Chat(); _transport = new TestableSubscriptionTransport(); _transportReader = _transport.Reader as TestableReader; _transportWriter = _transport.Writer as TestableWriter; _subscriptions = new SubscriptionManager( new DefaultSchemaExecuter <ChatSchema>( new DocumentExecuter(), new ChatSchema(_chat)), new NullLoggerFactory()); _server = new SubscriptionServer( _transport, _subscriptions, Enumerable.Empty <IOperationMessageListener>(), new NullLogger <SubscriptionServer>() ); }
public SubscriptionServerFacts() { _messageListener = Substitute.For <IOperationMessageListener>(); _transport = new TestableSubscriptionTransport(); _transportReader = _transport.Reader as TestableReader; _transportWriter = _transport.Writer as TestableWriter; _documentExecuter = Substitute.For <IGraphQLExecuter>(); _documentExecuter.ExecuteAsync(null, null, null).ReturnsForAnyArgs( new SubscriptionExecutionResult { Streams = new Dictionary <string, IObservable <ExecutionResult> > { { "1", Substitute.For <IObservable <ExecutionResult> >() } } }); _subscriptionManager = new SubscriptionManager(_documentExecuter, new NullLoggerFactory()); _sut = new SubscriptionServer( _transport, _subscriptionManager, new[] { _messageListener }, new NullLogger <SubscriptionServer>()); }
public ProtocolHandlerFacts() { _transport = new TestableSubscriptionTransport(); _transportReader = _transport.Reader as TestableReader; _transportWriter = _transport.Writer as TestableWriter; _documentExecuter = Substitute.For <IDocumentExecuter>(); _documentExecuter.ExecuteAsync(null).ReturnsForAnyArgs( new ExecutionResult { Streams = new Dictionary <string, IObservable <ExecutionResult> > { { "1", Substitute.For <IObservable <ExecutionResult> >() } } }); _subscriptionManager = new SubscriptionManager(_documentExecuter, new NullLoggerFactory(), NoopServiceScopeFactory.Instance); _sut = new ProtocolMessageListener(new NullLogger <ProtocolMessageListener>(), new GraphQLSerializer()); _server = new SubscriptionServer( _transport, _subscriptionManager, new[] { _sut }, new NullLogger <SubscriptionServer>()); }
public Bus(HostOptions hostOptions, IMessageTransport messageTransport, IHandlerFactory handlerFactory) { if (hostOptions == null) { throw new ArgumentNullException(nameof(hostOptions)); } if (messageTransport == null) { throw new ArgumentNullException(nameof(messageTransport)); } if (handlerFactory == null) { throw new ArgumentNullException(nameof(handlerFactory)); } _cancelBusStart = new CancellationTokenSource(); // Create components for the bus from config provided _subscriptionServer = new SubscriptionServer(hostOptions.AppName, messageTransport, handlerFactory); _publisher = new Publisher(messageTransport); _startedServer = Task.CompletedTask; }
public ChatSpec() { _chat = new Chat(); _transport = new TestableSubscriptionTransport(); _transportReader = _transport.Reader as TestableReader; _transportWriter = _transport.Writer as TestableWriter; _subscriptions = new SubscriptionManager( new DefaultGraphQLExecuter <ChatSchema>( new ChatSchema(_chat), new DocumentExecuter(), Options.Create(new GraphQLOptions()), Enumerable.Empty <IDocumentExecutionListener>(), Enumerable.Empty <IValidationRule>() ), new NullLoggerFactory()); _server = new SubscriptionServer( _transport, _subscriptions, new [] { new ProtocolMessageListener(new NullLogger <ProtocolMessageListener>()) }, new NullLogger <SubscriptionServer>() ); }