Changed RefreshRouters to set longer timeout
This commit is contained in:
@@ -5,7 +5,7 @@ using System.Net;
|
||||
using System.Text;
|
||||
using TorControlLibrary;
|
||||
using TorControlLibrary.Responses;
|
||||
using Misc.Geolocation.API;
|
||||
//using Misc.Geolocation.API;
|
||||
using System.Configuration;
|
||||
using System.Text.RegularExpressions;
|
||||
using Hermes.Filters;
|
||||
@@ -83,14 +83,6 @@ namespace Hermes
|
||||
}
|
||||
static void InitializeRouterListAndSelector(ICircuitManager circuitManager)
|
||||
{
|
||||
//Get router responses
|
||||
TimeSpan defaultTimeout = ControlConnection.Timeout;
|
||||
ControlConnection.Timeout = TimeSpan.FromMinutes(5);
|
||||
IEnumerable<Router> routers = Router.ParseRouterStatusResponses(ControlConnection.GetAllRouterStatusInfo());
|
||||
routers = RouterFilter.FilterRouters(routers);
|
||||
ControlConnection.Timeout = defaultTimeout;
|
||||
RouterList = new List<Router>(routers);
|
||||
|
||||
String routerSelectorName = ConfigurationManager.AppSettings["RouteSelector"];
|
||||
Type type = Type.GetType(String.Format("Hermes.Selectors.{0}", routerSelectorName));
|
||||
if (type == null)
|
||||
@@ -98,13 +90,17 @@ namespace Hermes
|
||||
|
||||
RouteSelector = (IRouteSelector)Activator.CreateInstance(type);
|
||||
RouteSelector.Initialize(ControlConnection, circuitManager);
|
||||
RouteSelector.SetEffectiveRouterList(RouterList);
|
||||
RefreshActiveRouters();
|
||||
}
|
||||
static void RefreshActiveRouters()
|
||||
{
|
||||
TimeSpan defaultTimeout = ControlConnection.Timeout;
|
||||
ControlConnection.Timeout = TimeSpan.FromMinutes(10);
|
||||
IEnumerable<Router> routers = Router.ParseRouterStatusResponses(ControlConnection.GetAllRouterStatusInfo());
|
||||
routers = RouterFilter.FilterRouters(routers);
|
||||
ControlConnection.Timeout = defaultTimeout;
|
||||
RouterList = new List<Router>(routers);
|
||||
|
||||
RouteSelector.SetEffectiveRouterList(RouterList);
|
||||
}
|
||||
static ICircuitManager GetCircuitManager()
|
||||
|
||||
Reference in New Issue
Block a user