public UpdatableEntry(OnSpawnUpdatable proviable)
        {
            _Users         = new Utility.Updater();
            _AddBinders    = new System.Collections.Concurrent.ConcurrentQueue <IBinder>();
            _RemoveBinders = new System.Collections.Concurrent.ConcurrentQueue <IUpdatable>();

            _Updater = new Regulus.Remote.ThreadUpdater(_Update);
            _Updater.Start();
            this._Proviable = proviable;
        }
Beispiel #2
0
 public Service(IBinderProvider entry, IProtocol protocol)
 {
     _Users             = new System.Collections.Generic.List <User>();
     this._Entry        = entry;
     this._Protocol     = protocol;
     _Updater           = new Utility.Updater();
     _Updater.AddEvent += (user) => _Entry.AssignBinder(((User)user).Binder, ((User)user).State);
     _ThreadUpdater     = new ThreadUpdater(_Update);
     _ThreadUpdater.Start();
 }
Beispiel #3
0
        public TestEnv(T entry)
        {
            Entry = entry;
            IProtocol protocol = Regulus.Remote.Protocol.ProtocolProvider.Create(typeof(T2).Assembly).Single();

            _Service = new Regulus.Remote.Standalone.Service(entry, protocol);
            _Agent   = new Regulus.Remote.Ghost.Agent(protocol);
            _Service.Join(_Agent);


            Queryable = _Agent;

            _AgentUpdater = new ThreadUpdater(_Update);
            _AgentUpdater.Start();
        }
Beispiel #4
0
        public void Launch()
        {
            _Enable = true;
            _Updater.Start();
            _Reader.DoneEvent  += _RequestPush;
            _Reader.ErrorEvent += () => { _Enable = false; };
            _Reader.Start(_Peer);

            _Writer.Start(_Peer);



            PackageProtocolSubmit pkg = new PackageProtocolSubmit();

            pkg.VerificationCode = _Protocol.VerificationCode;
            _Push(ServerToClientOpCode.ProtocolSubmit, pkg.ToBuffer(_Serialize));
        }