summaryrefslogtreecommitdiffstats
path: root/controlloop/common/eventmanager
diff options
context:
space:
mode:
Diffstat (limited to 'controlloop/common/eventmanager')
-rw-r--r--controlloop/common/eventmanager/src/main/java/org/onap/policy/controlloop/eventmanager/Step.java15
-rw-r--r--controlloop/common/eventmanager/src/test/java/org/onap/policy/controlloop/eventmanager/StepTest.java11
2 files changed, 22 insertions, 4 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 1cbdb53b2..d406e6efe 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
@@ -30,6 +30,7 @@ import lombok.Getter;
import lombok.NonNull;
import org.onap.policy.controlloop.actorserviceprovider.Operation;
import org.onap.policy.controlloop.actorserviceprovider.OperationOutcome;
+import org.onap.policy.controlloop.actorserviceprovider.OperationProperties;
import org.onap.policy.controlloop.actorserviceprovider.parameters.ControlLoopOperationParams;
import org.onap.policy.controlloop.actorserviceprovider.pipeline.PipelineUtil;
import org.slf4j.Logger;
@@ -190,7 +191,7 @@ public class Step {
logger.warn("{}.{}: exception starting operation for {}", params.getActor(), params.getOperation(),
params.getRequestId(), thrown);
- OperationOutcome outcome = new PipelineUtil(params).setOutcome(params.makeOutcome(), thrown);
+ OperationOutcome outcome = new PipelineUtil(params).setOutcome(makeOutcome(), thrown);
outcome.setStart(startTime.get());
outcome.setEnd(Instant.now());
outcome.setFinalOutcome(true);
@@ -210,7 +211,7 @@ public class Step {
logger.warn("{}.{}: control loop timeout for {}", params.getActor(), params.getOperation(),
params.getRequestId(), thrown);
- OperationOutcome outcome = new PipelineUtil(params).setOutcome(params.makeOutcome(), thrown);
+ OperationOutcome outcome = new PipelineUtil(params).setOutcome(makeOutcome(), thrown);
outcome.setActor(ActorConstants.CL_TIMEOUT_ACTOR);
outcome.setOperation(null);
outcome.setStart(startTime.get());
@@ -262,6 +263,16 @@ public class Step {
return params.build();
}
+ /**
+ * Makes an operation outcome, populating the target entity from the operation's
+ * properties.
+ *
+ * @return a new operation outcome
+ */
+ public OperationOutcome makeOutcome() {
+ return params.makeOutcome(operation.getProperty(OperationProperties.AAI_TARGET_ENTITY));
+ }
+
@Override
public String toString() {
return "Step(actor=" + getActorName() + ", operation=" + getOperationName() + ")";
diff --git a/controlloop/common/eventmanager/src/test/java/org/onap/policy/controlloop/eventmanager/StepTest.java b/controlloop/common/eventmanager/src/test/java/org/onap/policy/controlloop/eventmanager/StepTest.java
index aec4693f8..cd22881b8 100644
--- a/controlloop/common/eventmanager/src/test/java/org/onap/policy/controlloop/eventmanager/StepTest.java
+++ b/controlloop/common/eventmanager/src/test/java/org/onap/policy/controlloop/eventmanager/StepTest.java
@@ -52,6 +52,7 @@ import org.onap.policy.controlloop.VirtualControlLoopEvent;
import org.onap.policy.controlloop.actorserviceprovider.ActorService;
import org.onap.policy.controlloop.actorserviceprovider.Operation;
import org.onap.policy.controlloop.actorserviceprovider.OperationOutcome;
+import org.onap.policy.controlloop.actorserviceprovider.OperationProperties;
import org.onap.policy.controlloop.actorserviceprovider.OperationResult;
import org.onap.policy.controlloop.actorserviceprovider.Operator;
import org.onap.policy.controlloop.actorserviceprovider.TargetType;
@@ -103,6 +104,7 @@ public class StepTest {
when(policyActor.getOperator(POLICY_OPERATION)).thenReturn(policyOperator);
when(policyOperator.buildOperation(any())).thenReturn(policyOperation);
when(policyOperation.start()).thenReturn(future);
+ when(policyOperation.getProperty(OperationProperties.AAI_TARGET_ENTITY)).thenReturn(MY_TARGET);
entityIds = Map.of("entity-name-A", "entity-value-A");
@@ -123,7 +125,7 @@ public class StepTest {
.completeCallback(completions::add).executor(ForkJoinPool.commonPool())
.operation(POLICY_OPERATION).payload(new TreeMap<>(payload)).startCallback(starts::add)
.targetType(TargetType.valueOf(target.getTargetType())).targetEntityIds(target.getEntityIds())
- .requestId(REQ_ID).targetEntity(MY_TARGET).build();
+ .requestId(REQ_ID).build();
startTime = new AtomicReference<>();
@@ -160,7 +162,6 @@ public class StepTest {
assertNull(params2.getTimeoutSec());
assertEquals(target.getTargetType().toString(), params2.getTargetType().toString());
assertSame(entityIds, params2.getTargetEntityIds());
- assertEquals(MY_TARGET, params2.getTargetEntity());
assertTrue(params2.getPayload().isEmpty());
when(actors.getActor(params2.getActor())).thenReturn(policyActor);
@@ -364,6 +365,12 @@ public class StepTest {
}
@Test
+ public void testMakeOutcome() {
+ step.init();
+ assertEquals(MY_TARGET, step.makeOutcome().getTarget());
+ }
+
+ @Test
public void testToString() {
assertNotNull(step.toString());
}