Exemplo n.º 1
0
        public SyncService(IDomainWebsocketClient client)
        {
            // -- websockets
            this.websocketClient                    = client;
            this.websocketClient.OnMessage         += HandleMessage;
            this.websocketClient.OnConnectionError += OnConnectionError;

            // -- push/poll
            this.push = new PushService(this.websocketClient);
            this.push.OnSendFailed += PushOnOnSendFailed;
            this.poll = new PollService();

            // -- state machine
            this.stateMachine = new StateMachine <State, Trigger>(State.Idle, FiringMode.Queued);
            this.stateMachine.OnTransitioned(OnTransitioned);
            this.stateMachine.OnUnhandledTrigger((state, trigger) =>
            {
                Logger.Debug($"Unhandled trigger: {trigger} [{state}]");
            });

            this.VersionFetcher = new HttpVersionFetcher();

            InitStateMachine();
            this.scheduleStopWatch.Start();
        }
Exemplo n.º 2
0
 public PushService(IDomainWebsocketClient client)
 {
     this.client = client;
 }