/*-
* ============LICENSE_START=======================================================
- * Copyright (C) 2019-2020 AT&T Intellectual Property. All rights reserved.
+ * Copyright (C) 2019-2021 AT&T Intellectual Property. All rights reserved.
* Modifications Copyright (C) 2021 Nordix Foundation.
* ================================================================================
* Licensed under the Apache License, Version 2.0 (the "License");
import org.onap.policy.common.endpoints.http.client.HttpClient;
import org.onap.policy.common.endpoints.http.client.HttpClientConfigException;
import org.onap.policy.common.endpoints.http.client.HttpClientFactoryInstance;
-import org.onap.policy.common.endpoints.parameters.RestServerParameters;
import org.onap.policy.models.tosca.authorative.concepts.ToscaConceptIdentifier;
import org.onap.policy.models.tosca.authorative.concepts.ToscaServiceTemplate;
import org.slf4j.Logger;
* @param params target specification
* @throws PolicyApiException if an error occurs
*/
- public PolicyApiCaller(RestServerParameters params) throws PolicyApiException {
- BusTopicParams busParams = new BusTopicParams();
- busParams.setClientName("policy-api");
- busParams.setHostname(params.getHost());
- busParams.setManaged(false);
- busParams.setPassword(params.getPassword());
- busParams.setPort(params.getPort());
- busParams.setUseHttps(params.isHttps());
- busParams.setUserName(params.getUserName());
-
+ public PolicyApiCaller(BusTopicParams params) throws PolicyApiException {
try {
- httpClient = makeClient(busParams);
+ params.setClientName("policy-api");
+ httpClient = makeClient(params);
} catch (HttpClientConfigException e) {
- throw new PolicyApiException("connection to host: " + busParams.getHostname(), e);
+ throw new PolicyApiException("connection to host: " + params.getHostname(), e);
}
}
}
} catch (RuntimeException e) {
- logger.warn("policy-api connection error");
+ logger.warn("policy-api connection error, client info: {} ", httpClient);
throw new PolicyApiException(type.toString(), e);
}
}
/* ============LICENSE_START=======================================================
* ONAP
* ================================================================================
- * Copyright (C) 2019 AT&T Intellectual Property. All rights reserved.
+ * Copyright (C) 2019, 2021 AT&T Intellectual Property. All rights reserved.
* Modifications Copyright (C) 2021 Nordix Foundation.
* ================================================================================
* Licensed under the Apache License, Version 2.0 (the "License");
import java.util.List;
import java.util.Map;
import org.apache.commons.lang3.tuple.Pair;
-import org.onap.policy.common.endpoints.parameters.RestServerParameters;
+import org.onap.policy.common.endpoints.event.comm.bus.internal.BusTopicParams;
import org.onap.policy.models.decisions.concepts.DecisionRequest;
import org.onap.policy.models.decisions.concepts.DecisionResponse;
import org.onap.policy.models.tosca.authorative.concepts.ToscaConceptIdentifier;
* @param pathForData Local Path
* @param policyApiParameters API rest parameters
*/
- void initialize(Path pathForData, RestServerParameters policyApiParameters)
+ void initialize(Path pathForData, BusTopicParams policyApiParameters)
throws XacmlApplicationException;
/**
* ============LICENSE_START=======================================================
* ONAP
* ================================================================================
- * Copyright (C) 2019-2020 AT&T Intellectual Property. All rights reserved.
+ * Copyright (C) 2019-2021 AT&T Intellectual Property. All rights reserved.
* Modifications Copyright (C) 2021 Nordix Foundation.
* ================================================================================
* Licensed under the Apache License, Version 2.0 (the "License");
import oasis.names.tc.xacml._3_0.core.schema.wd_17.RuleType;
import oasis.names.tc.xacml._3_0.core.schema.wd_17.TargetType;
import org.apache.commons.lang3.tuple.Pair;
-import org.onap.policy.common.endpoints.parameters.RestServerParameters;
+import org.onap.policy.common.endpoints.event.comm.bus.internal.BusTopicParams;
import org.onap.policy.common.utils.coder.CoderException;
import org.onap.policy.common.utils.coder.StandardCoder;
import org.onap.policy.common.utils.coder.StandardYamlCoder;
private final Map<ToscaConceptIdentifier, MatchablePolicyType> matchableCache = new HashMap<>();
@Setter
- private RestServerParameters apiRestParameters;
+ private BusTopicParams apiRestParameters;
@Setter
private Path pathForData;
policyTemplate = api.getPolicyType(policyTypeId);
} catch (PolicyApiException e) {
LOGGER.error("Failed to make API call", e);
- LOGGER.error("parameters: {} ", this.apiRestParameters);
return null;
}
LOGGER.info("Successfully pulled {}", policyTypeId);
* ============LICENSE_START=======================================================
* ONAP
* ================================================================================
- * Copyright (C) 2019-2020 AT&T Intellectual Property. All rights reserved.
+ * Copyright (C) 2019-2021 AT&T Intellectual Property. All rights reserved.
* Modifications Copyright (C) 2021 Nordix Foundation.
* ================================================================================
* Licensed under the Apache License, Version 2.0 (the "License");
import java.util.Properties;
import lombok.Getter;
import org.apache.commons.lang3.tuple.Pair;
-import org.onap.policy.common.endpoints.parameters.RestServerParameters;
+import org.onap.policy.common.endpoints.event.comm.bus.internal.BusTopicParams;
import org.onap.policy.models.decisions.concepts.DecisionRequest;
import org.onap.policy.models.decisions.concepts.DecisionResponse;
import org.onap.policy.models.tosca.authorative.concepts.ToscaConceptIdentifier;
private Path pathForData = null;
@Getter
- private RestServerParameters policyApiParameters;
+ private BusTopicParams policyApiParameters;
private Properties pdpProperties = null;
private PDPEngine pdpEngine = null;
private Map<ToscaPolicy, Path> mapLoadedPolicies = new HashMap<>();
}
@Override
- public void initialize(Path pathForData, RestServerParameters policyApiParameters)
+ public void initialize(Path pathForData, BusTopicParams policyApiParameters)
throws XacmlApplicationException {
//
// Save our path
/*-
* ============LICENSE_START=======================================================
- * Copyright (C) 2019 AT&T Intellectual Property. All rights reserved.
+ * Copyright (C) 2019, 2021 AT&T Intellectual Property. All rights reserved.
* Modifications Copyright (C) 2021 Nordix Foundation.
* ================================================================================
* Licensed under the Apache License, Version 2.0 (the "License");
import org.onap.policy.common.endpoints.http.client.HttpClientConfigException;
import org.onap.policy.common.endpoints.http.server.HttpServletServer;
import org.onap.policy.common.endpoints.http.server.HttpServletServerFactoryInstance;
-import org.onap.policy.common.endpoints.parameters.RestServerParameters;
import org.onap.policy.common.endpoints.properties.PolicyEndPointProperties;
import org.onap.policy.common.gson.GsonMessageBodyHandler;
import org.onap.policy.common.utils.network.NetworkUtil;
private static final String UNKNOWN_TYPE = "unknown";
private static int port;
- private static RestServerParameters clientParams;
+ private static BusTopicParams clientParams;
private PolicyApiCaller api;
public static void setUpBeforeClass() throws Exception {
port = NetworkUtil.allocPort();
- clientParams = mock(RestServerParameters.class);
- when(clientParams.getHost()).thenReturn("localhost");
+ clientParams = mock(BusTopicParams.class);
+ when(clientParams.getHostname()).thenReturn("localhost");
when(clientParams.getPort()).thenReturn(port);
Properties props = new Properties();
final String svcpfx =
PolicyEndPointProperties.PROPERTY_HTTP_SERVER_SERVICES + "." + CLIENT_NAME;
- props.setProperty(svcpfx + PolicyEndPointProperties.PROPERTY_HTTP_HOST_SUFFIX, clientParams.getHost());
+ props.setProperty(svcpfx + PolicyEndPointProperties.PROPERTY_HTTP_HOST_SUFFIX, clientParams.getHostname());
props.setProperty(svcpfx + PolicyEndPointProperties.PROPERTY_HTTP_PORT_SUFFIX,
Integer.toString(clientParams.getPort()));
props.setProperty(svcpfx + PolicyEndPointProperties.PROPERTY_HTTP_REST_CLASSES_SUFFIX,
HttpServletServerFactoryInstance.getServerFactory().build(props).forEach(HttpServletServer::start);
- assertTrue(NetworkUtil.isTcpPortOpen(clientParams.getHost(), clientParams.getPort(), 100, 100));
+ assertTrue(NetworkUtil.isTcpPortOpen(clientParams.getHostname(), clientParams.getPort(), 100, 100));
}
@AfterClass
/*-
* ============LICENSE_START=======================================================
- * Copyright (C) 2019-2020 AT&T Intellectual Property. All rights reserved.
+ * Copyright (C) 2019-2021 AT&T Intellectual Property. All rights reserved.
* ================================================================================
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
import org.junit.ClassRule;
import org.junit.Test;
import org.junit.rules.TemporaryFolder;
+import org.onap.policy.common.endpoints.event.comm.bus.internal.BusTopicParams;
import org.onap.policy.common.endpoints.http.server.HttpServletServer;
import org.onap.policy.common.endpoints.http.server.HttpServletServerFactoryInstance;
-import org.onap.policy.common.endpoints.parameters.RestServerParameters;
import org.onap.policy.common.endpoints.properties.PolicyEndPointProperties;
import org.onap.policy.common.gson.GsonMessageBodyHandler;
import org.onap.policy.common.utils.coder.CoderException;
private static final String CLIENT_NAME = "policy-api";
private static final StandardYamlCoder yamlCoder = new StandardYamlCoder();
private static int port;
- private static RestServerParameters clientParams;
+ private static BusTopicParams clientParams;
private static ToscaServiceTemplate testTemplate;
@ClassRule
//
port = NetworkUtil.allocPort();
- clientParams = mock(RestServerParameters.class);
- when(clientParams.getHost()).thenReturn("localhost");
+ clientParams = mock(BusTopicParams.class);
+ when(clientParams.getHostname()).thenReturn("localhost");
when(clientParams.getPort()).thenReturn(port);
Properties props = new Properties();
final String svcpfx =
PolicyEndPointProperties.PROPERTY_HTTP_SERVER_SERVICES + "." + CLIENT_NAME;
- props.setProperty(svcpfx + PolicyEndPointProperties.PROPERTY_HTTP_HOST_SUFFIX, clientParams.getHost());
+ props.setProperty(svcpfx + PolicyEndPointProperties.PROPERTY_HTTP_HOST_SUFFIX, clientParams.getHostname());
props.setProperty(svcpfx + PolicyEndPointProperties.PROPERTY_HTTP_PORT_SUFFIX,
Integer.toString(clientParams.getPort()));
props.setProperty(svcpfx + PolicyEndPointProperties.PROPERTY_HTTP_REST_CLASSES_SUFFIX,
HttpServletServerFactoryInstance.getServerFactory().build(props).forEach(HttpServletServer::start);
- assertTrue(NetworkUtil.isTcpPortOpen(clientParams.getHost(), clientParams.getPort(), 100, 100));
+ assertTrue(NetworkUtil.isTcpPortOpen(clientParams.getHostname(), clientParams.getPort(), 100, 100));
//
// Load our test policy type
//
import org.junit.runner.RunWith;
import org.mockito.Mock;
import org.mockito.junit.MockitoJUnitRunner;
-import org.onap.policy.common.endpoints.parameters.RestServerParameters;
+import org.onap.policy.common.endpoints.event.comm.bus.internal.BusTopicParams;
import org.onap.policy.models.decisions.concepts.DecisionRequest;
import org.onap.policy.models.decisions.concepts.DecisionResponse;
import org.onap.policy.models.tosca.authorative.concepts.ToscaPolicy;
private static final String POLICY_NAME = "my-name";
private static final String POLICY_VERSION = "1.2.3";
private static final String POLICY_TYPE = "my-type";
- private static final RestServerParameters apiRestParameters = new RestServerParameters();
+ private static final BusTopicParams apiRestParameters = new BusTopicParams();
@Mock
private ToscaPolicyTranslator trans;
import org.junit.Test;
import org.junit.rules.TemporaryFolder;
import org.junit.runners.MethodSorters;
-import org.onap.policy.common.endpoints.parameters.RestServerParameters;
+import org.onap.policy.common.endpoints.event.comm.bus.internal.BusTopicParams;
import org.onap.policy.common.utils.coder.CoderException;
import org.onap.policy.common.utils.coder.StandardCoder;
import org.onap.policy.common.utils.resources.TextFileUtils;
private static final Logger LOGGER = LoggerFactory.getLogger(GuardPdpApplicationTest.class);
private static Properties properties = new Properties();
private static File propertiesFile;
- private static RestServerParameters clientParams = new RestServerParameters();
+ private static BusTopicParams clientParams = new BusTopicParams();
private static XacmlApplicationServiceProvider service;
private static DecisionRequest requestVfCount;
private static StandardCoder gson = new StandardCoder();
* ============LICENSE_START=======================================================
* ONAP
* ================================================================================
- * Copyright (C) 2020 AT&T Intellectual Property. All rights reserved.
+ * Copyright (C) 2020-2021 AT&T Intellectual Property. All rights reserved.
* ================================================================================
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
import org.junit.Test;
import org.junit.rules.TemporaryFolder;
import org.junit.runners.MethodSorters;
-import org.onap.policy.common.endpoints.parameters.RestServerParameters;
+import org.onap.policy.common.endpoints.event.comm.bus.internal.BusTopicParams;
import org.onap.policy.common.utils.coder.CoderException;
import org.onap.policy.common.utils.coder.StandardCoder;
import org.onap.policy.common.utils.resources.TextFileUtils;
private static final Logger LOGGER = LoggerFactory.getLogger(SonCoordinationTest.class);
private static Properties properties = new Properties();
private static File propertiesFile;
- private static RestServerParameters clientParams = new RestServerParameters();
+ private static BusTopicParams clientParams = new BusTopicParams();
private static XacmlApplicationServiceProvider service;
private static DecisionRequest requestVpciNode1;
private static DecisionRequest requestVsonhNode1;
* ============LICENSE_START=======================================================
* ONAP
* ================================================================================
- * Copyright (C) 2020 AT&T Intellectual Property. All rights reserved.
+ * Copyright (C) 2020-2021 AT&T Intellectual Property. All rights reserved.
* Modifications Copyright (C) 2021 Nordix Foundation.
* ================================================================================
* Licensed under the Apache License, Version 2.0 (the "License");
import java.nio.file.Path;
import java.util.Arrays;
-import org.onap.policy.common.endpoints.parameters.RestServerParameters;
+import org.onap.policy.common.endpoints.event.comm.bus.internal.BusTopicParams;
import org.onap.policy.models.tosca.authorative.concepts.ToscaConceptIdentifier;
import org.onap.policy.pdp.xacml.application.common.ToscaPolicyTranslator;
import org.onap.policy.pdp.xacml.application.common.XacmlApplicationException;
}
@Override
- public void initialize(Path pathForData, RestServerParameters policyApiParameters)
+ public void initialize(Path pathForData, BusTopicParams policyApiParameters)
throws XacmlApplicationException {
//
// Store our API parameters and path for translator so it
* ============LICENSE_START=======================================================
* ONAP
* ================================================================================
- * Copyright (C) 2020 AT&T Intellectual Property. All rights reserved.
+ * Copyright (C) 2020-2021 AT&T Intellectual Property. All rights reserved.
* Modifications Copyright (C) 2021 Nordix Foundation.
* ================================================================================
* Licensed under the Apache License, Version 2.0 (the "License");
import org.junit.Test;
import org.junit.rules.TemporaryFolder;
import org.junit.runners.MethodSorters;
-import org.onap.policy.common.endpoints.parameters.RestServerParameters;
+import org.onap.policy.common.endpoints.event.comm.bus.internal.BusTopicParams;
import org.onap.policy.common.utils.coder.CoderException;
import org.onap.policy.common.utils.coder.StandardCoder;
import org.onap.policy.common.utils.resources.ResourceUtils;
private static XacmlApplicationServiceProvider service;
private static StandardCoder gson = new StandardCoder();
private static DecisionRequest baseRequest;
- private static RestServerParameters clientParams;
+ private static BusTopicParams clientParams;
@ClassRule
public static final TemporaryFolder policyFolder = new TemporaryFolder();
*/
@BeforeClass
public static void setUp() throws Exception {
- clientParams = mock(RestServerParameters.class);
- when(clientParams.getHost()).thenReturn("localhost");
+ clientParams = mock(BusTopicParams.class);
+ when(clientParams.getHostname()).thenReturn("localhost");
when(clientParams.getPort()).thenReturn(6969);
//
// Load Single Decision Request
* ============LICENSE_START=======================================================
* ONAP
* ================================================================================
- * Copyright (C) 2019-2020 AT&T Intellectual Property. All rights reserved.
+ * Copyright (C) 2019-2021 AT&T Intellectual Property. All rights reserved.
* Modifications Copyright (C) 2021 Nordix Foundation.
* ================================================================================
* Licensed under the Apache License, Version 2.0 (the "License");
import org.junit.Test;
import org.junit.rules.TemporaryFolder;
import org.junit.runners.MethodSorters;
-import org.onap.policy.common.endpoints.parameters.RestServerParameters;
+import org.onap.policy.common.endpoints.event.comm.bus.internal.BusTopicParams;
import org.onap.policy.common.utils.coder.CoderException;
import org.onap.policy.common.utils.coder.StandardCoder;
import org.onap.policy.common.utils.resources.TextFileUtils;
private static DecisionRequest requestPolicyType;
private static StandardCoder gson = new StandardCoder();
- private static RestServerParameters clientParams = new RestServerParameters();
+ private static BusTopicParams clientParams = new BusTopicParams();
@ClassRule
public static final TemporaryFolder policyFolder = new TemporaryFolder();
* ============LICENSE_START=======================================================
* ONAP
* ================================================================================
- * Copyright (C) 2019-2020 AT&T Intellectual Property. All rights reserved.
+ * Copyright (C) 2019-2021 AT&T Intellectual Property. All rights reserved.
* Modifications Copyright (C) 2021 Nordix Foundation.
* ================================================================================
* Licensed under the Apache License, Version 2.0 (the "License");
import org.junit.Test;
import org.junit.rules.TemporaryFolder;
import org.junit.runners.MethodSorters;
-import org.onap.policy.common.endpoints.parameters.RestServerParameters;
+import org.onap.policy.common.endpoints.event.comm.bus.internal.BusTopicParams;
import org.onap.policy.common.utils.coder.CoderException;
import org.onap.policy.common.utils.coder.StandardCoder;
import org.onap.policy.common.utils.resources.ResourceUtils;
private static XacmlApplicationServiceProvider service;
private static StandardCoder gson = new StandardCoder();
private static DecisionRequest baseRequest;
- private static RestServerParameters clientParams;
+ private static BusTopicParams clientParams;
@ClassRule
public static final TemporaryFolder policyFolder = new TemporaryFolder();
*/
@BeforeClass
public static void setUp() throws Exception {
- clientParams = mock(RestServerParameters.class);
- when(clientParams.getHost()).thenReturn("localhost");
+ clientParams = mock(BusTopicParams.class);
+ when(clientParams.getHostname()).thenReturn("localhost");
when(clientParams.getPort()).thenReturn(6969);
//
// Load Single Decision Request
* ============LICENSE_START=======================================================
* ONAP
* ================================================================================
- * Copyright (C) 2020 AT&T Intellectual Property. All rights reserved.
+ * Copyright (C) 2020-2021 AT&T Intellectual Property. All rights reserved.
* Modifications Copyright (C) 2021 Nordix Foundation.
* ================================================================================
* Licensed under the Apache License, Version 2.0 (the "License");
import org.junit.ClassRule;
import org.junit.Test;
import org.junit.rules.TemporaryFolder;
-import org.onap.policy.common.endpoints.parameters.RestServerParameters;
+import org.onap.policy.common.endpoints.event.comm.bus.internal.BusTopicParams;
import org.onap.policy.common.utils.coder.StandardYamlCoder;
import org.onap.policy.common.utils.resources.ResourceUtils;
import org.onap.policy.common.utils.resources.TextFileUtils;
private static final StandardYamlCoder yamlCoder = new StandardYamlCoder();
private static Properties properties = new Properties();
private static File propertiesFile;
- private static RestServerParameters clientParams = new RestServerParameters();
+ private static BusTopicParams clientParams = new BusTopicParams();
private static NativePdpApplication service;
private static Request request;
* ============LICENSE_START=======================================================
* ONAP
* ================================================================================
- * Copyright (C) 2019-2020 AT&T Intellectual Property. All rights reserved.
+ * Copyright (C) 2019-2021 AT&T Intellectual Property. All rights reserved.
* Modifications Copyright (C) 2021 Nordix Foundation.
* ================================================================================
* Licensed under the Apache License, Version 2.0 (the "License");
import java.util.List;
import java.util.Map;
import org.apache.commons.lang3.tuple.Pair;
-import org.onap.policy.common.endpoints.parameters.RestServerParameters;
+import org.onap.policy.common.endpoints.event.comm.bus.internal.BusTopicParams;
import org.onap.policy.models.decisions.concepts.DecisionRequest;
import org.onap.policy.models.decisions.concepts.DecisionResponse;
import org.onap.policy.models.tosca.authorative.concepts.ToscaConceptIdentifier;
}
@Override
- public void initialize(Path pathForData, RestServerParameters policyApiParameters)
+ public void initialize(Path pathForData, BusTopicParams policyApiParameters)
throws XacmlApplicationException {
//
// Store our API parameters and path for translator so it
* ============LICENSE_START=======================================================
* ONAP
* ================================================================================
- * Copyright (C) 2019-2020 AT&T Intellectual Property. All rights reserved.
+ * Copyright (C) 2019-2021 AT&T Intellectual Property. All rights reserved.
* Modifications Copyright (C) 2019-2021 Nordix Foundation.
* ================================================================================
* Licensed under the Apache License, Version 2.0 (the "License");
import org.junit.Test;
import org.junit.rules.TemporaryFolder;
import org.junit.runners.MethodSorters;
-import org.onap.policy.common.endpoints.parameters.RestServerParameters;
+import org.onap.policy.common.endpoints.event.comm.bus.internal.BusTopicParams;
import org.onap.policy.common.utils.coder.CoderException;
import org.onap.policy.common.utils.coder.StandardCoder;
import org.onap.policy.common.utils.coder.StandardYamlCoder;
private static XacmlApplicationServiceProvider service;
private static StandardCoder gson = new StandardCoder();
private static DecisionRequest baseRequest;
- private static RestServerParameters clientParams;
+ private static BusTopicParams clientParams;
private static String[] listPolicyTypeFiles = {
"onap.policies.Optimization",
"onap.policies.optimization.Resource",
*/
@BeforeClass
public static void setUp() throws Exception {
- clientParams = mock(RestServerParameters.class);
- when(clientParams.getHost()).thenReturn("localhost");
+ clientParams = mock(BusTopicParams.class);
+ when(clientParams.getHostname()).thenReturn("localhost");
when(clientParams.getPort()).thenReturn(6969);
//
// Load Single Decision Request
import lombok.Getter;
import lombok.Setter;
+import org.apache.commons.lang3.StringUtils;
+import org.onap.policy.common.endpoints.event.comm.bus.internal.BusTopicParams;
import org.onap.policy.common.endpoints.parameters.RestServerParameters;
import org.onap.policy.common.endpoints.parameters.TopicParameterGroup;
import org.onap.policy.common.parameters.GroupValidationResult;
private String pdpGroup;
private String pdpType;
private RestServerParameters restServerParameters;
- private RestServerParameters policyApiParameters;
+ private BusTopicParams policyApiParameters;
private TopicParameterGroup topicParameterGroup;
private String applicationPath;
* @param pdpGroup the pdp group name
*/
public XacmlPdpParameterGroup(final String name, final String pdpGroup, final String pdpType,
- final RestServerParameters restServerParameters, final RestServerParameters policyApiParameters,
+ final RestServerParameters restServerParameters, final BusTopicParams policyApiParameters,
final TopicParameterGroup topicParameterGroup, final String applicationPath) {
this.name = name;
this.pdpGroup = pdpGroup;
}
if (policyApiParameters == null) {
validationResult.setResult(PARAM_POLICY_API, ValidationStatus.INVALID,
- "must have policyApiParameters to configure xacml pdp rest server");
- } else {
- // set the name - this only really matters for validation messages
- policyApiParameters.setName(PARAM_POLICY_API);
- validationResult.setResult(PARAM_POLICY_API, policyApiParameters.validate());
+ "must have policyApiParameters to configure xacml pdp rest server");
+ } else if (StringUtils.isBlank(policyApiParameters.getHostname())) {
+ validationResult.setResult(PARAM_POLICY_API, ValidationStatus.INVALID,
+ "must have hostname to configure xacml pdp api client");
}
if (topicParameterGroup == null) {
validationResult.setResult(PARAM_TOPIC_PARAMETER_GROUP, ValidationStatus.INVALID,
/*-
* ============LICENSE_START=======================================================
- * Copyright (C) 2019-2020 AT&T Intellectual Property. All rights reserved.
+ * Copyright (C) 2019-2021 AT&T Intellectual Property. All rights reserved.
* Modifications Copyright (C) 2021 Nordix Foundation.
* ================================================================================
* Licensed under the Apache License, Version 2.0 (the "License");
import java.util.stream.Collectors;
import lombok.Getter;
import lombok.Setter;
-import org.onap.policy.common.endpoints.parameters.RestServerParameters;
+import org.onap.policy.common.endpoints.event.comm.bus.internal.BusTopicParams;
import org.onap.policy.models.decisions.concepts.DecisionRequest;
import org.onap.policy.models.tosca.authorative.concepts.ToscaConceptIdentifier;
import org.onap.policy.models.tosca.authorative.concepts.ToscaPolicy;
/**
* One time to initialize the applications upon startup.
*/
- public XacmlPdpApplicationManager(Path applicationPath, RestServerParameters policyApiParameters) {
+ public XacmlPdpApplicationManager(Path applicationPath, BusTopicParams policyApiParameters) {
if (LOGGER.isInfoEnabled()) {
LOGGER.info("Initialization applications {} {}", applicationPath.toAbsolutePath(), policyApiParameters);
}
}
private void initializeApplicationPath(Path basePath, XacmlApplicationServiceProvider application,
- RestServerParameters policyApiParameters) throws XacmlApplicationException {
+ BusTopicParams policyApiParameters) throws XacmlApplicationException {
//
// Making an assumption that all application names are unique, and
// they can result in a valid directory being created.
import java.util.Map;
import java.util.TreeMap;
import org.onap.policy.common.endpoints.parameters.TopicParameters;
-import org.onap.policy.common.parameters.ParameterGroup;
import org.onap.policy.common.utils.coder.Coder;
import org.onap.policy.common.utils.coder.CoderException;
import org.onap.policy.common.utils.coder.StandardCoder;
private static final String PASS_KEY = "password";
private static final String USER_KEY = "userName";
private static final String PORT_KEY = "port";
- private static final String HOST_KEY = "host";
+ private static final String SERVER_HOST_KEY = "host";
+ private static final String API_HOST_KEY = "hostname";
private static final String AAF_KEY = "aaf";
- private static final String HTTPS_KEY = "https";
+ private static final String HTTPS_KEY = "useHttps";
private static final String REST_SERVER_PASS = "zb!XztG34";
private static final String REST_SERVER_USER = "healthcheck";
map.put(AAF_KEY, REST_SERVER_AAF);
if (!isEmpty) {
- map.put(HOST_KEY, REST_SERVER_HOST);
+ map.put(SERVER_HOST_KEY, REST_SERVER_HOST);
map.put(PORT_KEY, REST_SERVER_PORT);
map.put(USER_KEY, REST_SERVER_USER);
map.put(PASS_KEY, REST_SERVER_PASS);
final Map<String, Object> map = new TreeMap<>();
map.put(HTTPS_KEY, REST_SERVER_HTTPS);
map.put(AAF_KEY, REST_SERVER_AAF);
- map.put(HOST_KEY, REST_SERVER_HOST);
+ map.put(SERVER_HOST_KEY, REST_SERVER_HOST);
map.put(PORT_KEY, port);
map.put(USER_KEY, REST_SERVER_USER);
map.put(PASS_KEY, REST_SERVER_PASS);
* @param clazz class of object to be created from the map
* @return a new object represented by the map
*/
- public <T extends ParameterGroup> T toObject(final Map<String, Object> source, final Class<T> clazz) {
+ public <T> T toObject(final Map<String, Object> source, final Class<T> clazz) {
try {
return coder.decode(coder.encode(source), clazz);
map.put(AAF_KEY, POLICY_API_AAF);
if (!isEmpty) {
- map.put(HOST_KEY, POLICY_API_HOST);
+ map.put(API_HOST_KEY, POLICY_API_HOST);
map.put(PORT_KEY, POLICY_API_PORT);
map.put(USER_KEY, POLICY_API_USER);
map.put(PASS_KEY, POLICY_API_PASS);
package org.onap.policy.pdpx.main.parameters;
+import static org.assertj.core.api.Assertions.assertThat;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertTrue;
import org.junit.ClassRule;
import org.junit.Test;
import org.junit.rules.TemporaryFolder;
+import org.onap.policy.common.endpoints.event.comm.bus.internal.BusTopicParams;
import org.onap.policy.common.endpoints.parameters.RestServerParameters;
import org.onap.policy.common.endpoints.parameters.TopicParameterGroup;
import org.onap.policy.common.parameters.GroupValidationResult;
public void testXacmlPdpParameterGroup() throws IOException {
final RestServerParameters restServerParameters =
testData.toObject(testData.getRestServerParametersMap(false), RestServerParameters.class);
- final RestServerParameters policyApiParameters =
- testData.toObject(testData.getPolicyApiParametersMap(false), RestServerParameters.class);
+ final BusTopicParams policyApiParameters =
+ testData.toObject(testData.getPolicyApiParametersMap(false), BusTopicParams.class);
final TopicParameterGroup topicParameterGroup =
testData.toObject(testData.getTopicParametersMap(false), TopicParameterGroup.class);
final XacmlPdpParameterGroup pdpxParameters =
CommonTestData.PDPX_GROUP, "flavor", restServerParameters, policyApiParameters,
topicParameterGroup, applicationPath.getAbsolutePath());
final GroupValidationResult validationResult = pdpxParameters.validate();
+ assertThat(validationResult.getResult()).isNull();
assertTrue(validationResult.isValid());
assertEquals(restServerParameters.getHost(), pdpxParameters.getRestServerParameters().getHost());
assertEquals(restServerParameters.getPort(), pdpxParameters.getRestServerParameters().getPort());
public void testXacmlPdpParameterGroup_NullParameterGroupName() {
final RestServerParameters restServerParameters =
testData.toObject(testData.getRestServerParametersMap(false), RestServerParameters.class);
- final RestServerParameters policyApiParameters =
- testData.toObject(testData.getPolicyApiParametersMap(false), RestServerParameters.class);
+ final BusTopicParams policyApiParameters =
+ testData.toObject(testData.getPolicyApiParametersMap(false), BusTopicParams.class);
final TopicParameterGroup topicParameterGroup =
testData.toObject(testData.getTopicParametersMap(false), TopicParameterGroup.class);
final XacmlPdpParameterGroup pdpxParameters = new XacmlPdpParameterGroup(null, CommonTestData.PDPX_GROUP,
public void testXacmlPdpParameterGroup_EmptyParameterGroupName() {
final RestServerParameters restServerParameters =
testData.toObject(testData.getRestServerParametersMap(false), RestServerParameters.class);
- final RestServerParameters policyApiParameters =
- testData.toObject(testData.getPolicyApiParametersMap(false), RestServerParameters.class);
+ final BusTopicParams policyApiParameters =
+ testData.toObject(testData.getPolicyApiParametersMap(false), BusTopicParams.class);
final TopicParameterGroup topicParameterGroup =
testData.toObject(testData.getTopicParametersMap(false), TopicParameterGroup.class);
final XacmlPdpParameterGroup pdpxParameters = new XacmlPdpParameterGroup("", CommonTestData.PDPX_GROUP,
public void testXacmlPdpParameterGroup_NullPdpGroup() {
final RestServerParameters restServerParameters =
testData.toObject(testData.getRestServerParametersMap(false), RestServerParameters.class);
- final RestServerParameters policyApiParameters =
- testData.toObject(testData.getPolicyApiParametersMap(false), RestServerParameters.class);
+ final BusTopicParams policyApiParameters =
+ testData.toObject(testData.getPolicyApiParametersMap(false), BusTopicParams.class);
final TopicParameterGroup topicParameterGroup =
testData.toObject(testData.getTopicParametersMap(false), TopicParameterGroup.class);
final XacmlPdpParameterGroup pdpxParameters =
public void testXacmlPdpParameterGroup_EmptyPdpGroup() {
final RestServerParameters restServerParameters =
testData.toObject(testData.getRestServerParametersMap(false), RestServerParameters.class);
- final RestServerParameters policyApiParameters =
- testData.toObject(testData.getPolicyApiParametersMap(false), RestServerParameters.class);
+ final BusTopicParams policyApiParameters =
+ testData.toObject(testData.getPolicyApiParametersMap(false), BusTopicParams.class);
final TopicParameterGroup topicParameterGroup =
testData.toObject(testData.getTopicParametersMap(false), TopicParameterGroup.class);
final XacmlPdpParameterGroup pdpxParameters =
public void testXacmlPdpParameterGroup_EmptyRestServerParameters() {
final RestServerParameters restServerParameters =
testData.toObject(testData.getRestServerParametersMap(true), RestServerParameters.class);
- final RestServerParameters policyApiParameters =
- testData.toObject(testData.getPolicyApiParametersMap(false), RestServerParameters.class);
+ final BusTopicParams policyApiParameters =
+ testData.toObject(testData.getPolicyApiParametersMap(false), BusTopicParams.class);
final TopicParameterGroup topicParameterGroup =
testData.toObject(testData.getTopicParametersMap(false), TopicParameterGroup.class);
final XacmlPdpParameterGroup pdpxParameters =
public void testXacmlPdpParameterGroup_EmptyPolicyApiParameters() {
final RestServerParameters restServerParameters =
testData.toObject(testData.getRestServerParametersMap(false), RestServerParameters.class);
- final RestServerParameters policyApiParameters =
- testData.toObject(testData.getPolicyApiParametersMap(true), RestServerParameters.class);
+ final BusTopicParams policyApiParameters =
+ testData.toObject(testData.getPolicyApiParametersMap(true), BusTopicParams.class);
final TopicParameterGroup topicParameterGroup =
testData.toObject(testData.getTopicParametersMap(false), TopicParameterGroup.class);
final XacmlPdpParameterGroup pdpxParameters =
topicParameterGroup, applicationPath.getAbsolutePath());
final GroupValidationResult validationResult = pdpxParameters.validate();
assertFalse(validationResult.isValid());
- assertTrue(validationResult.getResult()
- .contains("parameter group \"policyApiParameters\""));
+ assertThat(validationResult.getResult())
+ .contains("field \"policyApiParameters\"");
}
@Test
public void testXacmlPdpParameterGroup_EmptyTopicParameterGroup() {
final RestServerParameters restServerParameters =
testData.toObject(testData.getRestServerParametersMap(false), RestServerParameters.class);
- final RestServerParameters policyApiParameters =
- testData.toObject(testData.getPolicyApiParametersMap(false), RestServerParameters.class);
+ final BusTopicParams policyApiParameters =
+ testData.toObject(testData.getPolicyApiParametersMap(false), BusTopicParams.class);
final TopicParameterGroup topicParameterGroup =
testData.toObject(testData.getTopicParametersMap(true), TopicParameterGroup.class);
final XacmlPdpParameterGroup pdpxParameters =
private static File propertiesFile;
private static XacmlApplicationServiceProvider service;
- private static RestServerParameters policyApiParameters;
+ private static BusTopicParams policyApiParameters;
@ClassRule
public static final TemporaryFolder appsFolder = new TemporaryFolder();
// Create parameters for XacmlPdPService
RestServerParameters rest = testData.toObject(testData.getRestServerParametersMap(port),
RestServerParameters.class);
- policyApiParameters = testData.toObject(testData.getPolicyApiParametersMap(false), RestServerParameters.class);
+ policyApiParameters = testData.toObject(testData.getPolicyApiParametersMap(false), BusTopicParams.class);
TopicParameterGroup topicParameterGroup = testData.toObject(testData.getTopicParametersMap(false),
TopicParameterGroup.class);
XacmlPdpParameterGroup params =
//
RestServerParameters rest =
testData.toObject(testData.getRestServerParametersMap(port), RestServerParameters.class);
- RestServerParameters policyApiParameters =
- testData.toObject(testData.getPolicyApiParametersMap(false), RestServerParameters.class);
+ BusTopicParams policyApiParameters =
+ testData.toObject(testData.getPolicyApiParametersMap(false), BusTopicParams.class);
TopicParameterGroup topicParameterGroup =
testData.toObject(testData.getTopicParametersMap(false), TopicParameterGroup.class);
XacmlPdpParameterGroup params =
/*-
* ============LICENSE_START=======================================================
- * Copyright (C) 2020 AT&T Intellectual Property. All rights reserved.
+ * Copyright (C) 2020-2021 AT&T Intellectual Property. All rights reserved.
* ================================================================================
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
import org.junit.ClassRule;
import org.junit.Test;
import org.junit.rules.TemporaryFolder;
-import org.onap.policy.common.endpoints.parameters.RestServerParameters;
+import org.onap.policy.common.endpoints.event.comm.bus.internal.BusTopicParams;
import org.onap.policy.common.utils.coder.CoderException;
import org.onap.policy.common.utils.coder.StandardYamlCoder;
import org.onap.policy.common.utils.resources.ResourceUtils;
public class XacmlPdpApplicationManagerTest {
private static final Logger LOGGER = LoggerFactory.getLogger(XacmlPdpApplicationManagerTest.class);
private static final StandardYamlCoder yamlCoder = new StandardYamlCoder();
- private static final RestServerParameters params = new RestServerParameters();
+ private static final BusTopicParams params = new BusTopicParams();
private static Path appsDirectory;
private static ToscaServiceTemplate completedJtst;
//
// No need to do more than this
//
- params.setName("policyApiParameters");
+ params.setClientName("policyApiParameters");
//
// Load an example policy
//
"password": "zb!XztG34"
},
"policyApiParameters": {
- "host": "0.0.0.0",
+ "hostname": "0.0.0.0",
"port": 6970,
"userName": "healthcheck",
"password": "zb!XztG34"
"password": "zb!XztG34"
},
"policyApiParameters": {
- "host": "0.0.0.0",
+ "hostname": "0.0.0.0",
"port": 6970,
"userName": "healthcheck",
"password": "zb!XztG34"
"topicCommInfrastructure" : "noop"
}]
}
-}
\ No newline at end of file
+}
"password": "zb!XztG34"
},
"policyApiParameters": {
- "host": "0.0.0.0",
+ "hostname": "0.0.0.0",
"port": 6970,
"userName": "healthcheck",
"password": "zb!XztG34"
"https":true
},
"policyApiParameters": {
- "host": "0.0.0.0",
+ "hostname": "0.0.0.0",
"port": 6970,
"userName": "healthcheck",
"password": "zb!XztG34"
"topicCommInfrastructure" : "noop"
}]
}
-}
\ No newline at end of file
+}
"https":true
},
"policyApiParameters": {
- "host": "0.0.0.0",
+ "hostname": "0.0.0.0",
"port": 6970,
"userName": "healthcheck",
"password": "zb!XztG34"
"topicCommInfrastructure" : "noop"
}]
}
-}
\ No newline at end of file
+}
"https":true
},
"policyApiParameters": {
- "host": "0.0.0.0",
+ "hostname": "0.0.0.0",
"port": 6970,
"userName": "healthcheck",
"password": "zb!XztG34"
"topicCommInfrastructure" : "noop"
}]
}
-}
\ No newline at end of file
+}
"password": ""
},
"policyApiParameters": {
- "host": "0.0.0.0",
+ "hostname": "0.0.0.0",
"port": 6970,
"userName": "healthcheck",
"password": "zb!XztG34"
"https":true
},
"policyApiParameters": {
- "host": "0.0.0.0",
+ "hostname": "0.0.0.0",
"port": 6970,
"userName": "healthcheck",
"password": "zb!XztG34"
"topicCommInfrastructure" : "noop"
}]
}
-}
\ No newline at end of file
+}
"aaf": false
},
"policyApiParameters": {
- "host": "policy-api",
+ "hostname": "policy-api",
"port": 6969,
"userName": "healthcheck",
"password": "zb!XztG34",
- "https": true,
+ "useHttps": true,
"aaf": false
},
"applicationPath": "/opt/app/policy/pdpx/apps",
/*-
* ============LICENSE_START=======================================================
- * Copyright (C) 2020 AT&T Intellectual Property. All rights reserved.
+ * Copyright (C) 2020-2021 AT&T Intellectual Property. All rights reserved.
* ================================================================================
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
import org.junit.ClassRule;
import org.junit.Test;
import org.junit.rules.TemporaryFolder;
-import org.onap.policy.common.endpoints.parameters.RestServerParameters;
+import org.onap.policy.common.endpoints.event.comm.bus.internal.BusTopicParams;
import org.onap.policy.common.utils.coder.CoderException;
import org.onap.policy.common.utils.coder.StandardCoder;
import org.onap.policy.common.utils.resources.TextFileUtils;
// Tell the application to initialize based on the properties file
// we just built for it.
//
- service.initialize(propertiesFile.toPath().getParent(), new RestServerParameters());
+ service.initialize(propertiesFile.toPath().getParent(), new BusTopicParams());
}
@Test