aboutsummaryrefslogtreecommitdiffstats
path: root/controlloop/common/eventmanager/src/main/java/org/onap/policy/controlloop/eventmanager/Step.java
diff options
context:
space:
mode:
Diffstat (limited to 'controlloop/common/eventmanager/src/main/java/org/onap/policy/controlloop/eventmanager/Step.java')
-rw-r--r--controlloop/common/eventmanager/src/main/java/org/onap/policy/controlloop/eventmanager/Step.java27
1 files changed, 19 insertions, 8 deletions
diff --git a/controlloop/common/eventmanager/src/main/java/org/onap/policy/controlloop/eventmanager/Step.java b/controlloop/common/eventmanager/src/main/java/org/onap/policy/controlloop/eventmanager/Step.java
index 01c64e5bc..ae51c737f 100644
--- a/controlloop/common/eventmanager/src/main/java/org/onap/policy/controlloop/eventmanager/Step.java
+++ b/controlloop/common/eventmanager/src/main/java/org/onap/policy/controlloop/eventmanager/Step.java
@@ -55,12 +55,20 @@ public class Step {
private final AtomicReference<Instant> startTime;
/**
- * {@code True} if this step is for the policy's actual operation, {@code false} if it's a preprocessor step.
+ * {@code True} if this step is for the policy's actual operation, {@code false} if
+ * it's a preprocessor step.
*/
@Getter
private final boolean policyStep;
/**
+ * The parent step from which this was constructed, or {@code null} if is was not
+ * constructed from another step.
+ */
+ @Getter
+ private final Step parentStep;
+
+ /**
* The operation for this step.
*/
@Getter
@@ -73,7 +81,8 @@ public class Step {
/**
- * Constructs the object. This is used when constructing the step for the policy's actual operation.
+ * Constructs the object. This is used when constructing the step for the policy's
+ * actual operation.
*
* @param params operation parameters
* @param startTime start time of the first step for the current policy, initially
@@ -83,21 +92,23 @@ public class Step {
this.params = params;
this.startTime = startTime;
this.policyStep = true;
+ this.parentStep = null;
}
/**
- * Constructs the object using information from another step. This is used when constructing a preprocessing
- * step.
+ * Constructs the object using information from another step. This is used when
+ * constructing a preprocessing step.
*
- * @param otherStep step whose information should be used
+ * @param parentStep parent step whose information should be used
* @param actor actor name
* @param operation operation name
*/
- public Step(Step otherStep, String actor, String operation) {
- this.params = otherStep.params.toBuilder().actor(actor).operation(operation).retry(null).timeoutSec(null)
+ public Step(Step parentStep, String actor, String operation) {
+ this.params = parentStep.params.toBuilder().actor(actor).operation(operation).retry(null).timeoutSec(null)
.payload(new LinkedHashMap<>()).build();
- this.startTime = otherStep.startTime;
+ this.startTime = parentStep.startTime;
this.policyStep = false;
+ this.parentStep = parentStep;
}
public String getActorName() {