Esempio n. 1
0
 public Agent(IProtocol protocol, Regulus.Network.IConnectProviderable client)
 {
     _Serializer     = protocol.GetSerialize();
     _Machine        = new StageMachine();
     _Core           = new AgentCore(protocol);
     connectproivder = client;
 }
 public AgentLiveController(AgentCore agentSimulator, ProductionDomainContext context, ResultContext resultCtx, IMessageHub messageHub)
 {
     _agentSimulator = agentSimulator;
     _resultCtx      = resultCtx;
     _context        = context;
     _messageHub     = messageHub;
 }
Esempio n. 3
0
 public CommandBridge(AgentCore ghost_provider, GhostRequest ghost_request)
 {
     RequestQueue  = this;
     ResponseQueue = this;
     _AgentCore    = ghost_provider;
     _GhostRequest = ghost_request;
 }
Esempio n. 4
0
            public OnlineStage(IPeer peer, AgentCore core, ISerializer serializer)
            {
                _Core = core;

                _Peer     = peer;
                _Reader   = new PackageReader <ResponsePackage>(serializer);
                _Writer   = new PackageWriter <RequestPackage>(serializer);
                _Sends    = new Collection.Queue <RequestPackage>();
                _Receives = new Collection.Queue <ResponsePackage>();
            }
Esempio n. 5
0
            public OnlineStage(Socket socket, AgentCore core)
            {
                _Core = core;

                _Socket = socket;
                _Reader = new PackageReader<ResponsePackage>();
                _Writer = new PackageWriter<RequestPackage>(OnlineStage.LowFps);
                _Sends = new Collection.Queue<RequestPackage>();
                _Receives = new Collection.Queue<ResponsePackage>();
            }
Esempio n. 6
0
        public Agent(IProtocol protocol)
        {
            var protocol1 = protocol;

            _GhostRequest = new GhostRequest(protocol.GetSerialize());
            _AgentCore    = new AgentCore(protocol1);

            _CommandBridge = new CommandBridge(_AgentCore, _GhostRequest);
            _SoulProvider  = new SoulProvider(_CommandBridge.RequestQueue, _CommandBridge.ResponseQueue, protocol1);

            Binder       = _SoulProvider;
            GhostQuerier = this;
            _Launch();
        }
Esempio n. 7
0
            private void _Process(AgentCore core)
            {
                lock (OnlineStage._LockResponse)
                {
                    var pkgs = _Receives.DequeueAll();
                    OnlineStage.ResponseQueueCount -= pkgs.Length;

                    foreach (var pkg in pkgs)
                    {
                        core.OnResponse(pkg.Code, pkg.Data);
                    }
                }


                var sends = _SendsPop();

                if (sends.Length > 0)
                {
                    _Writer.Push(sends);
                }
            }
Esempio n. 8
0
 public AgentLiveController(AgentCore agentSimulator, ProductionDomainContext context, ResultContext resultCtx)
 {
     _agentSimulator = agentSimulator;
     _resultCtx      = resultCtx;
     _context        = context;
 }
Esempio n. 9
0
 public ConfigurationItemsController(AgentCore agentSimulator, ResultContext context)
 {
     _context        = context;
     _agentSimulator = agentSimulator;
 }
Esempio n. 10
0
 public AgentLiveController(AgentCore agentSimulator, ProductionDomainContext context)
 {
     _agentSimulator = agentSimulator;
     _context        = context;
 }
Esempio n. 11
0
 public Agent(IProtocol protocol)
 {
     _GhostRequest = new GhostRequest(protocol.GetSerialize());
     _Agent        = new AgentCore(protocol);
     _SoulProvider = new SoulProvider(this, this, protocol);
 }
Esempio n. 12
0
            private void _Process(AgentCore core)
            {
                lock(OnlineStage._LockResponse)
                {
                    var pkgs = _Receives.DequeueAll();
                    OnlineStage.ResponseQueueCount -= pkgs.Length;

                    foreach(var pkg in pkgs)
                    {
                        core.OnResponse(pkg.Code, pkg.Data);
                    }
                }
            }