public IdentifierGroupOrchestrationClientAsyncCollector(EventStreamBackedIdentifierGroupOrchestrationTriggerAttribute triggerAttribute)
 {
     // TODO : Set the collector up according to the parameters passed in to the constructor
 }
        protected internal virtual EventStreamBackedIdentifierGroupOrchestrator GetGroupOrchestration(EventStreamBackedIdentifierGroupOrchestrationTriggerAttribute attribute)
        {
            EventStreamBackedIdentifierGroupOrchestrator groupOrchestration = this.cachedGroupOrchestrators.GetOrAdd(
                attribute,
                attr =>
            {
                // TODO :: Need to get the domain context to go along with the command
                return(EventStreamBackedIdentifierGroupOrchestrator.CreateFromAttribute(attribute));
            });

            return(groupOrchestration);
        }
 protected internal virtual IAsyncCollector <StartIdentifierGroupOrchestrationArgs> CreateIdentifierGroupAsyncCollector(EventStreamBackedIdentifierGroupOrchestrationTriggerAttribute triggerAttribute)
 {
     // TODO: Load any system configuration settings...
     return(new IdentifierGroupOrchestrationClientAsyncCollector(triggerAttribute));
 }
 public static EventStreamBackedIdentifierGroupOrchestrator CreateFromAttribute(EventStreamBackedIdentifierGroupOrchestrationTriggerAttribute attr)
 {
     if (attr.InstanceIdentity.Equals(Guid.Empty))
     {
         attr.InstanceIdentity = Guid.NewGuid();
     }
     return(new EventStreamBackedIdentifierGroupOrchestrator(attr.InstanceIdentity, attr.InstanceName));
 }