public CachingModule() { Log = ServiceLocator.Locator.Resolve<ILogger>(); _coroutinesManager = ServiceLocator.Locator.Resolve<ICoroutinesManager>(); var main = ServiceLocator.Locator.Resolve<IMain>(); var timeout = TimeSpan.FromHours(1); _nodeCache = new NodeCache(_coroutinesManager, timeout); _nodeCacheCoroutineThread = new NodeCacheCoroutine(_nodeCache); _coroutinesManager.StartCoroutine(_nodeCacheCoroutineThread); SetParameter(HttpParameters.CacheInstance, _nodeCache); main.RegisterCommand("nodecache.groups", new CommandDefinition((Action)ShowGroups)); main.RegisterCommand("nodecache.items", new CommandDefinition((Action<string>)ShowItems,typeof(string))); }
public NodeCache(ICoroutinesManager coroutinesManager, TimeSpan timeout) { Log = ServiceLocator.Locator.Resolve<ILogger>(); _coroutinesManager = coroutinesManager; _cacheMessages = new ConcurrentQueue<object>(); _groups = new ConcurrentDictionary<string, CacheGroup>(StringComparer.OrdinalIgnoreCase); _groups.TryAdd(string.Empty, new CacheGroup(new CacheGroupDefinition { Id = string.Empty, Capped = -1, ExpireAfter = timeout, RollingExpiration = true })); }
public void Initialize(string[] args, string helpMessage) { AssemblyDirectory = AssembliesManager.GetAssemblyDirectory(); _clp = new CommandLineParser(args, helpMessage ?? string.Empty); _configPath = _clp.GetOrDefault("config", Path.Combine(AssemblyDirectory, "config.json")); _binPath = _clp.GetOrDefault("tempBin", Path.Combine(AssemblyDirectory, "bin")); _binFallBackPath = AssemblyDirectory; RunnerFactory.Initialize(); _coroutinesManager = RunnerFactory.Create(); _parser = new NodeCsParser(_clp, _configPath, _coroutinesManager); NodeRoot.Initialize(this); }
public NodeCsParser(CommandLineParser clp, string configPath, ICoroutinesManager coroutinesManager) { _clp = clp; _configPath = configPath; }
public static void InitializeFakeMain(string asmDir, ICoroutinesManager coroutinesManager) { var main = new FakeMain(asmDir, coroutinesManager); NodeCs.Shared.NodeRoot.Initialize(main); }
public FakeMain(string assemblyDirectory, ICoroutinesManager coroutinesManager) { AssemblyDirectory = assemblyDirectory; CoroutinesManager = coroutinesManager; }
public ServiceConnectionProvider(ICoroutinesManager coroutinesManager, IServerConnectorProvider serverConnectorProvider, Action <IOutboundServerPeer> onConnected) { this.coroutinesManager = coroutinesManager; this.serverConnectorProvider = serverConnectorProvider; this.onConnected = onConnected; }