Beispiel #1
0
 private static bool CanProcessFromQueue()
 {
     for (int i = 0; i < HTTPManager.RequestQueue.Count; i++)
     {
         if (HTTPManager.FindOrCreateFreeConnection(HTTPManager.RequestQueue[i]) != null)
         {
             return(true);
         }
     }
     return(false);
 }
Beispiel #2
0
        private static void SendRequestImpl(HTTPRequest request)
        {
            HTTPConnection conn = HTTPManager.FindOrCreateFreeConnection(request);

            if (conn != null)
            {
                if (HTTPManager.ActiveConnections.Find((HTTPConnection c) => c == conn) == null)
                {
                    HTTPManager.ActiveConnections.Add(conn);
                }
                HTTPManager.FreeConnections.Remove(conn);
                request.State = HTTPRequestStates.Processing;
                request.Prepare();
                conn.Process(request);
            }
            else
            {
                request.State = HTTPRequestStates.Queued;
                HTTPManager.RequestQueue.Add(request);
            }
        }