Skip to content

Commit f48f73d

Browse files
Ticket ## : Start to refactor the workflow engine.
1 parent 697134d commit f48f73d

199 files changed

Lines changed: 1617 additions & 3859 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

CaseManagement.sln

Lines changed: 1 addition & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -3,13 +3,9 @@ Microsoft Visual Studio Solution File, Format Version 12.00
33
# Visual Studio 15
44
VisualStudioVersion = 15.0.28307.421
55
MinimumVisualStudioVersion = 10.0.40219.1
6-
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "01. BPMN", "01. BPMN", "{4E0AA29C-B5C1-4888-BB6E-7141E7DBFB51}"
7-
EndProject
8-
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "CaseManagement.BPMN", "src\CaseManagement.BPMN\CaseManagement.BPMN.csproj", "{D7A0C87C-CF5B-48CF-9A0F-FE7F6248BB30}"
9-
EndProject
106
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "04. Tests", "04. Tests", "{A632EFC3-730B-46D7-B669-91962DFA8947}"
117
EndProject
12-
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "02. CMMN", "02. CMMN", "{CD2E7CFE-4E9C-4308-A0D3-41CD5AD90FD8}"
8+
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "01. CMMN", "01. CMMN", "{CD2E7CFE-4E9C-4308-A0D3-41CD5AD90FD8}"
139
EndProject
1410
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "CaseManagement.CMMN", "src\CaseManagement.CMMN\CaseManagement.CMMN.csproj", "{CE4424E0-4EC0-45D0-9791-91864EDEA89B}"
1511
EndProject
@@ -43,10 +39,6 @@ Global
4339
Release|Any CPU = Release|Any CPU
4440
EndGlobalSection
4541
GlobalSection(ProjectConfigurationPlatforms) = postSolution
46-
{D7A0C87C-CF5B-48CF-9A0F-FE7F6248BB30}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
47-
{D7A0C87C-CF5B-48CF-9A0F-FE7F6248BB30}.Debug|Any CPU.Build.0 = Debug|Any CPU
48-
{D7A0C87C-CF5B-48CF-9A0F-FE7F6248BB30}.Release|Any CPU.ActiveCfg = Release|Any CPU
49-
{D7A0C87C-CF5B-48CF-9A0F-FE7F6248BB30}.Release|Any CPU.Build.0 = Release|Any CPU
5042
{CE4424E0-4EC0-45D0-9791-91864EDEA89B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
5143
{CE4424E0-4EC0-45D0-9791-91864EDEA89B}.Debug|Any CPU.Build.0 = Debug|Any CPU
5244
{CE4424E0-4EC0-45D0-9791-91864EDEA89B}.Release|Any CPU.ActiveCfg = Release|Any CPU
@@ -92,7 +84,6 @@ Global
9284
HideSolutionNode = FALSE
9385
EndGlobalSection
9486
GlobalSection(NestedProjects) = preSolution
95-
{D7A0C87C-CF5B-48CF-9A0F-FE7F6248BB30} = {4E0AA29C-B5C1-4888-BB6E-7141E7DBFB51}
9687
{CE4424E0-4EC0-45D0-9791-91864EDEA89B} = {CD2E7CFE-4E9C-4308-A0D3-41CD5AD90FD8}
9788
{E3E72DF1-F427-4FEA-8F84-FB194EA20D07} = {9360C4A1-A2AA-4493-BBDC-4044D78D8F4B}
9889
{2D288182-CD6B-46AF-B420-F2038875F6BC} = {A632EFC3-730B-46D7-B669-91962DFA8947}

src/CaseManagement.CMMN.CMIS/CMISDirectoryCaseFileItemRepository.cs

Lines changed: 3 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1,22 +1,6 @@
1-
using CaseManagement.CMMN.CaseInstance.Repositories;
2-
using CaseManagement.CMMN.CMIS.Extensions;
3-
using CaseManagement.CMMN.Domains;
4-
using CaseManagement.CMMN.Extensions;
5-
using CaseManagement.Workflow.Domains;
6-
using CaseManagement.Workflow.Engine;
7-
using Microsoft.Extensions.Options;
8-
using PortCMIS.Client;
9-
using PortCMIS.Enums;
10-
using PortCMIS.Exceptions;
11-
using System;
12-
using System.Collections.Generic;
13-
using System.Diagnostics;
14-
using System.Linq;
15-
using System.Threading;
16-
using System.Threading.Tasks;
17-
18-
namespace CaseManagement.CMMN.CMIS
1+
namespace CaseManagement.CMMN.CMIS
192
{
3+
/*
204
public class CMISDirectoryCaseFileItemRepository : ICaseFileItemRepository
215
{
226
private readonly ICMISSessionFactory _cmisSessionFactory;
@@ -249,4 +233,5 @@ public FileInfo(string id, string filePath, DateTime? updateDateTime = null)
249233
public DateTime? UpdateDateTime { get; set; }
250234
}
251235
}
236+
*/
252237
}

src/CaseManagement.CMMN/Apis/CaseDefinitionsController.cs

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
using CaseManagement.CMMN.Extensions;
22
using CaseManagement.CMMN.Parser;
33
using CaseManagement.CMMN.Persistence;
4-
using CaseManagement.Workflow.Persistence.Parameters;
5-
using CaseManagement.Workflow.Persistence.Responses;
4+
using CaseManagement.CMMN.Persistence.Parameters;
5+
using CaseManagement.CMMN.Persistence.Responses;
66
using Microsoft.AspNetCore.Http;
77
using Microsoft.AspNetCore.Mvc;
88
using Newtonsoft.Json.Linq;
@@ -25,8 +25,9 @@ public CaseDefinitionsController(ICMMNDefinitionsQueryRepository queryRepository
2525
public async Task<IActionResult> Get()
2626
{
2727
var query = HttpContext.Request.Query;
28-
var result = await _queryRepository.Find(ExtractFindParameter(query));
29-
return new OkObjectResult(ToDto(result));
28+
// var result = await _queryRepository.Find(ExtractFindParameter(query));
29+
// return new OkObjectResult(ToDto(result));
30+
return null;
3031
}
3132

3233
[HttpGet("{id}")]

src/CaseManagement.CMMN/Apis/CaseFormInstancesController.cs

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
1-
using CaseManagement.CMMN.Extensions;
2-
using CaseManagement.Workflow.Domains;
3-
using CaseManagement.Workflow.Persistence;
4-
using CaseManagement.Workflow.Persistence.Parameters;
5-
using CaseManagement.Workflow.Persistence.Responses;
1+
using CaseManagement.CMMN.Domains;
2+
using CaseManagement.CMMN.Extensions;
3+
using CaseManagement.CMMN.Persistence;
4+
using CaseManagement.CMMN.Persistence.Parameters;
5+
using CaseManagement.CMMN.Persistence.Responses;
66
using Microsoft.AspNetCore.Authorization;
77
using Microsoft.AspNetCore.Http;
88
using Microsoft.AspNetCore.Mvc;
@@ -93,7 +93,7 @@ private static FindFormInstanceParameter ExtractFindFormInstanceParameter(IQuery
9393
{
9494
RoleIds = roleIds
9595
};
96-
parameter.ExtractFindParameter(query);
96+
// parameter.ExtractFindParameter(query);
9797
return parameter;
9898
}
9999
}

src/CaseManagement.CMMN/Apis/CaseInstancesController.cs

Lines changed: 8 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -3,11 +3,6 @@
33
using CaseManagement.CMMN.CaseInstance.Exceptions;
44
using CaseManagement.CMMN.Domains;
55
using CaseManagement.CMMN.Extensions;
6-
using CaseManagement.Workflow.Domains;
7-
using CaseManagement.Workflow.Domains.Process.Exceptions;
8-
using CaseManagement.Workflow.Persistence;
9-
using CaseManagement.Workflow.Persistence.Parameters;
10-
using CaseManagement.Workflow.Persistence.Responses;
116
using Microsoft.AspNetCore.Authorization;
127
using Microsoft.AspNetCore.Http;
138
using Microsoft.AspNetCore.Mvc;
@@ -23,25 +18,24 @@ namespace CaseManagement.CMMN.Apis
2318
[Route(CMMNConstants.RouteNames.CaseInstances)]
2419
public class CaseInstancesController : Controller
2520
{
26-
private readonly ICreateCaseInstanceCommandHandler _createCaseInstanceCommandHandler;
2721
private readonly ILaunchCaseInstanceCommandHandler _launchCaseInstanceCommandHandler;
2822
private readonly IConfirmFormCommandHandler _confirmFormCommandHandler;
2923
private readonly IStopCaseInstanceCommandHandler _stopCaseInstanceCommandHandler;
30-
private readonly IProcessFlowInstanceQueryRepository _processFlowInstanceQueryRepository;
24+
// private readonly IProcessFlowInstanceQueryRepository _processFlowInstanceQueryRepository;
3125
private readonly IActivateCommandHandler _activateCommandHandler;
3226
private readonly ITerminateCommandHandler _terminateCommandHandler;
3327

34-
public CaseInstancesController(ICreateCaseInstanceCommandHandler createCaseInstanceCommandHandler, ILaunchCaseInstanceCommandHandler launchCaseInstanceCommandHandler, IConfirmFormCommandHandler confirmFormCommandHandler, IStopCaseInstanceCommandHandler stopCaseInstanceCommandHandler, IProcessFlowInstanceQueryRepository processFlowInstanceQueryRepository, IActivateCommandHandler activateCommandHandler, ITerminateCommandHandler terminateCommandHandler)
28+
public CaseInstancesController(ILaunchCaseInstanceCommandHandler launchCaseInstanceCommandHandler, IConfirmFormCommandHandler confirmFormCommandHandler, IStopCaseInstanceCommandHandler stopCaseInstanceCommandHandler, /* IProcessFlowInstanceQueryRepository processFlowInstanceQueryRepository, */IActivateCommandHandler activateCommandHandler, ITerminateCommandHandler terminateCommandHandler)
3529
{
36-
_createCaseInstanceCommandHandler = createCaseInstanceCommandHandler;
3730
_launchCaseInstanceCommandHandler = launchCaseInstanceCommandHandler;
3831
_confirmFormCommandHandler = confirmFormCommandHandler;
3932
_stopCaseInstanceCommandHandler = stopCaseInstanceCommandHandler;
40-
_processFlowInstanceQueryRepository = processFlowInstanceQueryRepository;
33+
// _processFlowInstanceQueryRepository = processFlowInstanceQueryRepository;
4134
_activateCommandHandler = activateCommandHandler;
4235
_terminateCommandHandler = terminateCommandHandler;
4336
}
4437

38+
/*
4539
[HttpGet(".search")]
4640
public async Task<IActionResult> Search()
4741
{
@@ -279,7 +273,7 @@ private static JObject ToDto(ProcessFlowInstance flowInstance)
279273
}
280274
281275
var planItems = new JArray();
282-
foreach(var planItem in flowInstance.Elements.Where(e => e is CMMNPlanItem).Cast<CMMNPlanItem>())
276+
foreach(var planItem in flowInstance.Elements.Where(e => e is CMMNPlanItemDefinition).Cast<CMMNPlanItemDefinition>())
283277
{
284278
planItems.Add(ToDto(planItem));
285279
}
@@ -295,7 +289,7 @@ private static JObject ToDto(ProcessFlowInstance flowInstance)
295289
return result;
296290
}
297291
298-
private static JObject ToDto(ProcessFlowInstanceExecutionContext context)
292+
private static JObject ToDto(CMMNWorkflowInstanceExecutionContext context)
299293
{
300294
var jObj = new JObject();
301295
foreach (var kvp in context.Variables)
@@ -306,7 +300,7 @@ private static JObject ToDto(ProcessFlowInstanceExecutionContext context)
306300
return jObj;
307301
}
308302
309-
private static JObject ToDto(CMMNPlanItem planItem)
303+
private static JObject ToDto(CMMNPlanItemDefinition planItem)
310304
{
311305
var result = new JObject
312306
{
@@ -373,5 +367,6 @@ private static ActionResult ToError(ICollection<KeyValuePair<string, string>> er
373367
StatusCode = (int)statusCode
374368
};
375369
}
370+
*/
376371
}
377372
}

src/CaseManagement.CMMN/Builders/CMMNHumanTaskBuilder.cs

Lines changed: 1 addition & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ namespace CaseManagement.CMMN.Builders
44
{
55
public class CMMNHumanTaskBuilder : CMMNPlanItemBuilder
66
{
7-
public CMMNHumanTaskBuilder(CMMNPlanItem planItem) : base(planItem)
7+
public CMMNHumanTaskBuilder(CMMNPlanItemDefinition planItem) : base(planItem)
88
{
99
}
1010

@@ -15,13 +15,6 @@ public CMMNHumanTaskBuilder SetIsBlocking(bool isBlocking)
1515
return this;
1616
}
1717

18-
public CMMNHumanTaskBuilder SetState(CMMNTaskStates state)
19-
{
20-
var cmmnTask = PlanItem.PlanItemDefinitionHumanTask;
21-
cmmnTask.State = state;
22-
return this;
23-
}
24-
2518
public CMMNHumanTaskBuilder SetFormId(string formId)
2619
{
2720
var cmmnTask = PlanItem.PlanItemDefinitionHumanTask;

src/CaseManagement.CMMN/Builders/CMMNPlanItemBuilder.cs

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,12 +5,12 @@ namespace CaseManagement.CMMN.Builders
55
{
66
public class CMMNPlanItemBuilder
77
{
8-
public CMMNPlanItemBuilder(CMMNPlanItem planItem)
8+
public CMMNPlanItemBuilder(CMMNPlanItemDefinition planItem)
99
{
1010
PlanItem = planItem;
1111
}
1212

13-
protected CMMNPlanItem PlanItem { get; private set; }
13+
protected CMMNPlanItemDefinition PlanItem { get; private set; }
1414

1515
public CMMNPlanItemBuilder AddEntryCriterion(string name, Action<CMMNSEntryBuilder> callback)
1616
{
@@ -36,5 +36,12 @@ public CMMNPlanItemBuilder SetManualActivationRule(string name, CMMNExpression e
3636
PlanItem.SetManualActivationRule(manualActivationRule);
3737
return this;
3838
}
39+
40+
public CMMNPlanItemBuilder SetRepetitionRule(string name, CMMNExpression expression)
41+
{
42+
var repetitionRule = new CMMNRepetitionRule(name, expression);
43+
PlanItem.SetRepetitionRule(repetitionRule);
44+
return this;
45+
}
3946
}
4047
}

src/CaseManagement.CMMN/Builders/CMMNProcessFlowInstanceBuilder.cs

Lines changed: 0 additions & 67 deletions
This file was deleted.

src/CaseManagement.CMMN/Builders/CMMNProcessTaskBuilder.cs

Lines changed: 1 addition & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ namespace CaseManagement.CMMN.Builders
44
{
55
public class CMMNProcessTaskBuilder : CMMNPlanItemBuilder
66
{
7-
public CMMNProcessTaskBuilder(CMMNPlanItem planItem) : base(planItem)
7+
public CMMNProcessTaskBuilder(CMMNPlanItemDefinition planItem) : base(planItem)
88
{
99
}
1010

@@ -15,13 +15,6 @@ public CMMNProcessTaskBuilder SetIsBlocking(bool isBlocking)
1515
return this;
1616
}
1717

18-
public CMMNProcessTaskBuilder SetState(CMMNTaskStates state)
19-
{
20-
var cmmnTask = PlanItem.PlanItemDefinitionProcessTask;
21-
cmmnTask.State = state;
22-
return this;
23-
}
24-
2518
public CMMNProcessTaskBuilder SetProcessRef(string processRef)
2619
{
2720
var cmmnTask = PlanItem.PlanItemDefinitionProcessTask;

src/CaseManagement.CMMN/Builders/CMMNTaskBuilder.cs

Lines changed: 1 addition & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ namespace CaseManagement.CMMN.Builders
44
{
55
public class CMMNTaskBuilder : CMMNPlanItemBuilder
66
{
7-
public CMMNTaskBuilder(CMMNPlanItem planItem) : base(planItem)
7+
public CMMNTaskBuilder(CMMNPlanItemDefinition planItem) : base(planItem)
88
{
99
}
1010

@@ -14,12 +14,5 @@ public CMMNTaskBuilder SetIsBlocking(bool isBlocking)
1414
cmmnTask.IsBlocking = isBlocking;
1515
return this;
1616
}
17-
18-
public CMMNTaskBuilder SetState(CMMNTaskStates state)
19-
{
20-
var cmmnTask = PlanItem.PlanItemDefinitionTask;
21-
cmmnTask.State = state;
22-
return this;
23-
}
2417
}
2518
}

0 commit comments

Comments
 (0)