Commit graph

214 commits

Author SHA1 Message Date
Sipke Schoorstra 17406c1db3 Implement activity cancellation 2023-04-13 20:05:14 +02:00
Sipke Schoorstra d3d6b02d98
Cron activities (#3900)
* Add XML comments to Mediator module

* Add cron activity and services

* Implement activity descriptor modifiers and fix CRON cleanup
2023-04-12 21:10:07 +02:00
Sipke Schoorstra 7a09944732
Refactor scheduling and background activity execution (#3884)
* Refactor background activity execution

* Refactor scheduler

* Remove Jobs module

* Add XML comments
2023-04-09 23:35:32 +02:00
Sipke Schoorstra c978b8f9b5 Fix FlowDecision serialization 2023-04-07 22:46:20 +02:00
Sipke Schoorstra 5331476081 Add support for implicit looping constructs
Fixes the issue where a workflow would not complete, even though all flow chart activities executed
2023-04-06 22:37:53 +02:00
Sipke Schoorstra 53cb1cc63c Minor changes 2023-04-06 22:36:27 +02:00
Sipke Schoorstra 218860c998 Update custom converter with support for additional "primitive" types 2023-04-06 15:06:13 +02:00
Sipke Schoorstra e5967fe057 Update ActivityWorkItem to use correct name 2023-04-06 15:05:32 +02:00
Sipke Schoorstra fd2c9f7287 Prevent exception handling middleware from raising another exception
It's possible for multiple activities to raise an exception, in which case we should not try to transition into the Faulted state again.
2023-04-06 15:05:00 +02:00
Sipke Schoorstra cea4c8fa0a Add support for resuming workflows using activity instance ID and hash 2023-04-06 14:59:30 +02:00
herblinernexxbizz dd919a4000
adding set var and main/sub workflow tests (#3855)
* Adding set var and main/sub workflow tests

* Deprecate SetWorkflowOutput and replace with SetOutput

---------

Co-authored-by: Sipke Schoorstra <sipkeschoorstra@outlook.com>
2023-04-03 14:14:39 +02:00
Sipke Schoorstra a11a7c0a12 Cleanup 2023-04-02 19:19:12 +02:00
gurkanguran b0e5061dce
Handle multiple output connections on import (#3857)
* Add XML comments, cleanup

* Incremental work on persisting "lost" connections

* Fixed issues with connections on import

---------

Co-authored-by: Sipke Schoorstra <sipkeschoorstra@outlook.com>
Co-authored-by: Gürkan Güran <gurkanguran@gurkanguransMBP.domain_not_set.invalid>
2023-03-30 10:19:05 +02:00
gurkanguran fab9470504
Importing workflows regardless of the order (#3833)
* Import workflows regardless of the order

* Store original activity json
2023-03-27 12:48:16 +02:00
Sipke Schoorstra cebf6f12e3 Add integration test for reading composite activity output 2023-03-24 22:25:48 +01:00
Sipke Schoorstra ac8e43cbed Ensure variables declared on a Composite activity get declared 2023-03-24 20:58:06 +01:00
Sipke Schoorstra 5aefa30886 Rename helper TryGet to GetOrDefault 2023-03-24 20:57:27 +01:00
Sipke Schoorstra b76442859b Fix handling of sequence type serialization 2023-03-24 11:11:56 +01:00
gurkanguran e4789cf85b
Reference variable with Id instead of Name to prevent issues with updating name (#3814)
* Implemented Id property for variable for memory reference

* Removed debugger

* Fixed the issue with memory block reference of variable

* Fixed infinite recursive calling issue

* Handle variables with ID already containing

* Update JS variable getters based on declared variables

* Prevent Export from including composite roots

* Update JS evaluator with support for reading and writing variables in scope

* Fix polymorphic converter with support for arrays

---------

Co-authored-by: Sipke Schoorstra <sipkeschoorstra@outlook.com>
2023-03-22 22:50:26 +01:00
Sipke Schoorstra 8289b03f79 Fix JSON serialization issues 2023-03-22 19:28:38 +01:00
Sipke Schoorstra 9f3d654cbc Update JSON property dictionary serialization to maintain original .NET types 2023-03-22 12:19:23 +01:00
Sipke Schoorstra 57882a5a80 Add support for triggering event synchronous and specific workflow instance targeting 2023-03-20 21:38:00 +01:00
Sipke Schoorstra fad27d0fb0
Refactor composite activity input and scoped memory (#3815)
* Incremental work

* Enable control over when to include full compositie root

* Cleanup

* Update WorkflowDefinitionActivity

* Implement input as variables

* Delete unused class

* Remove less common types

* Rename ExpandoObject to JSON

* Implement variable scoping

* Remove parent/child relationship from MemoryRegister

* Add support for sending input to "trigger event" endpoint

* Add support for configuring input storage driver

* Remove unused namespace imports

* Auto-register activity types when running a workflow

* Fix missing variables from containers
2023-03-20 19:55:11 +01:00
Sipke Schoorstra a9e67b9b1c Add support for object literals to Outcome activity 2023-03-17 21:11:55 +01:00
Sipke Schoorstra 69f7e80415 Update Complete activity with support different outcome types 2023-03-15 21:31:32 +01:00
Sipke Schoorstra a11798e936 Update ActivityDescriptorExtensions to potentially return null when getting an attribute 2023-03-14 08:16:04 +01:00
Sipke Schoorstra 85fb7360b4 Add dictionary extension methods to get value or default 2023-03-14 08:14:42 +01:00
Sipke Schoorstra 6fcf23dffa Add XML comments & small cleanup 2023-03-14 08:14:14 +01:00
Sipke Schoorstra c1dca8fbe2
Fixes for Journal (#3792)
* Include NodeID in execution log and update workflow journal component

* Recreate Runtime migrations
2023-03-14 08:03:44 +01:00
Sipke Schoorstra 08069c40d2
Implement outcomes for SendHttpRequest activity (#3787) 2023-03-11 22:14:39 +01:00
Sipke Schoorstra 2dfc9e9551 Add default ctor to Inline
This fixes the issue where composite coded activities contain Inline activities that cannot be serialized otherwise.
2023-03-09 19:53:09 +01:00
Sipke Schoorstra 1946272490 Fix output type of For activity 2023-03-09 14:40:18 +01:00
Sipke Schoorstra 625da40e34 Fix ExpandoObjectConverter array serialization for non-complex values 2023-03-09 11:35:03 +01:00
Sipke Schoorstra c5f35c81fc Fix variable with generic type serialization 2023-03-09 11:02:07 +01:00
Sipke Schoorstra 93288fa557 Implement response header parsing for HTTP Response activity 2023-03-09 10:24:38 +01:00
Sipke Schoorstra ccfbc47c71 Fix default variable value serialization issue 2023-03-08 21:43:47 +01:00
Sipke Schoorstra 64f5a9b38c Fix version mismatch between Workflow activity and derived composite descriptor 2023-03-08 15:51:55 +01:00
MariusVuscanNx c30586cd9e
Implemented workflow authorization (#3773)
* Returned 404 when path is not found and 500 when there are multiple workflows with the same path

* Return failure response in case of workflow fault

* Started workflow authorization implementation

* Implemented workflow authorization
2023-03-08 09:49:43 +01:00
Sipke Schoorstra 7ba4dc5039 Add support for controlling when to serialize properties of type IActivity 2023-03-08 01:03:01 +01:00
Sipke Schoorstra e6ce1cebb3 Stash 2023-03-08 00:31:51 +01:00
Sipke Schoorstra db9962945b Fix duplicate key issue 2023-03-07 21:48:54 +01:00
Sipke Schoorstra 1ac64b8197
Store & display evaluated activity state in workflow instance viewer (#3776)
* Implement activity state persistence

* Add sort API

* Implement activity state view

* Update EF Core migrations
2023-03-07 21:40:53 +01:00
Sipke Schoorstra b1564bf646
HTTP Request with status codes as outcomes (#3768)
* Implement configurable expected status outcomes on HTTP Request activity

* Add Catch all outcome

* Implement dynamic port update
2023-03-07 13:45:58 +01:00
Sipke Schoorstra ac9ecbb2d4 Fix hash operation in ActivityExecutionContext 2023-03-06 12:30:40 +01:00
Sipke Schoorstra b8bc628555 Allow bookmark props to be excluded from hash 2023-03-06 12:15:11 +01:00
Sipke Schoorstra 1a713b4619
Rename "services" to "contracts" and "implementations" to "services" (#3758) 2023-03-03 22:47:23 +01:00
Sipke Schoorstra bb1c6e91dc Update completion signaling 2023-03-03 15:22:49 +01:00
Sipke Schoorstra a6dd2d089b Merge remote-tracking branch 'origin/v3' into v3 2023-03-03 14:48:12 +01:00
Sipke Schoorstra 0832bc95f6 Implement outcomes for composite activities from workflow definitions 2023-03-03 14:47:34 +01:00
gurkanguran b9343a1a20
Implemented workflow instance journal partially (#3749)
* Implemented backend support for journal data partially

* Extended journal design with new journal tab

* Serialize JournalData for saving

* Show directly the journal tab when clicked status

* Added ExecutionLogMiddleware

* Refactor

* Replaced newtonsoft.json with built-in json library
2023-03-03 11:44:07 +01:00