Commit graph

16 commits

Author SHA1 Message Date
Sipke Schoorstra df6ad74eec Replace custom distributed locking implementation with DistributedLock
https://github.com/madelson/DistributedLock
2021-04-07 13:13:13 +02:00
Craig Fowler ed81b5679a WIP #564 - Rename & alter temporal activity setup
Temporal activities no longer have a generalised extension method
for registering them with a service collecton.  It is still static and has
the same rough shape as an extension method.  This way it is less
visible and less likely to be called by accident.

Also in-line with changes in this branch, things have been renamed
  Timers → Temporal
2021-02-28 20:49:34 +01:00
Craig Fowler b8f18996c6 WIP #564 - Rename Elsa.Activities.Timers impl projects
The project/NuGet package for implementation logic relating to
temporal actions has been renamed:
  Elsa.Activities.Timers.Hangfire → Elsa.Activities.Temporal.Hangfire
  Elsa.Activities.Timers.Quartz → Elsa.Activities.Temporal.Quartz

Whilst large numbers of C# files are "changed" by this commit,
it's just a straight move to a new path.
2021-02-28 20:49:34 +01:00
Craig Fowler 77a8f5be52 WIP #564 - Rename Elsa.Activities.Timers
The project/NuGet package for common logic relating to
temporal actions has been renamed:
  Elsa.Activities.Timers → Elsa.Activities.Temporal.Common

Whilst large numbers of files are "changed" by this commit,
it's just a straight move to a new path.
2021-02-28 20:49:34 +01:00
Craig Fowler ac44bf4535 WIP #564 - Bulk namepace change: Timers → Temporal
The name "Timers" is being replaced with "Temporal".  This commit
changes just the code (not project names/directories).
2021-02-28 20:49:34 +01:00
Sipke Schoorstra 7cfe24ba94
Implement revival of faulted workflow (#595)
* Initial version of workflow reviver

* Fix DI things

* Rename workflow builder parameter to `builder`

* Update EF Core stores to use short-lived db contexts

* Update serializer to use new settings to reset ID seed

* Write fault details

* Add faulty workflows sample project

* Switch to free & open source Z.EntityFramework.Plus.EFCore

* Add content type header

* Fix call to virtual OnSaving/OnLoading

* Fix retry
2021-01-30 12:47: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 e154f5381a Fix build after merge (attempt 2) 2020-12-23 12:52:06 +01:00
Rafael Carnucci 4274996dd9
Separate quartz (#516)
* Fix sample Elsa.Samples.FileBasedWorkflow

* Separate Quartz from Elsa.Activities.Timers

* Incremental work on Hangfire integration

* Incremental work on Hangfire integration

* Incremental work on Hangfire integration

* Incremental work on Hangfire integration

* Add CancelTimer

* ToCronExpression for Duration

* Removed SweepInterval

* Synchronize access to scheduler

* Refactoring RunHangfireWorkflowJob

* Optimize timer activities to always execute when target time stamp lies in past

* Refactoring TimersOptionsExtensions

* Added common.props and configureawait.props

* Rename CancelTimer to ClearTimer

* Wrong parameter name in comment

* Refactoring TimerConsts and RunQuartzWorkflowJob

Co-authored-by: Rafael Carnucci <rafael.carnucci@icn.de>
Co-authored-by: Sipke Schoorstra <sipkeschoorstra@outlook.com>
2020-12-23 12:38:09 +01:00
Sipke Schoorstra 8dbc3fe100
Workflow Execution Log (#530)
* Rename provider folder to locking

* Update project reference paths

* Incremental work on workflow execution log storage

* Fix deadlock

* Add workflow execution log stores
2020-12-21 17:08:32 +01:00
Sipke Schoorstra f2aae986f4 Use in-memory persistence by default 2020-12-12 14:07:17 +01:00
Rafael Carnucci 3b35d9ff0a
Seperate YesSql (#504)
* Seperate YesSql and added InMemory, MongoDb

* Error fixed, if DatabaseInitializer is run through several times

* icon.png was not packed

* Added AddWorkflowProvider to AddElsaPersistenceMongoDb

* Wrong primary keys were used for MongoDb

* Refactorig MongoDb

* Register IMongoCollection<WorkflowDefinition> and IMongoCollection<WorkflowInstance> with DI

* Wrong Parameter Type in Constructor (MongoDbWorkflowInstanceRepository)

* Add workflowDefinition.WorkflowDefinitionId = _idGenerator.Generate(); to Initialize

* Removed duplicated code

* Correct wrong Commit

Co-authored-by: Rafael Carnucci <rafael.carnucci@icn.de>
Co-authored-by: Sipke Schoorstra <sipkeschoorstra@outlook.com>
2020-12-11 21:03:49 +01:00
Sipke Schoorstra 65a266dfdb Update Elsa.sln 2020-12-11 20:59:28 +01:00
Sipke Schoorstra 6c8cc5efd0 Rename TimerEvent to Timer 2020-12-04 10:41:49 +01:00
Sipke Schoorstra 41ca351d29
Refactor Timers activities using Quartz & initial Multitenancy support (#477)
* Refactor time based events using Quartz.net

* Simplify Quartz job & trigger registration & Cleanup

* Expose Quartz configuration

* Restructure samples
2020-11-27 21:47:51 +01:00