Commit graph

1449 commits

Author SHA1 Message Date
Sipke Schoorstra 3853df2572 Fix Sleep base constructor 2021-01-03 19:24:18 +01:00
Sipke Schoorstra 8ece1dc9ff Fix premature disposal of workflow execution scope 2021-01-03 19:23:59 +01:00
Sipke Schoorstra c8ec51b332 Fix logging statement 2021-01-03 19:23:35 +01:00
Sipke Schoorstra 1401ba72d2 Prevent duplicate activity ids when using custom ids in composite activities 2021-01-03 19:22:45 +01:00
Sipke Schoorstra 020e74e7bc Use shared Iterate outcome const 2021-01-03 19:22:17 +01:00
Sipke Schoorstra 96464c988c Update ScheduleWorkflowResult to schedule job AFTER workflow is suspended 2021-01-03 19:21:50 +01:00
Sipke Schoorstra 4a3ac3d3aa Add Tasks feature
This features allows arbitrary code to add tasks to a registry that can be executed later on.
See scheduling as an example.
2021-01-03 19:20:44 +01:00
Sipke Schoorstra 1aee05d82f Add logging to Timer 2021-01-03 19:19:03 +01:00
Sipke Schoorstra 4ce94ee01a Implement BackgroundWorker thread synchronization 2021-01-03 19:18:50 +01:00
Sipke Schoorstra 9c1515bdb6 Rename Outcome property on Finish activity 2021-01-03 12:21:39 +01:00
Sipke Schoorstra 67be790c7d Fix access to container properties and improve object type conversion 2021-01-03 11:06:11 +01:00
Sipke Schoorstra f14c22d5d4 Improve interaction between Finish and composite activities
This update enabled activities within composite activity containers to control the outcome of the container
2021-01-02 15:39:38 +01:00
Sipke Schoorstra 7c2e9f9342 Unschedule triggers when blocking timers are removed 2021-01-02 13:51:53 +01:00
Sipke Schoorstra 34983144c3 Optimize synchronized workflow instance execution in parallel 2021-01-02 12:57:27 +01:00
Sipke Schoorstra 717ced918f Update Finish activity to only clear blocking activities of current container unless it's the root workflow, in which case ALL blocking activities are removed 2021-01-02 11:22:42 +01:00
Sipke Schoorstra c645e77e14 Extract re-scheduling logic to event handler 2021-01-02 11:05:01 +01:00
Sipke Schoorstra c8297e61a8 Remove ParentActivities properties 2021-01-01 18:01:03 +01:00
Sipke Schoorstra dcbf14c144 Fix and simplify composite activity + while/for/foreach handling 2021-01-01 17:58:08 +01:00
Sipke Schoorstra 10fe049c10 Experimental bug fixes regarding timer & container scheduling 2020-12-31 17:24:55 +01:00
Sipke Schoorstra 90480669ee Update YesSQL content serializer to exclude fields with null values 2020-12-30 19:20:17 +01:00
Sipke Schoorstra 8ad256b6b7 Add support for Transient Variables 2020-12-30 16:53:05 +01:00
Sipke Schoorstra 356e0ba0ba Update Azure Service Bus queue worker to schedule workflow execution in the background
This to prevent scenarios where workflows take a long time to execute and the message gets re-delivered.
This change ACKS the message right after the workflow task has been queued internally.
2020-12-30 12:02:13 +01:00
Sipke Schoorstra a0c9f16aae Add generic BackgroundWorker for running tasks asynchronously in the background 2020-12-30 12:00:53 +01:00
Sipke Schoorstra 705979f94e Merge branch 'feature/elsa-2.0' into elsa-2.0/activity-property-editor 2020-12-29 16:41:20 +01:00
Sipke Schoorstra 993e08ea89
Refactored Switch Activity (#545)
* Add IfThen activity + sample

* Add match mode

* Rename IfThen to Switch
2020-12-29 16:40:21 +01:00
Sipke Schoorstra 3eb89f3e5d Extract workflow designer capabilities to designer host 2020-12-29 15:27:54 +01:00
Sipke Schoorstra 460c75227d Implement delete workflow definition 2020-12-28 17:34:44 +01:00
Sipke Schoorstra 1c006e3081 Incremental work on deleting workflow definitions 2020-12-27 21:53:27 +01:00
Sipke Schoorstra 7cbfa2d4f1 Implement delete activity 2020-12-27 21:45:24 +01:00
Sipke Schoorstra c6d68875c1 Implement workflow settings 2020-12-27 21:02:14 +01:00
Sipke Schoorstra 5f08df0556 Add Dashboard samples: monolith + client/server 2020-12-27 11:53:52 +01:00
Sipke Schoorstra d04cd93536 Add support for overriding display name and description 2020-12-26 21:55:02 +01:00
Sipke Schoorstra 42bcade5fc Add missing project 2020-12-26 16:01:49 +01:00
Sipke Schoorstra 8dc86a6fa2 Fix broken workflow runner 2020-12-26 15:46:50 +01:00
Sipke Schoorstra a8dfebbfe5 Fix YesSQL migration 2020-12-26 15:33:03 +01:00
Sipke Schoorstra 75c4be157a Fix order of startup tasks 2020-12-26 15:32:50 +01:00
Sipke Schoorstra fa13aadd37 Serialization improvements and cleanup 2020-12-26 14:37:05 +01:00
Sipke Schoorstra 310cab9032
Elsa Activity + Workflow registration refactorings (#543)
* Elsa options and activity/workflow registration improvements

* Add convenience extensions for Quartz and Hangfire timer activity registration

* Fix solution and warnings
2020-12-26 12:21:08 +01:00
Sipke Schoorstra 1bf53fb59a
Elsa 2.0/workflow editor (#541)
* Fix connection model porperty names

* Add workflow instance name to index

* Enable sample workflows

* Incremental work on activity displays

* Add custom activity display support

* Optimize workflow registry list endpoint model
2020-12-25 22:00:25 +01:00
Rafael Carnucci 92e1a1c3bf
Redesign activities and workflows management (#536)
* Adding Activities, Workflows, TriggerProviders and WorkflowContextProviders by Reflection

* Activities stored in ElsaOptions, instead of IServiceCollection

* Remove the empty XML comments

* Renamed ElsaConfigurationsOptions to ElsaConfiguration

* Small enhancements

* Workflows stored in ElsaOptions, instead of IServiceCollection

* Instantiated workflows can now be added

* Workflow instance was not registered to DI

* Add Elsa.Activities.Rebus project to solution

Co-authored-by: Sipke Schoorstra <sipkeschoorstra@outlook.com>
2020-12-25 21:17:17 +01:00
Rafael Carnucci 79b5b89505
Fix MongoDb (#540) 2020-12-25 21:16:55 +01:00
Rafael Carnucci f6685189f7
Add ContextType to WorkflowInstance (#539)
* Add ContextType to WorkflowInstance

* Removed ContextType from WorkflowDefinition

* Added ContextType to WorkflowInstanceDocument and WorkflowInstanceIndex
2020-12-25 21:15:58 +01:00
Sipke Schoorstra a1c1ee9ce0 Add sample workflow with IfElse activity 2020-12-24 21:39:27 +01:00
Sipke Schoorstra 599c6a5cd6 Fix workflow execution
This fixes an issue where blocking activities would not actually block workflow execution from continuing, due to the workflow runner continuing to schedule the posted activities.
2020-12-24 21:38:45 +01:00
Sipke Schoorstra b74f97b115 Add helpful string overrides 2020-12-24 21:37:02 +01:00
Sipke Schoorstra 8a4fae6f38 Fix Timer ExecuteAt persistence (for Trigger)
Without ExecuteAt receiving a value (even if it lies in the past), the TimerTriggerProvider will keep triggering workflows containing a Timer.
2020-12-24 21:36:42 +01:00
Sipke Schoorstra 28ac92b6ff
Introduce Workflow Instance Name (#538)
* Add Name property to Workflow Instance models and update Dashboard UI

* Add SetName activity

* Add naming workflow sample

* Add modal html

* Implement search by workflow instance name
2020-12-24 14:30:55 +01:00
Rafael Carnucci 5b84a2e7a2
Using AutoMapper.Extensions.Microsoft.DependencyInjection, instead of own implementation (#537) 2020-12-24 14:25:43 +01:00
Sipke Schoorstra e154f5381a Fix build after merge (attempt 2) 2020-12-23 12:52:06 +01:00
Sipke Schoorstra b24ff99354 Fix build after merge 2020-12-23 12:50:34 +01:00