This is an automated email from the ASF dual-hosted git repository. heneveld pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/brooklyn-server.git
commit 86cb48ce1c99c89e1f25a9535baa06c19da6f53d Author: Alex Heneveld <[email protected]> AuthorDate: Wed Mar 29 16:45:23 2023 +0100 more workflow policy fix+test - don't fail on destroy (even if already suspended) --- .../java/org/apache/brooklyn/camp/brooklyn/WorkflowYamlTest.java | 6 ++++++ .../main/java/org/apache/brooklyn/core/workflow/WorkflowPolicy.java | 2 +- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/camp/camp-brooklyn/src/test/java/org/apache/brooklyn/camp/brooklyn/WorkflowYamlTest.java b/camp/camp-brooklyn/src/test/java/org/apache/brooklyn/camp/brooklyn/WorkflowYamlTest.java index 888433ba0e..5052f7a69b 100644 --- a/camp/camp-brooklyn/src/test/java/org/apache/brooklyn/camp/brooklyn/WorkflowYamlTest.java +++ b/camp/camp-brooklyn/src/test/java/org/apache/brooklyn/camp/brooklyn/WorkflowYamlTest.java @@ -227,6 +227,12 @@ public class WorkflowYamlTest extends AbstractYamlTest { policy.resume(); entity.sensors().set(Sensors.newStringSensor("theTrigger"), "go4"); EntityAsserts.assertAttributeEqualsEventually(MutableMap.of("timeout", "3s"), entity, MY_WORKFLOW_SENSOR, MutableMap.of("foo", "bar", "v", 12)); + + entity.policies().remove(policy); + entity.sensors().set(Sensors.newStringSensor("theTrigger"), "go5"); + Time.sleep(Duration.millis(100)); + // not triggered + EntityAsserts.assertAttributeEquals(entity, MY_WORKFLOW_SENSOR, MutableMap.of("foo", "bar", "v", 12)); }); } diff --git a/core/src/main/java/org/apache/brooklyn/core/workflow/WorkflowPolicy.java b/core/src/main/java/org/apache/brooklyn/core/workflow/WorkflowPolicy.java index 9acd3f8a89..3eadfd568d 100644 --- a/core/src/main/java/org/apache/brooklyn/core/workflow/WorkflowPolicy.java +++ b/core/src/main/java/org/apache/brooklyn/core/workflow/WorkflowPolicy.java @@ -142,7 +142,7 @@ public class WorkflowPolicy<T> extends AbstractPolicy { public void suspend() { super.suspend(); - poller.stop(); + if (poller.isRunning()) poller.stop(); } @Override
