Used SuperBuilder in operation Params classes.
Added rawResponse to http setOutcome().
Made HttpOperation.operator private.
Issue-ID: POLICY-2371
Signed-off-by: Jim Hahn <jrh3@att.com>
Change-Id: Ie894f2e6ae4a31b69a700e425f9e94c5e8a15daa
// @formatter:off
return handleResponse(outcome, url,
- callback -> operator.getClient().put(callback, makePath(), entity, headers));
+ callback -> getOperator().getClient().put(callback, makePath(), entity, headers));
// @formatter:on
}
// @formatter:off
return handleResponse(outcome, url,
- callback -> operator.getClient().get(callback, makePath(), headers));
+ callback -> getOperator().getClient().get(callback, makePath(), headers));
// @formatter:on
}
@Override
public String makePath() {
- return (operator.getPath() + "/" + params.getTargetEntity());
+ return (getOperator().getPath() + "/" + params.getTargetEntity());
}
/**
// @formatter:off
return handleResponse(outcome, url,
- callback -> operator.getClient().post(callback, makePath(), entity, headers));
+ callback -> getOperator().getClient().post(callback, makePath(), entity, headers));
// @formatter:on
}
public class SoActorServiceProvider extends ActorImpl {
private static final Logger logger = LoggerFactory.getLogger(SoActorServiceProvider.class);
+ public static final String NAME = "SO";
+
+ // TODO old code: remove lines down to **HERE**
+
private static final String TENANT_NOT_FOUND = "Tenant Item not found in AAI response {}";
private static final String CONSTRUCTED_SO_MSG = "Constructed SO request: {}";
- // Strings for SO Actor
- private static final String SO_ACTOR = "SO";
-
// Strings for targets
private static final String TARGET_VFC = "VFC";
private static String lastServiceItemServiceInstanceId;
private static String lastVfModuleItemVfModuleInstanceId;
+ // **HERE**
+
public SoActorServiceProvider() {
- super(SO_ACTOR);
+ super(NAME);
}
+ // TODO old code: remove lines down to **HERE**
+
@Override
public String actor() {
- return SO_ACTOR;
+ return NAME;
}
@Override
*/
public SoRequest constructRequestCq(VirtualControlLoopEvent onset, ControlLoopOperation operation, Policy policy,
AaiCqResponse aaiCqResponse) {
- if (!SO_ACTOR.equals(policy.getActor()) || !recipes().contains(policy.getRecipe())) {
+ if (!NAME.equals(policy.getActor()) || !recipes().contains(policy.getRecipe())) {
return null;
}
return cloudConfiguration;
}
+ // **HERE**
+
}
/**
* Operator that created this operation.
*/
- protected final HttpOperator operator;
+ private final HttpOperator operator;
/**
* Response class.
if (!isSuccess(rawResponse, response)) {
logger.info("{}.{} request failed with http error code {} for {}", params.getActor(), params.getOperation(),
rawResponse.getStatus(), params.getRequestId());
- return CompletableFuture.completedFuture(setOutcome(outcome, PolicyResult.FAILURE, response));
+ return CompletableFuture.completedFuture(setOutcome(outcome, PolicyResult.FAILURE, rawResponse, response));
}
logger.info("{}.{} request succeeded for {}", params.getActor(), params.getOperation(), params.getRequestId());
- setOutcome(outcome, PolicyResult.SUCCESS, response);
+ setOutcome(outcome, PolicyResult.SUCCESS, rawResponse, response);
return postProcessResponse(outcome, url, rawResponse, response);
}
*
* @param outcome operation to be updated
* @param result result of the operation
- * @param response response used to populate the outcome
+ * @param rawResponse raw response
+ * @param response decoded response
* @return the updated operation
*/
- public OperationOutcome setOutcome(OperationOutcome outcome, PolicyResult result, T response) {
+ public OperationOutcome setOutcome(OperationOutcome outcome, PolicyResult result, Response rawResponse,
+ T response) {
+
return setOutcome(outcome, result);
}
package org.onap.policy.controlloop.actorserviceprovider.parameters;
-import lombok.Builder;
import lombok.Data;
+import lombok.experimental.SuperBuilder;
import org.onap.policy.common.parameters.BeanValidator;
import org.onap.policy.common.parameters.ValidationResult;
import org.onap.policy.common.parameters.annotations.Min;
@NotNull
@NotBlank
@Data
-@Builder(toBuilder = true)
+@SuperBuilder(toBuilder = true)
public class BidirectionalTopicParams {
/**
package org.onap.policy.controlloop.actorserviceprovider.parameters;
-import lombok.Builder;
import lombok.Data;
+import lombok.experimental.SuperBuilder;
import org.onap.policy.common.parameters.BeanValidator;
import org.onap.policy.common.parameters.ValidationResult;
import org.onap.policy.common.parameters.annotations.Min;
@NotNull
@NotBlank
@Data
-@Builder(toBuilder = true)
+@SuperBuilder(toBuilder = true)
public class HttpParams {
/**
assertEquals(params, params.toBuilder().build());
}
+ // @formatter:off
private void testValidateField(String fieldName, String expected,
- Function<BidirectionalTopicParamsBuilder, BidirectionalTopicParamsBuilder> makeInvalid) {
+ @SuppressWarnings("rawtypes") Function<BidirectionalTopicParamsBuilder, BidirectionalTopicParamsBuilder>
+ makeInvalid) {
+ // @formatter:on
// original params should be valid
ValidationResult result = params.validate(CONTAINER);
}
private void testValidateField(String fieldName, String expected,
- Function<HttpParamsBuilder, HttpParamsBuilder> makeInvalid) {
+ @SuppressWarnings("rawtypes") Function<HttpParamsBuilder, HttpParamsBuilder> makeInvalid) {
// original params should be valid
ValidationResult result = params.validate(CONTAINER);