Пример #1
0
 public RequestData(AiController controller, float minRange, float maxRange, RequestCallbackDelegate callback)
 {
     this.controller = controller;
     this.minRange   = minRange;
     this.maxRange   = maxRange;
     this.callback   = callback;
 }
Пример #2
0
 public MessageRequest(RequestCallbackDelegate <T> callback, Guid Guid, RequestCallbackErrorDelegate errorCallback)
 {
     this.Callback              = callback;
     this.ErrorCallback         = errorCallback;
     this.Guid                  = Guid;
     this.TimeoutTimer          = new Timer(TIMEOUT);
     this.TimeoutTimer.Elapsed += this.TimeoutTimer_Elapsed;
     this.TimeoutTimer.Start();
 }
Пример #3
0
 public IPCRequest(IPCMessage requestMessage, Guid guid, RequestCallbackDelegate <T> callback, RequestCallbackErrorDelegate errorCallback, RequestCallbackDefaultDelegate defaultCallback, TimerEntry timeoutTimer)
 {
     this.RequestMessage  = requestMessage;
     this.Guid            = guid;
     this.Callback        = callback;
     this.ErrorCallback   = errorCallback;
     this.DefaultCallback = defaultCallback;
     this.TimeoutTimer    = timeoutTimer;
 }
Пример #4
0
 public IPCRequest(IPCMessage requestMessage, Guid guid, RequestCallbackDelegate <T> callback, RequestCallbackErrorDelegate errorCallback,
                   RequestCallbackDefaultDelegate defaultCallback, TimedTimerEntry timeoutTimer)
 {
     RequestMessage  = requestMessage;
     Guid            = guid;
     Callback        = callback;
     ErrorCallback   = errorCallback;
     DefaultCallback = defaultCallback;
     TimeoutTimer    = timeoutTimer;
 }
Пример #5
0
    public void Request(AiController controller, float minRange, float maxRange, RequestCallbackDelegate callback)
    {
        bool result = false;

        foreach (RequestData data in requestQueue)
        {
            if (data.controller == controller)
            {
                data.Update(minRange, maxRange);
                result = true;
            }
        }

        if (!result)
        {
            requestQueue.Enqueue(new RequestData(controller, minRange, maxRange, callback));
        }
    }
Пример #6
0
        public void SendRequest <T>(IPCMessage message, RequestCallbackDelegate <T> callback, RequestCallbackErrorDelegate errorCallback, RequestCallbackDefaultDelegate defaultCallback, int timeout) where T : IPCMessage
        {
            Guid guid = Guid.NewGuid();

            message.RequestGuid = guid;
            IPCRequest <T> request      = null;
            TimerEntry     timeoutTimer = this.RegisterTimer(delegate(int param0)
            {
                this.RequestTimedOut(request);
            }, timeout);

            request = new IPCRequest <T>(message, guid, callback, errorCallback, defaultCallback, timeoutTimer);
            lock (this.m_requests)
            {
                this.m_requests.Add(guid, request);
            }
            this.Send(message);
        }
Пример #7
0
        public void SendRequest <T>(IPCMessage message, RequestCallbackDelegate <T> callback, RequestCallbackErrorDelegate errorCallback, RequestCallbackDefaultDelegate defaultCallback,
                                    int timeout) where T : IPCMessage
        {
            var guid = Guid.NewGuid();

            message.RequestGuid = guid;

            IPCRequest <T> request = null;

            if (timeout > 0)
            {
                var timer = RegisterTimer(delegate { RequestTimedOut(request); }, timeout);
                request = new IPCRequest <T>(message, guid, callback, errorCallback, defaultCallback, timer);
            }
            else
            {
                request = new IPCRequest <T>(message, guid, callback, errorCallback, defaultCallback, null);
            }

            lock (m_requests)
                m_requests.Add(guid, request);

            Send(message);
        }
Пример #8
0
 public void SendRequest <T>(IPCMessage message, RequestCallbackDelegate <T> callback) where T : IPCMessage
 {
     this.SendRequest <T>(message, callback, new RequestCallbackErrorDelegate(this.DefaultRequestErrorCallback), this.RequestTimeout);
 }
Пример #9
0
 public void SendRequest <T>(IPCMessage message, RequestCallbackDelegate <T> callback, RequestCallbackErrorDelegate errorCallback) where T : IPCMessage
 {
     this.SendRequest <T>(message, callback, errorCallback, this.RequestTimeout * 1000);
 }
Пример #10
0
 public void SendRequest <T>(IPCMessage message, RequestCallbackDelegate <T> callback, RequestCallbackErrorDelegate errorCallback, int timeout) where T : IPCMessage
 {
     this.SendRequest <T>(message, callback, errorCallback, new RequestCallbackDefaultDelegate(this.DefaultRequestUnattemptCallback), timeout);
 }
Пример #11
0
 public void SendRequest(IPCMessage message, RequestCallbackDelegate <CommonOKMessage> callback)
 {
     this.SendRequest <CommonOKMessage>(message, callback, new RequestCallbackErrorDelegate(this.DefaultRequestErrorCallback), this.RequestTimeout);
 }
Пример #12
0
 public void SendRequest(IPCMessage message, RequestCallbackDelegate <CommonOKMessage> callback, RequestCallbackErrorDelegate errorCallback,
                         RequestCallbackDefaultDelegate defaultCallback)
 {
     SendRequest(message, callback, errorCallback, defaultCallback, RequestTimeout * 1000);
 }
Пример #13
0
 /// <summary>
 /// Envoit une request avec un handler destinataire
 /// </summary>
 /// <typeparam name="T"></typeparam>
 /// <param name="message"></param>
 /// <param name="requestCallback"></param>
 /// <param name="isRequest"></param>
 public void Send <T>(TransitionMessage message, RequestCallbackDelegate <T> requestCallback, RequestCallbackErrorDelegate errorCallback) where T : TransitionMessage
 {
     MessagePool.SendRequest <T>(this, message, requestCallback, errorCallback);
 }
Пример #14
0
 public void SendRequest(IPCMessage message, RequestCallbackDelegate <CommonOKMessage> callback, RequestCallbackErrorDelegate errorCallback,
                         int timeout)
 {
     SendRequest(message, callback, errorCallback, DefaultRequestUnexpectedCallback, timeout);
 }
Пример #15
0
 public void SendRequest(IPCMessage message, RequestCallbackDelegate <CommonOKMessage> callback, RequestCallbackErrorDelegate errorCallback, int timeout)
 {
     this.SendRequest <CommonOKMessage>(message, callback, errorCallback, new RequestCallbackDefaultDelegate(this.DefaultRequestUnattemptCallback), timeout);
 }
Пример #16
0
 public void SendRequest(IPCMessage message, RequestCallbackDelegate <CommonOKMessage> callback)
 {
     SendRequest <CommonOKMessage>(message, callback, DefaultRequestErrorCallback, RequestTimeout * 1000);
 }
Пример #17
0
 public static void SendRequest <T>(TransitionClient client, TransitionMessage message, RequestCallbackDelegate <T> requestCallback, RequestCallbackErrorDelegate errorCallback = null) where T : TransitionMessage
 {
     lock (m_requests)
     {
         var messageRequest = new MessageRequest <T>(requestCallback, Guid.NewGuid(), errorCallback);
         m_requests.Add(messageRequest);
         client.Send(messageRequest.Guid, message, true);
     }
 }
Пример #18
0
 public void SendRequest <T>(IPCMessage message, RequestCallbackDelegate <T> callback, RequestCallbackErrorDelegate errorCallback,
                             int timeout) where T : IPCMessage
 {
     SendRequest(message, callback, errorCallback, DefaultRequestUnexpectedCallback, timeout);
 }
Пример #19
0
 public void SendRequest(IPCMessage message, RequestCallbackDelegate <CommonOKMessage> callback, RequestCallbackErrorDelegate errorCallback)
 {
     this.SendRequest <CommonOKMessage>(message, callback, errorCallback, this.RequestTimeout * 1000);
 }
Пример #20
0
 public void SendRequest <T>(IPCMessage message, RequestCallbackDelegate <T> callback)
     where T : IPCMessage
 {
     SendRequest(message, callback, DefaultRequestErrorCallback, RequestTimeout * 1000);
 }