Esempio n. 1
0
        public static GeneralStatistics GetGeneralStatistics(StatisticsQueryFlags queryFlags)
        {
            GeneralStatistics result = default(GeneralStatistics);

            result.QueryFlags = queryFlags;
            if ((byte)(queryFlags & StatisticsQueryFlags.Connections) != 0)
            {
                int num = 0;
                foreach (KeyValuePair <string, List <HTTPConnection> > current in HTTPManager.Connections)
                {
                    if (current.Value != null)
                    {
                        num += current.Value.Count;
                    }
                }
                result.Connections         = num;
                result.ActiveConnections   = HTTPManager.ActiveConnections.Count;
                result.FreeConnections     = HTTPManager.FreeConnections.Count;
                result.RecycledConnections = HTTPManager.RecycledConnections.Count;
                result.RequestsInQueue     = HTTPManager.RequestQueue.Count;
            }
            if ((byte)(queryFlags & StatisticsQueryFlags.Cache) != 0)
            {
                result.CacheEntityCount = HTTPCacheService.GetCacheEntityCount();
                result.CacheSize        = HTTPCacheService.GetCacheSize();
            }
            if ((byte)(queryFlags & StatisticsQueryFlags.Cookies) != 0)
            {
                List <Cookie> all = CookieJar.GetAll();
                result.CookieCount = all.Count;
                uint num2 = 0u;
                for (int i = 0; i < all.Count; i++)
                {
                    num2 += all[i].GuessSize();
                }
                result.CookieJarSize = num2;
            }
            return(result);
        }