public ContextControllerInitTermBase( ContextControllerInitTermFactory factory, ContextManagerRealization realization) : base(factory, realization) { initTermSvc = ContextControllerInitTermUtil.GetService(factory); }
internal IList<AgentInstance> InstantiateAndActivateEndCondition( IntSeqKey controllerPath, EventBean optionalTriggeringEvent, IDictionary<string, object> optionalTriggeringPattern, IDictionary<string, object> optionalPatternForInclusiveEval, ContextControllerConditionNonHA startCondition) { var subpathId = initTermSvc.MgmtUpdIncSubpath(controllerPath); var endConditionPath = controllerPath.AddToEnd(subpathId); var partitionKeys = initTermSvc.MgmtGetParentPartitionKeys(controllerPath); var endCondition = ContextControllerConditionFactory.GetEndpoint( endConditionPath, partitionKeys, factory.initTermSpec.EndCondition, this, this, false); endCondition.Activate(optionalTriggeringEvent, this); var partitionKey = ContextControllerInitTermUtil.BuildPartitionKey( optionalTriggeringEvent, optionalTriggeringPattern, endCondition, this); var result = realization.ContextPartitionInstantiate( controllerPath, subpathId, this, optionalTriggeringEvent, optionalPatternForInclusiveEval, partitionKeys, partitionKey); var subpathIdOrCPId = result.SubpathOrCPId; initTermSvc.EndCreate(endConditionPath, subpathIdOrCPId, endCondition, partitionKey); return result.AgentInstances; }