[New] ExecutionHandler.triggerExecution(realm) is now public

This commit is contained in:
Robert von Burg 2017-06-07 15:53:52 +02:00
parent 0badb0fc01
commit ffbbe3c4bb
2 changed files with 24 additions and 19 deletions

View File

@ -100,6 +100,19 @@ public class EventBasedExecutionHandler extends ExecutionHandler {
}
}
@Override
public void triggerExecution(String realm) {
synchronized (this.registeredActivities) {
Set<Locator> locators = this.registeredActivities.getSet(realm);
if (locators != null) {
for (Locator locator : locators) {
// execute async
toExecution(realm, locator);
}
}
}
}
@Override
public void toExecution(String realm, Locator locator) {
this.executorService.execute(() -> {
@ -184,8 +197,8 @@ public class EventBasedExecutionHandler extends ExecutionHandler {
KEY_DEFAULT_ACTIVITY_ARCHIVAL);
}
ActivityArchivalPolicy archivalPolicy = getComponent(PolicyHandler.class).getPolicy(policyDef,
tx);
PolicyHandler policyHandler = getComponent(PolicyHandler.class);
ActivityArchivalPolicy archivalPolicy = policyHandler.getPolicy(policyDef, tx);
archivalPolicy.archive(activity);
}
@ -267,23 +280,6 @@ public class EventBasedExecutionHandler extends ExecutionHandler {
triggerExecution(realm);
}
/**
* Triggers a to execution for all registered activities in the given realm
*
* @param realm
*/
private void triggerExecution(String realm) {
synchronized (this.registeredActivities) {
Set<Locator> locators = this.registeredActivities.getSet(realm);
if (locators != null) {
for (Locator locator : locators) {
// execute async
toExecution(realm, locator);
}
}
}
}
private void toWarning(String realm, Locator actionLoc, PrivilegeContext ctx) {
try (StrolchTransaction tx = openTx(realm, ctx.getCertificate(), SetActionToExecutedCommand.class)) {
Locator rootElemLoc = actionLoc.trim(3);

View File

@ -55,6 +55,14 @@ public abstract class ExecutionHandler extends StrolchComponent {
*/
public abstract void removeFromExecution(String realm, Locator activityLoc);
/**
* Triggers a to execution for all registered activities in the given realm
*
* @param realm
* the realm to trigger execution for
*/
public abstract void triggerExecution(String realm);
/**
* <p>
* Returns the {@link DelayedExecutionTimer}
@ -118,4 +126,5 @@ public abstract class ExecutionHandler extends StrolchComponent {
* the {@link Locator} of the {@link Action}
*/
public abstract void toError(String realm, Locator actionLoc);
}