summary |
shortlog |
log |
commit | commitdiff |
review |
tree
raw |
patch |
inline | side by side (from parent 1:
369435c)
Wrong attribute id was being used. Added info logging statement
to assist in debugging. Added JUnit to support this.
Issue-ID: POLICY-1843
Change-Id: I11d83574f91751804a45281d2e0c9cd3150e30eb
Signed-off-by: Pamela Dragosh <pdragosh@research.att.com>
import com.att.research.xacml.std.annotations.XACMLRequest;
import com.att.research.xacml.std.annotations.XACMLResource;
import com.att.research.xacml.std.annotations.XACMLSubject;
import com.att.research.xacml.std.annotations.XACMLRequest;
import com.att.research.xacml.std.annotations.XACMLResource;
import com.att.research.xacml.std.annotations.XACMLSubject;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Map;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Map;
@XACMLResource(includeInResults = true)
private Collection<String> resource = new ArrayList<>();
@XACMLResource(includeInResults = true)
private Collection<String> resource = new ArrayList<>();
+ @XACMLResource(attributeId = "urn:org:onap:policy-type", includeInResults = true)
+ private Collection<String> resourcePolicyType = new ArrayList<>();
+
public StdCombinedPolicyRequest() {
super();
}
public StdCombinedPolicyRequest() {
super();
}
if (entrySet.getValue() instanceof Collection) {
addPolicyTypes(request, (Collection) entrySet.getValue());
} else if (entrySet.getValue() instanceof String) {
if (entrySet.getValue() instanceof Collection) {
addPolicyTypes(request, (Collection) entrySet.getValue());
} else if (entrySet.getValue() instanceof String) {
- request.resource.add(entrySet.getValue().toString());
+ request.resourcePolicyType.add(entrySet.getValue().toString());
private static StdCombinedPolicyRequest addPolicyTypes(StdCombinedPolicyRequest request, Collection<Object> types) {
for (Object type : types) {
private static StdCombinedPolicyRequest addPolicyTypes(StdCombinedPolicyRequest request, Collection<Object> types) {
for (Object type : types) {
- request.resource.add(type.toString());
+ request.resourcePolicyType.add(type.toString());
import com.att.research.xacml.api.XACML3;
import com.att.research.xacml.std.annotations.RequestParser;
import com.google.gson.Gson;
import com.att.research.xacml.api.XACML3;
import com.att.research.xacml.std.annotations.RequestParser;
import com.google.gson.Gson;
import java.util.Collection;
import java.util.HashMap;
import java.util.Map;
import java.util.Collection;
import java.util.HashMap;
import java.util.Map;
@Override
public DecisionResponse convertResponse(Response xacmlResponse) {
@Override
public DecisionResponse convertResponse(Response xacmlResponse) {
- LOGGER.debug("Converting Response {}", xacmlResponse);
+ LOGGER.info("Converting Response {}", xacmlResponse);
DecisionResponse decisionResponse = new DecisionResponse();
//
// Setup policies
DecisionResponse decisionResponse = new DecisionResponse();
//
// Setup policies
import static org.assertj.core.api.Assertions.assertThat;
import com.att.research.xacml.api.Response;
import static org.assertj.core.api.Assertions.assertThat;
import com.att.research.xacml.api.Response;
import java.io.File;
import java.io.IOException;
import java.util.Iterator;
import java.util.List;
import java.util.Properties;
import java.util.ServiceLoader;
import java.io.File;
import java.io.IOException;
import java.util.Iterator;
import java.util.List;
import java.util.Properties;
import java.util.ServiceLoader;
import org.apache.commons.lang3.tuple.Pair;
import org.junit.BeforeClass;
import org.junit.ClassRule;
import org.apache.commons.lang3.tuple.Pair;
import org.junit.BeforeClass;
import org.junit.ClassRule;
private static File propertiesFile;
private static XacmlApplicationServiceProvider service;
private static DecisionRequest requestSinglePolicy;
private static File propertiesFile;
private static XacmlApplicationServiceProvider service;
private static DecisionRequest requestSinglePolicy;
+ private static DecisionRequest requestPolicyType;
private static StandardCoder gson = new StandardCoder();
private static StandardCoder gson = new StandardCoder();
TextFileUtils
.getTextFileAsString("../../main/src/test/resources/decisions/decision.single.input.json"),
DecisionRequest.class);
TextFileUtils
.getTextFileAsString("../../main/src/test/resources/decisions/decision.single.input.json"),
DecisionRequest.class);
+ // Load Single Decision Request
+ //
+ requestPolicyType = gson.decode(
+ TextFileUtils
+ .getTextFileAsString("../../main/src/test/resources/decisions/decision.policytype.input.json"),
+ DecisionRequest.class);
//
// Setup our temporary folder
//
//
// Setup our temporary folder
//
- // Now load the optimization policies
+ // Now load the monitoring policies
//
final List<ToscaPolicy> loadedPolicies = TestUtils.loadPolicies("src/test/resources/vDNS.policy.input.yaml",
service);
//
final List<ToscaPolicy> loadedPolicies = TestUtils.loadPolicies("src/test/resources/vDNS.policy.input.yaml",
service);
// Dump it out as Json
//
LOGGER.info(gson.encode(decision.getKey()));
// Dump it out as Json
//
LOGGER.info(gson.encode(decision.getKey()));
- LOGGER.info("Now testing unloading of policy");
+ //
+ // Ask for a decision based on policy-type
+ //
+ decision = service.makeDecision(requestPolicyType);
+ LOGGER.info("Decision {}", decision);
+
+ assertThat(decision.getKey()).isNotNull();
+ assertThat(decision.getKey().getPolicies().size()).isEqualTo(1);
+ //
+ // Dump it out as Json
+ //
+ LOGGER.info(gson.encode(decision.getKey()));
+ LOGGER.info("Now testing unloading of policy");
for (ToscaPolicy policy : loadedPolicies) {
assertThat(service.unloadPolicy(policy)).isTrue();
}
for (ToscaPolicy policy : loadedPolicies) {
assertThat(service.unloadPolicy(policy)).isTrue();
}