Beispiel #1
0
 public void TearDown()
 {
     sender.Dispose();
     input.Dispose();
     dead.Dispose();
     outRead1.Dispose();
     outSend1.Dispose();
     outRead2.Dispose();
     outSend2.Dispose();
 }
        public async Task StopAsync()
        {
            if (_clientRequestReader == null || _clientRequestReader.IsClosed)
            {
                return;
            }

            _clientRequestReader.Dispose();
            _inputReader.Dispose();
            _adminReader.Dispose();
            await Task.WhenAll(_subscriptionTask, _dispatcherTask, _adminTask);

            Queues.TryDelete(_adminQueueFormatName);
        }
        public static LinkedList <GSRequest> Read(GSInstance gsInstance)
        {
            Log(gsInstance, "Reading Persistent Queue");

            LinkedList <GSRequest> persistantQueue = new LinkedList <GSRequest> ();
            String      path = GetPath(gsInstance);
            QueueReader qr   = new QueueReader();

            qr.Initialize(path);

            string content = qr.ReadFully();

            qr.Dispose();

            if (content != null)
            {
                using (StringReader reader = new StringReader(content))
                {
                    string line = null;

                    do
                    {
                        line = reader.ReadLine();
                        if (line != null && line.Trim().Length > 0)
                        {
                            GSRequest request = StringToRequest(gsInstance, line);

                            if (request != null)
                            {
                                Log(gsInstance, "read " + request.JSON);
                                persistantQueue.AddLast(request);
                            }
                        }
                    }while (line != null);
                }
            }

            return(persistantQueue);
        }
Beispiel #4
0
 public Task StopAsync()
 {
     _input.Dispose();
     return(_running);
 }
Beispiel #5
0
 public void Dispose()
 {
     _requestQueue.Dispose();
     _responseQueue.Dispose();
 }
Beispiel #6
0
 /// <summary>Stop listening for acknowledgement messages</summary>
 public Task StopAsync()
 {
     _adminQueue?.Dispose();
     return(_run);
 }
Beispiel #7
0
 public void TearDown()
 {
     dest.Dispose();
     admin.Dispose();
 }
 public Task StopAsync()
 {
     _input?.Dispose(); // this will stop any pending peek operations
     _posionSubQueue?.Dispose();
     return(_running);
 }
Beispiel #9
0
 public virtual Task StopAsync()
 {
     _input?.Dispose();
     _posionQueue?.Dispose();
     return(_running);
 }
Beispiel #10
0
 public Task StopAsync()
 {
     _input?.Dispose();
     _admin?.Dispose();
     return(Task.WhenAll(_mainTask, _adminTask));
 }