From 9ef4186f69ef694e6251161622a33d7bc1400f39 Mon Sep 17 00:00:00 2001 From: "a.sreekumar" Date: Mon, 1 Jul 2019 14:50:01 +0000 Subject: Remove topic.properties and incorporate into overall config file 1) The properties in the topic.properties file is moved into overall config json file and the topic.properties file is removed. 2) Common parameters such as RestServer and Topic related parameters from policy-common is used. Change-Id: I390bbe3cda101a69e7ce614404ecdfbf98598dd2 Issue-ID: POLICY-1744 Signed-off-by: a.sreekumar --- .../pap/main/parameters/PapParameterGroup.java | 4 +- .../pap/main/parameters/RestServerParameters.java | 52 ---------------------- .../onap/policy/pap/main/rest/PapRestServer.java | 2 +- .../org/onap/policy/pap/main/startstop/Main.java | 14 +----- .../main/startstop/PapCommandLineArguments.java | 1 - .../onap/policy/pap/main/comm/PublisherTest.java | 17 ++++--- .../pap/main/parameters/TestPapParameterGroup.java | 7 ++- .../policy/pap/main/rest/CommonPapRestServer.java | 7 +-- .../onap/policy/pap/main/startstop/TestMain.java | 3 +- .../pap/main/startstop/TestPapActivator.java | 11 ++--- .../test/resources/e2e/PapConfigParameters.json | 12 +++++ .../resources/parameters/MinimumParameters.json | 12 +++++ .../resources/parameters/PapConfigParameters.json | 12 +++++ .../parameters/PapConfigParametersStd.json | 12 +++++ .../parameters/PapConfigParameters_sim.json | 12 +++++ .../src/test/resources/parameters/topic.properties | 22 --------- .../test/resources/parameters/topic_sim.properties | 22 --------- 17 files changed, 85 insertions(+), 137 deletions(-) delete mode 100644 main/src/main/java/org/onap/policy/pap/main/parameters/RestServerParameters.java delete mode 100644 main/src/test/resources/parameters/topic.properties delete mode 100644 main/src/test/resources/parameters/topic_sim.properties (limited to 'main') diff --git a/main/src/main/java/org/onap/policy/pap/main/parameters/PapParameterGroup.java b/main/src/main/java/org/onap/policy/pap/main/parameters/PapParameterGroup.java index 0690fadd..ed1b4adc 100644 --- a/main/src/main/java/org/onap/policy/pap/main/parameters/PapParameterGroup.java +++ b/main/src/main/java/org/onap/policy/pap/main/parameters/PapParameterGroup.java @@ -22,7 +22,8 @@ package org.onap.policy.pap.main.parameters; import lombok.Getter; - +import org.onap.policy.common.endpoints.parameters.RestServerParameters; +import org.onap.policy.common.endpoints.parameters.TopicParameterGroup; import org.onap.policy.common.parameters.ParameterGroupImpl; import org.onap.policy.common.parameters.annotations.NotBlank; import org.onap.policy.common.parameters.annotations.NotNull; @@ -40,6 +41,7 @@ public class PapParameterGroup extends ParameterGroupImpl { private RestServerParameters restServerParameters; private PdpParameters pdpParameters; private PolicyModelsProviderParameters databaseProviderParameters; + private TopicParameterGroup topicParameterGroup; /** * Create the pap parameter group. diff --git a/main/src/main/java/org/onap/policy/pap/main/parameters/RestServerParameters.java b/main/src/main/java/org/onap/policy/pap/main/parameters/RestServerParameters.java deleted file mode 100644 index 99b346e1..00000000 --- a/main/src/main/java/org/onap/policy/pap/main/parameters/RestServerParameters.java +++ /dev/null @@ -1,52 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * Copyright (C) 2019 Nordix Foundation. - * Modifications Copyright (C) 2019 AT&T Intellectual Property. - * ================================================================================ - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - * SPDX-License-Identifier: Apache-2.0 - * ============LICENSE_END========================================================= - */ - -package org.onap.policy.pap.main.parameters; - -import lombok.Getter; -import org.onap.policy.common.parameters.ParameterGroupImpl; -import org.onap.policy.common.parameters.annotations.Min; -import org.onap.policy.common.parameters.annotations.NotBlank; -import org.onap.policy.common.parameters.annotations.NotNull; - -/** - * Class to hold all parameters needed for pap rest server. - * - * @author Ram Krishna Verma (ram.krishna.verma@est.tech) - */ -@NotNull -@NotBlank -@Getter -public class RestServerParameters extends ParameterGroupImpl { - private String host; - - @Min(value = 1) - private int port; - - private String userName; - private String password; - private boolean https; - private boolean aaf; - - public RestServerParameters() { - super("RestServerParameters"); - } -} diff --git a/main/src/main/java/org/onap/policy/pap/main/rest/PapRestServer.java b/main/src/main/java/org/onap/policy/pap/main/rest/PapRestServer.java index 85c6f3c6..c86cb81e 100644 --- a/main/src/main/java/org/onap/policy/pap/main/rest/PapRestServer.java +++ b/main/src/main/java/org/onap/policy/pap/main/rest/PapRestServer.java @@ -27,9 +27,9 @@ import java.util.Properties; import org.onap.policy.common.capabilities.Startable; import org.onap.policy.common.endpoints.http.server.HttpServletServer; +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.pap.main.parameters.RestServerParameters; import org.onap.policy.pap.main.rest.depundep.PdpGroupDeleteControllerV1; import org.onap.policy.pap.main.rest.depundep.PdpGroupDeployControllerV1; import org.slf4j.Logger; diff --git a/main/src/main/java/org/onap/policy/pap/main/startstop/Main.java b/main/src/main/java/org/onap/policy/pap/main/startstop/Main.java index 6351fa80..ba73d354 100644 --- a/main/src/main/java/org/onap/policy/pap/main/startstop/Main.java +++ b/main/src/main/java/org/onap/policy/pap/main/startstop/Main.java @@ -21,10 +21,9 @@ package org.onap.policy.pap.main.startstop; -import java.io.FileInputStream; import java.util.Arrays; import java.util.Properties; - +import org.onap.policy.common.endpoints.utils.ParameterUtils; import org.onap.policy.common.utils.services.Registry; import org.onap.policy.pap.main.PapConstants; import org.onap.policy.pap.main.PolicyPapException; @@ -81,16 +80,7 @@ public class Main { } // Read the properties - final Properties props = new Properties(); - try { - final String propFile = arguments.getFullPropertyFilePath(); - try (FileInputStream stream = new FileInputStream(propFile)) { - props.load(stream); - } - } catch (final Exception e) { - LOGGER.error(START_FAILED, e); - return; - } + Properties props = ParameterUtils.getTopicProperties(parameterGroup.getTopicParameterGroup()); // Initialize database try { diff --git a/main/src/main/java/org/onap/policy/pap/main/startstop/PapCommandLineArguments.java b/main/src/main/java/org/onap/policy/pap/main/startstop/PapCommandLineArguments.java index fd728d28..c917082e 100644 --- a/main/src/main/java/org/onap/policy/pap/main/startstop/PapCommandLineArguments.java +++ b/main/src/main/java/org/onap/policy/pap/main/startstop/PapCommandLineArguments.java @@ -163,7 +163,6 @@ public class PapCommandLineArguments { */ public void validate() throws PolicyPapException { validateReadableFile("policy pap configuration", configurationFilePath); - validateReadableFile("policy pap properties", propertyFilePath); } /** diff --git a/main/src/test/java/org/onap/policy/pap/main/comm/PublisherTest.java b/main/src/test/java/org/onap/policy/pap/main/comm/PublisherTest.java index f15b2a04..cadae12b 100644 --- a/main/src/test/java/org/onap/policy/pap/main/comm/PublisherTest.java +++ b/main/src/test/java/org/onap/policy/pap/main/comm/PublisherTest.java @@ -26,8 +26,6 @@ import static org.junit.Assert.assertNotNull; import static org.junit.Assert.assertNull; import static org.junit.Assert.assertTrue; -import java.io.File; -import java.io.FileInputStream; import java.util.Properties; import java.util.concurrent.ConcurrentLinkedQueue; import java.util.concurrent.Semaphore; @@ -40,14 +38,17 @@ import org.junit.Test; import org.onap.policy.common.endpoints.event.comm.Topic.CommInfrastructure; import org.onap.policy.common.endpoints.event.comm.TopicEndpoint; import org.onap.policy.common.endpoints.event.comm.TopicListener; +import org.onap.policy.common.endpoints.utils.ParameterUtils; import org.onap.policy.common.utils.coder.Coder; import org.onap.policy.common.utils.coder.CoderException; import org.onap.policy.common.utils.coder.StandardCoder; -import org.onap.policy.common.utils.resources.ResourceUtils; import org.onap.policy.models.pdp.concepts.PdpMessage; import org.onap.policy.models.pdp.concepts.PdpStateChange; import org.onap.policy.pap.main.PapConstants; import org.onap.policy.pap.main.PolicyPapException; +import org.onap.policy.pap.main.parameters.PapParameterGroup; +import org.onap.policy.pap.main.parameters.PapParameterHandler; +import org.onap.policy.pap.main.startstop.PapCommandLineArguments; public class PublisherTest extends Threaded { @@ -86,12 +87,10 @@ public class PublisherTest extends Threaded { */ @BeforeClass public static void setUpBeforeClass() throws Exception { - Properties props = new Properties(); - File propFile = new File(ResourceUtils.getFilePath4Resource("parameters/topic.properties")); - try (FileInputStream inp = new FileInputStream(propFile)) { - props.load(inp); - } - + final String[] papConfigParameters = {"-c", "parameters/PapConfigParameters.json"}; + final PapCommandLineArguments arguments = new PapCommandLineArguments(papConfigParameters); + final PapParameterGroup parameterGroup = new PapParameterHandler().getParameters(arguments); + Properties props = ParameterUtils.getTopicProperties(parameterGroup.getTopicParameterGroup()); TopicEndpoint.manager.shutdown(); TopicEndpoint.manager.addTopics(props); diff --git a/main/src/test/java/org/onap/policy/pap/main/parameters/TestPapParameterGroup.java b/main/src/test/java/org/onap/policy/pap/main/parameters/TestPapParameterGroup.java index 6a1fbba2..c22f5e1f 100644 --- a/main/src/test/java/org/onap/policy/pap/main/parameters/TestPapParameterGroup.java +++ b/main/src/test/java/org/onap/policy/pap/main/parameters/TestPapParameterGroup.java @@ -26,6 +26,8 @@ import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertTrue; import org.junit.Test; +import org.onap.policy.common.endpoints.parameters.RestServerParameters; +import org.onap.policy.common.endpoints.parameters.TopicParameterGroup; import org.onap.policy.common.parameters.GroupValidationResult; import org.onap.policy.common.utils.coder.Coder; import org.onap.policy.common.utils.coder.StandardCoder; @@ -50,6 +52,7 @@ public class TestPapParameterGroup { public void testPapParameterGroup() { final PapParameterGroup papParameters = commonTestData.getPapParameterGroup(1); final RestServerParameters restServerParameters = papParameters.getRestServerParameters(); + final TopicParameterGroup topicParameterGroup = papParameters.getTopicParameterGroup(); final GroupValidationResult validationResult = papParameters.validate(); assertTrue(validationResult.isValid()); assertEquals(CommonTestData.PAP_GROUP_NAME, papParameters.getName()); @@ -59,6 +62,8 @@ public class TestPapParameterGroup { assertEquals(restServerParameters.getPassword(), papParameters.getRestServerParameters().getPassword()); assertTrue(papParameters.getRestServerParameters().isHttps()); assertFalse(papParameters.getRestServerParameters().isAaf()); + assertEquals(topicParameterGroup.getTopicSinks(), papParameters.getTopicParameterGroup().getTopicSinks()); + assertEquals(topicParameterGroup.getTopicSources(), papParameters.getTopicParameterGroup().getTopicSources()); } @Test @@ -99,7 +104,7 @@ public class TestPapParameterGroup { final GroupValidationResult validationResult = papParameters.validate(); assertFalse(validationResult.isValid()); assertTrue(validationResult.getResult() - .contains("\"org.onap.policy.pap.main.parameters.RestServerParameters\" INVALID, " + .contains("\"org.onap.policy.common.endpoints.parameters.RestServerParameters\" INVALID, " + "parameter group has status INVALID")); } } diff --git a/main/src/test/java/org/onap/policy/pap/main/rest/CommonPapRestServer.java b/main/src/test/java/org/onap/policy/pap/main/rest/CommonPapRestServer.java index d4b69f2e..4abe6f10 100644 --- a/main/src/test/java/org/onap/policy/pap/main/rest/CommonPapRestServer.java +++ b/main/src/test/java/org/onap/policy/pap/main/rest/CommonPapRestServer.java @@ -185,12 +185,7 @@ public class CommonPapRestServer { systemProps.put("javax.net.ssl.keyStorePassword", "Pol1cy_0nap"); System.setProperties(systemProps); - // @formatter:off - final String[] papConfigParameters = { - "-c", "src/test/resources/parameters/TestConfigParams.json", - "-p", "src/test/resources/parameters/topic.properties" - }; - // @formatter:on + final String[] papConfigParameters = { "-c", "src/test/resources/parameters/TestConfigParams.json" }; main = new Main(papConfigParameters); diff --git a/main/src/test/java/org/onap/policy/pap/main/startstop/TestMain.java b/main/src/test/java/org/onap/policy/pap/main/startstop/TestMain.java index 5ed94a36..016e120d 100644 --- a/main/src/test/java/org/onap/policy/pap/main/startstop/TestMain.java +++ b/main/src/test/java/org/onap/policy/pap/main/startstop/TestMain.java @@ -66,8 +66,7 @@ public class TestMain { @Test public void testMain() throws PolicyPapException { - final String[] papConfigParameters = - {"-c", "parameters/PapConfigParameters.json", "-p", "parameters/topic.properties"}; + final String[] papConfigParameters = {"-c", "parameters/PapConfigParameters.json"}; main = new Main(papConfigParameters); assertTrue(main.getParameters().isValid()); assertEquals(CommonTestData.PAP_GROUP_NAME, main.getParameters().getName()); diff --git a/main/src/test/java/org/onap/policy/pap/main/startstop/TestPapActivator.java b/main/src/test/java/org/onap/policy/pap/main/startstop/TestPapActivator.java index f369488a..fe2e8374 100644 --- a/main/src/test/java/org/onap/policy/pap/main/startstop/TestPapActivator.java +++ b/main/src/test/java/org/onap/policy/pap/main/startstop/TestPapActivator.java @@ -28,12 +28,12 @@ import static org.junit.Assert.assertNotNull; import static org.junit.Assert.assertNull; import static org.junit.Assert.assertTrue; -import java.io.FileInputStream; import java.util.Properties; import org.junit.After; import org.junit.Before; import org.junit.Test; import org.onap.policy.common.endpoints.http.server.HttpServletServer; +import org.onap.policy.common.endpoints.utils.ParameterUtils; import org.onap.policy.common.utils.services.Registry; import org.onap.policy.pap.main.PapConstants; import org.onap.policy.pap.main.PolicyPapException; @@ -63,16 +63,11 @@ public class TestPapActivator { Registry.newRegistry(); HttpServletServer.factory.destroy(); - final String[] papConfigParameters = - {"-c", "parameters/PapConfigParameters.json", "-p", "parameters/topic.properties"}; + final String[] papConfigParameters = {"-c", "parameters/PapConfigParameters.json"}; final PapCommandLineArguments arguments = new PapCommandLineArguments(papConfigParameters); final PapParameterGroup parGroup = new PapParameterHandler().getParameters(arguments); - Properties props = new Properties(); - String propFile = arguments.getFullPropertyFilePath(); - try (FileInputStream stream = new FileInputStream(propFile)) { - props.load(stream); - } + Properties props = ParameterUtils.getTopicProperties(parGroup.getTopicParameterGroup()); activator = new PapActivator(parGroup, props); } diff --git a/main/src/test/resources/e2e/PapConfigParameters.json b/main/src/test/resources/e2e/PapConfigParameters.json index 871077c5..0c86e8fe 100644 --- a/main/src/test/resources/e2e/PapConfigParameters.json +++ b/main/src/test/resources/e2e/PapConfigParameters.json @@ -26,5 +26,17 @@ "databaseUser": "policy", "databasePassword": "UDAxaWNZ", "persistenceUnit": "ToscaConceptTest" + }, + "topicParameterGroup": { + "topicSources" : [{ + "topic" : "POLICY-PDP-PAP", + "servers" : [ "message-router" ], + "topicCommInfrastructure" : "noop" + }], + "topicSinks" : [{ + "topic" : "POLICY-PDP-PAP", + "servers" : [ "message-router" ], + "topicCommInfrastructure" : "noop" + }] } } diff --git a/main/src/test/resources/parameters/MinimumParameters.json b/main/src/test/resources/parameters/MinimumParameters.json index 99c8a3a3..6b21b4dc 100644 --- a/main/src/test/resources/parameters/MinimumParameters.json +++ b/main/src/test/resources/parameters/MinimumParameters.json @@ -25,5 +25,17 @@ "databaseUser": "policy", "databasePassword": "P01icY", "persistenceUnit": "PdpGroupTest" + }, + "topicParameterGroup": { + "topicSources" : [{ + "topic" : "POLICY-PDP-PAP", + "servers" : [ "message-router" ], + "topicCommInfrastructure" : "dmaap" + }], + "topicSinks" : [{ + "topic" : "POLICY-PDP-PAP", + "servers" : [ "message-router" ], + "topicCommInfrastructure" : "dmaap" + }] } } diff --git a/main/src/test/resources/parameters/PapConfigParameters.json b/main/src/test/resources/parameters/PapConfigParameters.json index 16b22ae5..f3dc775c 100644 --- a/main/src/test/resources/parameters/PapConfigParameters.json +++ b/main/src/test/resources/parameters/PapConfigParameters.json @@ -26,5 +26,17 @@ "databaseUser": "policy", "databasePassword": "UDAxaWNZ", "persistenceUnit": "ToscaConceptTest" + }, + "topicParameterGroup": { + "topicSources" : [{ + "topic" : "POLICY-PDP-PAP", + "servers" : [ "message-router" ], + "topicCommInfrastructure" : "noop" + }], + "topicSinks" : [{ + "topic" : "POLICY-PDP-PAP", + "servers" : [ "message-router" ], + "topicCommInfrastructure" : "noop" + }] } } diff --git a/main/src/test/resources/parameters/PapConfigParametersStd.json b/main/src/test/resources/parameters/PapConfigParametersStd.json index 853249e0..309bdb0d 100644 --- a/main/src/test/resources/parameters/PapConfigParametersStd.json +++ b/main/src/test/resources/parameters/PapConfigParametersStd.json @@ -26,5 +26,17 @@ "databaseUser": "policy", "databasePassword": "UDAxaWNZ", "persistenceUnit": "ToscaConceptTest" + }, + "topicParameterGroup": { + "topicSources" : [{ + "topic" : "POLICY-PDP-PAP", + "servers" : [ "message-router" ], + "topicCommInfrastructure" : "noop" + }], + "topicSinks" : [{ + "topic" : "POLICY-PDP-PAP", + "servers" : [ "message-router" ], + "topicCommInfrastructure" : "noop" + }] } } diff --git a/main/src/test/resources/parameters/PapConfigParameters_sim.json b/main/src/test/resources/parameters/PapConfigParameters_sim.json index 96bbedd0..84b88e31 100644 --- a/main/src/test/resources/parameters/PapConfigParameters_sim.json +++ b/main/src/test/resources/parameters/PapConfigParameters_sim.json @@ -26,5 +26,17 @@ "databaseUser": "policy", "databasePassword": "UDAxaWNZ", "persistenceUnit": "PolicyMariaDb" + }, + "topicParameterGroup": { + "topicSources" : [{ + "topic" : "POLICY-PDP-PAP", + "servers" : [ "localhost:6845" ], + "topicCommInfrastructure" : "dmaap" + }], + "topicSinks" : [{ + "topic" : "POLICY-PDP-PAP", + "servers" : [ "localhost:6845" ], + "topicCommInfrastructure" : "dmaap" + }] } } diff --git a/main/src/test/resources/parameters/topic.properties b/main/src/test/resources/parameters/topic.properties deleted file mode 100644 index 11c17dac..00000000 --- a/main/src/test/resources/parameters/topic.properties +++ /dev/null @@ -1,22 +0,0 @@ -# ============LICENSE_START======================================================= -# ONAP PAP -# ================================================================================ -# Copyright (C) 2019 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. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# ============LICENSE_END========================================================= - -noop.sink.topics=POLICY-PDP-PAP -noop.sink.topics.POLICY-PDP-PAP.servers=anyserver -noop.source.topics=POLICY-PDP-PAP -noop.source.topics.POLICY-PDP-PAP.servers=anyserver diff --git a/main/src/test/resources/parameters/topic_sim.properties b/main/src/test/resources/parameters/topic_sim.properties deleted file mode 100644 index de5ae105..00000000 --- a/main/src/test/resources/parameters/topic_sim.properties +++ /dev/null @@ -1,22 +0,0 @@ -# ============LICENSE_START======================================================= -# ONAP PAP -# ================================================================================ -# Copyright (C) 2019 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. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# ============LICENSE_END========================================================= - -dmaap.sink.topics=POLICY-PDP-PAP -dmaap.sink.topics.POLICY-PDP-PAP.servers=localhost:6845 -dmaap.source.topics=POLICY-PDP-PAP -dmaap.source.topics.POLICY-PDP-PAP.servers=localhost:6845 -- cgit 1.2.3-korg