-
Notifications
You must be signed in to change notification settings - Fork 4
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Pattern-based Generation and Adaptation of Quantum Workflows (#145)
* allow manual adaptation of plugins * add patterns to extension * add visualization of behavioral patterns * add svg of error pattern * add other patterns to renderer * add all svgs * fix naming * fix rendering of patterns * add rules * fix create rule * fix replace menu * center patterns * add transformator * fix clip and img ids to prevent svg id overlaps * remove attached pattern after transformation * fix wrong naming * add warm start task * add cutting pattern, update palette icon, restriction in pattern modal * add transformation of patterns * begin error correction transformation * start rewriting transformation * fix double warm start tasks & transformation * fix cutting transformation * add augmentation pattern icons to replace menu * fix links * fix cancel, add labels * update pattern handling reset checkbox on second click to disable selection add empty subprocess if solution does not exists wrap solution into subprocess attach patterns to subprocess then detect suitable tasks * fix cutting transformation * update pattern handlers * fix checkbox * update modal * add pattern config test * filter out mitigation patterns * add transformation test * fix cancel of pattern modal * remove general pattern * fix id of di elements * delete gate error mitigation pattern during transformation * fix missing form fields * fix missing businessobject for tasks * fix checkbox * fix delete row, check result * fix id of form fields, add mapping task * update matching, rename event * fix exception * add replacement for pre deployed execution * check attached behavioral patterns to subprocess * refine pattern attachment * apply plugin structure * fix test * fix lint * fix bugs * add warm starting patterns * add validation rule * refine replacement * update rewrite * update link * extend candidate detection * session, hybrid program generation with patterns * update attachment for warm starting patterns * update diagram * refine transformation logic * update docs * update linter * fix warm starting pattern attribute * fix layout of behavioral pattern * update model extension * remove warm start * update manual attachment of pattern * update pattern position, transformation, detection * add error handling, reduce subprocess width * add qprovUrl for deployed tasks to startevent * fix service binding * fix svg for candidate * fix service binding * fix dedicatedHosting policy condition * rewrite pattern attachment to fix innner outer * fix replacement of behavioral * update subprocess height * refactoring * update position for new layout * only bind max 1 running instance * update header * add check if optimization candidate has changed * solve issue when no suitable instances are available * update deploymentmodelurl binding for always on deployment * fix bugs for deployment * adjust hiding for cutting task * linting --------- Co-authored-by: LaviniaStiliadou <livia_16@live.de> Co-authored-by: mbeisel <beiselmn@gmail.com>
- Loading branch information
1 parent
a93f2de
commit 35bf203
Showing
89 changed files
with
8,404 additions
and
244 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
60 changes: 60 additions & 0 deletions
60
components/bpmn-q/bpmnlint-plugin-custom/rules/pre-deployed-pattern-on-demand-policy.js
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,60 @@ | ||
const { is } = require("bpmnlint-utils"); | ||
|
||
/** | ||
* A rule that checks that no on-demand policy is inside the subprocess to which a pre-deployed pattern is attached. | ||
*/ | ||
module.exports = function () { | ||
function check(node, reporter) { | ||
if (!is(node, "pattern:PredeployedExecution")) { | ||
return; | ||
} | ||
|
||
function checkForOnDemandPolicyInSubprocesses(subprocess) { | ||
let containsOnDemandPolicy = false; | ||
const flowElements = subprocess.flowElements || []; | ||
flowElements.forEach(function (flowElement) { | ||
if (is(flowElement, "opentosca:OnDemandPolicy")) { | ||
policies.push(flowElement); | ||
containsOnDemandPolicy = true; | ||
} | ||
if (is(flowElement, "bpmn:SubProcess")) { | ||
containsOnDemandPolicy = | ||
checkForOnDemandPolicyInSubprocesses(flowElement) || | ||
containsOnDemandPolicy; | ||
} | ||
}); | ||
return containsOnDemandPolicy; | ||
} | ||
|
||
let attachedSubprocess = node.attachedToRef.id; | ||
let parent; | ||
let policies = []; | ||
const flowElements = node.$parent.flowElements || []; | ||
flowElements.forEach(function (flowElement) { | ||
if (flowElement.id === attachedSubprocess) { | ||
parent = flowElement; | ||
} | ||
}); | ||
|
||
let containsOnDemandPolicy = checkForOnDemandPolicyInSubprocesses(parent); | ||
|
||
if (containsOnDemandPolicy) { | ||
reporter.report( | ||
node.id, | ||
"Pre-deployed Pattern and on-demand policy cannot be used together", | ||
["eventDefinitions"] | ||
); | ||
for (let i = 0; i < policies.length; i++) { | ||
reporter.report( | ||
policies[i].id, | ||
"Pre-deployed Pattern and on-demand policy cannot be used together", | ||
["eventDefinitions"] | ||
); | ||
} | ||
} | ||
} | ||
|
||
return { | ||
check, | ||
}; | ||
}; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.