/// <summary> /// Initialize events after initialize client /// </summary> /// <typeparam name="TAccount">Specified type of account</typeparam> /// <typeparam name="TSession">Specified type of session</typeparam> /// <param name="superNetCoreSocketClient">Instance of client</param> #region InitializeEvents private static void InitializeEvents <TAccount, TSession>( G9SuperNetCoreSocketClient <TAccount, TSession> superNetCoreSocketClient) where TAccount : AClientAccount <TSession>, new() where TSession : AClientSession, new() { // On connected superNetCoreSocketClient.OnConnected += account => EventsQueue.Enqueue(() => AccessToG9Events4Unity.OnConnectedHandler?.Invoke(account)); // On disconnect superNetCoreSocketClient.OnDisconnected += (account, reason) => EventsQueue.Enqueue(() => AccessToG9Events4Unity.OnDisconnectedHandler?.Invoke(account, reason)); // On error superNetCoreSocketClient.OnError += (error, reason) => EventsQueue.Enqueue(() => AccessToG9Events4Unity.OnErrorHandler?.Invoke(error, reason)); // On reconnect superNetCoreSocketClient.OnReconnect += (account, tryReconnectNumber) => EventsQueue.Enqueue( () => AccessToG9Events4Unity.OnReconnectHandler?.Invoke(account, tryReconnectNumber)); // On unhandled command superNetCoreSocketClient.OnUnhandledCommand += (packet, account) => EventsQueue.Enqueue(() => AccessToG9Events4Unity.OnUnhandledCommand?.Invoke(packet, account)); // On unable to connect superNetCoreSocketClient.OnUnableToConnect += () => EventsQueue.Enqueue(() => AccessToG9Events4Unity.OnUnableToConnect?.Invoke()); }
public void Ctor_WithNullName_ShouldThrow() { Assert.That(() => { var eventsQueue = new EventsQueue(null); }, Throws.TypeOf <ArgumentNullException>()); }
public void SetUp() { _eventsQueue = new EventsQueue(_eventsQueueName); var pipelineEvent = new PipelineEvent(new object()); _queuedPipelineEvent = new QueuedPipelineEvent(() => Task.CompletedTask); }
/// <summary> /// Handler send, receive and events in frame for client /// </summary> #region HandleSendReceiveAndEventsInFrame protected void HandleSendReceiveAndEventsInFrame() { while (ReceiveAction.Any()) { ReceiveAction.Dequeue()(true); } while (EventsQueue.Any()) { EventsQueue.Dequeue()(); } }
public void SetUp() { _appServiceProviderMock = new Mock <IRootAppServiceProvider>(MockBehavior.Strict); _eventsContextMock = new Mock <IEventsContext>(MockBehavior.Strict); _pipelineMock = new Mock <IPipeline>(MockBehavior.Strict); _eventsQueueNamesServiceMock = new Mock <IEventsQueueNamesService>(MockBehavior.Strict); _eventsScopeMock = new Mock <IEventsScope>(MockBehavior.Strict); _eventsScopeQueuesFeatureMock = new Mock <IEventsScopeQueuesFeature>(MockBehavior.Strict); _eventsQueue = new EventsQueue(_queueName); _pipelineEvent = MakeNewPipelineEvent(); _eventsQueuesService = new EventsQueuesService(_eventsContextMock.Object, _eventsQueueNamesServiceMock.Object); }
public void Ctor_ShouldSetName() { var eventsQueue = new EventsQueue(_eventsQueueName); Assert.That(eventsQueue, Has.Property(nameof(EventsQueue.Name)).EqualTo(_eventsQueueName)); }