Exemplo n.º 1
0
 public WorkflowRunner(
     IWorkflowContextManager workflowContextManager,
     IMediator mediator,
     IServiceScopeFactory serviceScopeFactory,
     IGetsStartActivities startingActivitiesProvider,
     IWorkflowStorageService workflowStorageService,
     ILogger <WorkflowRunner> logger)
 {
     _mediator                   = mediator;
     _serviceScopeFactory        = serviceScopeFactory;
     _startingActivitiesProvider = startingActivitiesProvider;
     _workflowStorageService     = workflowStorageService;
     _logger = logger;
     _workflowContextManager = workflowContextManager;
 }
        public CompositeActivityBuilder(IServiceProvider serviceProvider, IGetsStartActivities startingActivitiesProvider)
        {
            _startingActivitiesProvider = startingActivitiesProvider ?? throw new ArgumentNullException(nameof(startingActivitiesProvider));
            ServiceProvider             = serviceProvider;
            ActivityBuilders            = new List <IActivityBuilder>();
            ConnectionBuilders          = new List <IConnectionBuilder>();
            PropertyStorageProviders    = new Dictionary <string, string>();

            _compositeActivityBuilderFactory = () =>
            {
                var builder = serviceProvider.GetRequiredService <ICompositeActivityBuilder>();
                builder.WorkflowBuilder = WorkflowBuilder;
                return(builder);
            };
        }
Exemplo n.º 3
0
        public void BuildShouldReturnWorkflowBlueprintWithWorkflowBurstPersistenceBehaviourIfNoBehaviourSpecified([WithAutofixtureResolution, Frozen] IServiceProvider serviceProvider,
                                                                                                                  IIdGenerator idGenerator,
                                                                                                                  IGetsStartActivities getsStartActivities,
                                                                                                                  string idPrefix)
        {
            var workflow  = new NoOpWorkflow();
            var sut       = new WorkflowBuilder(idGenerator, serviceProvider, getsStartActivities);
            var blueprint = sut.Build(workflow, idPrefix);

            Assert.Equal(WorkflowPersistenceBehavior.WorkflowBurst, blueprint.PersistenceBehavior);
        }
Exemplo n.º 4
0
 public async Task GetTriggersAsyncGetsAllTriggersForAllBlueprintsStartActivitiesAndCompatibleBookmarks([Frozen] IActivityTypeService activityTypeService,
                                                                                                        [Frozen] ICreatesWorkflowExecutionContextForWorkflowBlueprint workflowExecutionContextFactory,
                                                                                                        [Frozen] IGetsTriggersForActivityBlueprintAndWorkflow triggerProvider,
                                                                                                        [Frozen] IGetsStartActivities startingActivitiesProvider,
                                                                                                        TriggersForBlueprintsProvider sut,
                                                                                                        IWorkflowBlueprint workflowBlueprint1,
                                                                                                        IWorkflowBlueprint workflowBlueprint2,
                                                                                                        ActivityType activityType1,
                                                                                                        ActivityType activityType2,
                                                                                                        ActivityType activityType3,
                                                                                                        IActivityBlueprint activityBlueprint1,
                                                                                                        IActivityBlueprint activityBlueprint2,
                                                                                                        IActivityBlueprint activityBlueprint3,
                                                                                                        WorkflowTrigger trigger1,
                                                                                                        WorkflowTrigger trigger2,
                                                                                                        WorkflowTrigger trigger3,
                                                                                                        WorkflowTrigger trigger4,
                                                                                                        WorkflowTrigger trigger5,
                                                                                                        WorkflowTrigger trigger6,
                                                                                                        [WithAutofixtureResolution] IServiceProvider serviceProvider,
                                                                                                        [NoAutoProperties] WorkflowInstance workflowInstance)
 {
     Mock.Get(activityTypeService)
     .Setup(x => x.GetActivityTypesAsync(default))
Exemplo n.º 5
0
 public static IEnumerable <IActivityBlueprint> GetStartActivities <T>(this IGetsStartActivities startActivitiesProvider,
                                                                       ICompositeActivityBlueprint workflowBlueprint) where T : IActivity
 => startActivitiesProvider.GetStartActivities(workflowBlueprint, typeof(T));
Exemplo n.º 6
0
 public static IEnumerable <IActivityBlueprint> GetStartActivities(this IGetsStartActivities startActivitiesProvider,
                                                                   ICompositeActivityBlueprint workflowBlueprint,
                                                                   Type activityType)
 => startActivitiesProvider.GetStartActivities(workflowBlueprint, activityType.Name);
Exemplo n.º 7
0
 public static IEnumerable <IActivityBlueprint> GetStartActivities(this IGetsStartActivities startActivitiesProvider,
                                                                   ICompositeActivityBlueprint workflowBlueprint,
                                                                   string activityType)
 => startActivitiesProvider.GetStartActivities(workflowBlueprint).Where(x => x.Type == activityType);
Exemplo n.º 8
0
 public WorkflowBuilder(IIdGenerator idGenerator, IServiceProvider serviceProvider, IGetsStartActivities startingActivitiesProvider) : base(serviceProvider, startingActivitiesProvider)
 {
     Version                = 1;
     IsLatest               = true;
     IsPublished            = true;
     Variables              = new Variables();
     CustomAttributes       = new Variables();
     ActivityId             = idGenerator.Generate();
     ActivityType           = typeof(Workflow);
     ActivityTypeName       = nameof(Workflow);
     WorkflowBuilder        = this;
     PropertyValueProviders = new Dictionary <string, IActivityPropertyValueProvider>();
     PersistenceBehavior    = WorkflowPersistenceBehavior.WorkflowBurst;
 }