public override void Transfer( IntSeqKey path, bool transferChildContexts, AgentInstanceTransferServices xfer) { var factory = KeyedFactory; ContextControllerFilterEntry[] filters = keyedSvc.MgmtGetFilters(path); for (int i = 0; i < factory.KeyedSpec.Items.Length; i++) { ContextControllerDetailKeyedItem item = factory.KeyedSpec.Items[i]; filters[i].Transfer(item.FilterSpecActivatable, xfer); } if (factory.KeyedSpec.OptionalTermination != null) { keyedSvc.KeyVisitEntry(path, entry => entry.TerminationCondition.Transfer(xfer)); } if (!transferChildContexts) { return; } keyedSvc.KeyVisit( path, ( partitionKey, subpathId) => { realization.TransferRecursive(path, subpathId, this, xfer); }); }
public override void Transfer( IntSeqKey path, bool transferChildContexts, AgentInstanceTransferServices xfer) { ContextControllerCondition start = initTermSvc.MgmtGetStartCondition(path); start?.Transfer(xfer); initTermSvc.EndVisitConditions( path, ( condition, subPathId) => { condition?.Transfer(xfer); }); if (transferChildContexts) { VisitPartitions( path, ( partitionKey, subpathOrCPIds) => { realization.TransferRecursive(path, subpathOrCPIds, this, xfer); }); } }
public void Transfer( FilterSpecActivatable activatable, AgentInstanceTransferServices xfer) { xfer.AgentInstanceContext.FilterService.Remove(filterHandle, activatable.FilterForEventType, filterValueSet); xfer.TargetFilterService.Add(activatable.FilterForEventType, filterValueSet, filterHandle); }
public void Transfer(AgentInstanceTransferServices services) { if (_filterHandle != null) { var filterValues = ComputeFilterValues(services.AgentInstanceContext); if (filterValues != null) { services.AgentInstanceContext.FilterService.Remove(_filterHandle, _filterSpecActivatable.FilterForEventType, filterValues); services.TargetFilterService.Add(_filterSpecActivatable.FilterForEventType, filterValues, _filterHandle); } } }
public override void Transfer(AgentInstanceTransferServices services) { if (_handle == null) { return; } var filterSpec = _evalFilterNode.FactoryNode.FilterSpec; var filterValues = filterSpec.GetValueSet( _beginState, _evalFilterNode.AddendumFilters, services.AgentInstanceContext, services.AgentInstanceContext.StatementContextFilterEvalEnv); if (filterValues != null) { services.AgentInstanceContext.FilterService.Remove(_handle, filterSpec.FilterForEventType, filterValues); services.TargetFilterService.Add(filterSpec.FilterForEventType, filterValues, _handle); } }
public override void Transfer(IntSeqKey path, bool transferChildContexts, AgentInstanceTransferServices xfer) { if (!factory.HashSpec.IsPreallocate) { ContextControllerFilterEntry[] filterEntries = hashSvc.MgmtGetFilters(path); ContextControllerDetailHashItem[] hashItems = factory.HashSpec.Items; for (int i = 0; i < hashItems.Length; i++) { filterEntries[i].Transfer(hashItems[i].FilterSpecActivatable, xfer); } } if (!transferChildContexts) { return; } VisitPartitions(path, (hash, subpathOrCPId) => realization.TransferRecursive(path, subpathOrCPId, this, xfer)); }
private void ProcessUnstage(StatementResourceHolder holder) { AgentInstanceTransferServices xfer = new AgentInstanceTransferServices( holder.AgentInstanceContext, _servicesContext.FilterService, _servicesContext.SchedulingService, _servicesContext.InternalEventRouter); holder.AgentInstanceStopCallback.Transfer(xfer); if (holder.ContextManagerRealization != null) { holder.ContextManagerRealization.Transfer(xfer); } holder.AgentInstanceContext.EpStatementAgentInstanceHandle.StatementFilterVersion.StmtFilterVersion = _servicesContext.FilterService.FiltersVersion; }
public override void Transfer( IntSeqKey path, bool transferChildContexts, AgentInstanceTransferServices xfer) { if (!transferChildContexts) { // nothing to do return; } int[] ids = CategorySvc.MgmtGetSubpathOrCPIds(path); if (ids != null) { foreach (int id in ids) { realization.TransferRecursive(path, id, this, xfer); } } }
public void TransferRecursive( IntSeqKey controllerPath, int subpathOrAgentInstanceId, ContextController originator, AgentInstanceTransferServices xfer) { if (controllerPath.Length != originator.Factory.FactoryEnv.NestingLevel - 1) { throw new IllegalStateException("Unrecognized controller path"); } var nestingLevel = originator.Factory.FactoryEnv.NestingLevel; // starts at 1 for root if (nestingLevel >= ContextControllers.Length) { return; } var childController = ContextControllers[nestingLevel]; var subPath = controllerPath.AddToEnd(subpathOrAgentInstanceId); childController.Transfer(subPath, nestingLevel < ContextControllers.Length - 1, xfer); }
public void Transfer(AgentInstanceTransferServices services) { // no action }
public abstract void Transfer( IntSeqKey path, bool transferChildContexts, AgentInstanceTransferServices xfer);
public virtual void Transfer( IntSeqKey path, bool transferChildContexts, AgentInstanceTransferServices xfer) { }
public void Transfer(AgentInstanceTransferServices xfer) { ContextControllers[0].Transfer(IntSeqKeyRoot.INSTANCE, ContextControllers.Length > 1, xfer); }
public virtual void Transfer(AgentInstanceTransferServices services) { // no action is the default }
public EvalStateNodeVisitorStageTransfer(AgentInstanceTransferServices services) { this.services = services; }
public void Transfer(AgentInstanceTransferServices xfer) { patternStopCallback.Accept(new EvalStateNodeVisitorStageTransfer(xfer)); }
public void Transfer(AgentInstanceTransferServices services) { }
public void Transfer(AgentInstanceTransferServices services) { _rootState.Accept(new EvalStateNodeVisitorStageTransfer(services)); }