public void ConnectToDownNode(CacheNode node, TimeSpan delay) { var uplink = node.GetUpLink(); var downlink = new NodeDownlink(); uplink.Subscribers.Add(downlink); _container.ComposeExportedValue(downlink); _getter = new Downgetter(node._container, delay); _poster = new Downposter(node._container, delay); _querier = new LinkQuery(node._container, delay); }
private CompositionContainer CreateContainerNode(string name, Assembly ass, Store store) { Name = name; var catalog = new AggregateCatalog( new AssemblyCatalog(typeof(ITypedPool).Assembly), new TypeCatalog(typeof(DefaultSecProvider), typeof(SecContextFactor)), new AssemblyCatalog(ass), new TypeCatalog(typeof(SQLLogger)) ); var container = new CompositionContainer(catalog); container.ComposeExportedValue(store); _getter = new Factory(); _poster = new Writer(); _querier = new StoreQuerier(); return(container); }
internal static Query CreateFromFactory(Guid key,string resName, string nmspace, ParameterNames parameters,IResourceQuerierFactory querierFactory) { var query = new Query(new QueryInfo(key, new ParameterNames(parameters), nmspace,null), Enumerable.Repeat(typeof(string),parameters.Count()).ToArray(), typeof(IEnumerable<Guid>)) { _orderedArguments = parameters.ToArray(), _queryMethod = k=> querierFactory.CreateQuerier(resName, nmspace, parameters.ToArray())(k), }; return query; }
internal static Query CreateFromFactory(Guid key, string resName, string nmspace, ParameterNames parameters, IResourceQuerierFactory querierFactory) { var query = new Query(new QueryInfo(key, new ParameterNames(parameters), nmspace, null), Enumerable.Repeat(typeof(string), parameters.Count()).ToArray(), typeof(IEnumerable <Guid>)) { _orderedArguments = parameters.ToArray(), _queryMethod = k => querierFactory.CreateQuerier(resName, nmspace, parameters.ToArray())(k), }; return(query); }