From b109c218ab7db28fd1cbe62c808496dfdedad809 Mon Sep 17 00:00:00 2001 From: liamfallon Date: Wed, 18 Jul 2018 11:23:20 +0100 Subject: Fix incorrect naming on context plugins This change fixes inconsistent naming on the context plugins in APEX. All plugins should fillow the naming convention of plugin-A.plugin-A.B.plugin.A.B.C and so on. Not following this convention breaks the APEX documentation build. Issue-ID: POLICY-954 Change-Id: I8aad4a28d143427e60017eaa119ee4f7ce9f5b3d Signed-off-by: liamfallon --- .../context-distribution-infinispan/pom.xml | 53 -------- .../infinispan/InfinispanContextDistributor.java | 115 ---------------- .../InfinispanDistributorParameters.java | 144 --------------------- .../distribution/infinispan/InfinispanManager.java | 122 ----------------- .../distribution/infinispan/package-info.java | 27 ---- .../resources/infinispan/infinispan.xml.sample | 40 ------ .../InfinispanContextDistributorTest.java | 93 ------------- 7 files changed, 594 deletions(-) delete mode 100644 plugins/plugins-context/context-distribution/context-distribution-infinispan/pom.xml delete mode 100644 plugins/plugins-context/context-distribution/context-distribution-infinispan/src/main/java/org/onap/policy/apex/plugins/context/distribution/infinispan/InfinispanContextDistributor.java delete mode 100644 plugins/plugins-context/context-distribution/context-distribution-infinispan/src/main/java/org/onap/policy/apex/plugins/context/distribution/infinispan/InfinispanDistributorParameters.java delete mode 100644 plugins/plugins-context/context-distribution/context-distribution-infinispan/src/main/java/org/onap/policy/apex/plugins/context/distribution/infinispan/InfinispanManager.java delete mode 100644 plugins/plugins-context/context-distribution/context-distribution-infinispan/src/main/java/org/onap/policy/apex/plugins/context/distribution/infinispan/package-info.java delete mode 100644 plugins/plugins-context/context-distribution/context-distribution-infinispan/src/main/resources/infinispan/infinispan.xml.sample delete mode 100644 plugins/plugins-context/context-distribution/context-distribution-infinispan/src/test/java/org/onap/policy/apex/plugins/context/distribution/infinispan/InfinispanContextDistributorTest.java (limited to 'plugins/plugins-context/context-distribution/context-distribution-infinispan') diff --git a/plugins/plugins-context/context-distribution/context-distribution-infinispan/pom.xml b/plugins/plugins-context/context-distribution/context-distribution-infinispan/pom.xml deleted file mode 100644 index c6985a952..000000000 --- a/plugins/plugins-context/context-distribution/context-distribution-infinispan/pom.xml +++ /dev/null @@ -1,53 +0,0 @@ - - - 4.0.0 - - org.onap.policy.apex-pdp.plugins.plugins-context.context-distribution - context-distribution - 2.0.0-SNAPSHOT - - - context-distribution-infinispan - ${project.artifactId} - [${project.parent.artifactId}] Plugin for distribution using Infinispan - - - - org.infinispan - infinispan-core - 9.2.2.Final - - - org.jboss.slf4j - slf4j-jboss-logging - - - - - org.onap.policy.apex-pdp.context - context-test-utils - ${project.version} - test - - - - \ No newline at end of file diff --git a/plugins/plugins-context/context-distribution/context-distribution-infinispan/src/main/java/org/onap/policy/apex/plugins/context/distribution/infinispan/InfinispanContextDistributor.java b/plugins/plugins-context/context-distribution/context-distribution-infinispan/src/main/java/org/onap/policy/apex/plugins/context/distribution/infinispan/InfinispanContextDistributor.java deleted file mode 100644 index 9361d0b4c..000000000 --- a/plugins/plugins-context/context-distribution/context-distribution-infinispan/src/main/java/org/onap/policy/apex/plugins/context/distribution/infinispan/InfinispanContextDistributor.java +++ /dev/null @@ -1,115 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * Copyright (C) 2016-2018 Ericsson. 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. - * - * SPDX-License-Identifier: Apache-2.0 - * ============LICENSE_END========================================================= - */ - -package org.onap.policy.apex.plugins.context.distribution.infinispan; - -import java.util.Map; - -import org.infinispan.Cache; -import org.onap.policy.apex.context.ContextException; -import org.onap.policy.apex.context.impl.distribution.AbstractDistributor; -import org.onap.policy.apex.model.basicmodel.concepts.AxArtifactKey; -import org.onap.policy.apex.model.basicmodel.service.ParameterService; -import org.slf4j.ext.XLogger; -import org.slf4j.ext.XLoggerFactory; - -/** - * This context distributor distributes context across threads in multiple JVMs on multiple hosts. - * It uses Infinispan to distribute maps. - * - * @author Liam Fallon (liam.fallon@ericsson.com) - */ -public class InfinispanContextDistributor extends AbstractDistributor { - // Logger for this class - private static final XLogger LOGGER = XLoggerFactory.getXLogger(InfinispanContextDistributor.class); - - // The infinispan manager for distributing context for this JVM - private static InfinispanManager infinispanManager = null; - - /** - * Create an instance of an Infinispan Context Distributor. - * - * @throws ContextException On errors creating the context distributor - */ - public InfinispanContextDistributor() throws ContextException { - LOGGER.entry("InfinispanContextDistributor()"); - - LOGGER.exit("InfinispanContextDistributor()"); - } - - /* - * (non-Javadoc) - * - * @see - * com.ericsson.apex.context.impl.distribution.AbstractContextDistributor#init(com.ericsson.apex - * .model.basicmodel.concepts.AxArtifactKey) - */ - @Override - public void init(final AxArtifactKey key) throws ContextException { - LOGGER.entry("init(" + key + ")"); - - super.init(key); - - // Create the infinispan manager if it does not already exist - if (infinispanManager == null) { - // Get the parameters from the parameter service - final InfinispanDistributorParameters parameters = - ParameterService.getParameters(InfinispanDistributorParameters.class); - - LOGGER.debug("initiating Infinispan with the parameters: " + parameters); - - // Create the manager - infinispanManager = new InfinispanManager(parameters); - } - - LOGGER.exit("init(" + key + ")"); - } - - /* - * (non-Javadoc) - * - * @see com.ericsson.apex.core.context.impl.distribution.AbstractContextDistributor# - * getContextAlbumMap(com.ericsson.apex.core.model.concepts.AxArtifactKey) - */ - @Override - public Map getContextAlbumMap(final AxArtifactKey contextAlbumKey) { - LOGGER.info("InfinispanContextDistributor: create album: " + contextAlbumKey.getID()); - - // Get the Cache from Infinispan - final Cache infinispanCache = - infinispanManager.getCacheManager().getCache(contextAlbumKey.getID().replace(':', '_')); - - return infinispanCache; - } - - /* - * (non-Javadoc) - * - * @see com.ericsson.apex.core.context.impl.distribution.AbstractContextDistributor#shutdown() - */ - @Override - public void shutdown() { - // Shut down the infinispan manager - if (infinispanManager != null) { - infinispanManager.shutdown(); - } - infinispanManager = null; - } -} diff --git a/plugins/plugins-context/context-distribution/context-distribution-infinispan/src/main/java/org/onap/policy/apex/plugins/context/distribution/infinispan/InfinispanDistributorParameters.java b/plugins/plugins-context/context-distribution/context-distribution-infinispan/src/main/java/org/onap/policy/apex/plugins/context/distribution/infinispan/InfinispanDistributorParameters.java deleted file mode 100644 index d73955224..000000000 --- a/plugins/plugins-context/context-distribution/context-distribution-infinispan/src/main/java/org/onap/policy/apex/plugins/context/distribution/infinispan/InfinispanDistributorParameters.java +++ /dev/null @@ -1,144 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * Copyright (C) 2016-2018 Ericsson. 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. - * - * SPDX-License-Identifier: Apache-2.0 - * ============LICENSE_END========================================================= - */ - -package org.onap.policy.apex.plugins.context.distribution.infinispan; - -import org.onap.policy.apex.context.parameters.DistributorParameters; -import org.onap.policy.apex.model.basicmodel.service.ParameterService; - -/** - * Distributor parameters for the Infinspan Distributor. - * - * @author Liam Fallon (liam.fallon@ericsson.com) - */ -public class InfinispanDistributorParameters extends DistributorParameters { - // @formatter:off - - /** The default Infinispan configuration file location. */ - public static final String DEFAULT_INFINISPAN_DISTRIBUTION_CONFIG_FILE = "/infinispan/infinispan.xml"; - - /** The default Infinispan jgroups configuration file location. */ - public static final String DEFAULT_INFINISPAN_DISTRIBUTION_JGROUPS_FILE = null; - - /** The default Infinispan IP stack is IPV4. */ - public static final boolean DEFAULT_INFINISPAN_JAVA_NET_PREFER_IPV4_STACK = true; - - /** The default Infinispan bind address is localhost. */ - public static final String DEFAULT_INFINSPAN_JGROUPS_BIND_ADDRESS = "localhost"; - - // Infinspan configuration file names - private String configFile = DEFAULT_INFINISPAN_DISTRIBUTION_CONFIG_FILE; - private String jgroupsFile = DEFAULT_INFINISPAN_DISTRIBUTION_JGROUPS_FILE; - private boolean preferIPv4Stack = DEFAULT_INFINISPAN_JAVA_NET_PREFER_IPV4_STACK; - private String jGroupsBindAddress = DEFAULT_INFINSPAN_JGROUPS_BIND_ADDRESS; - // @formatter:on - - /** - * The Constructor. - */ - public InfinispanDistributorParameters() { - super(InfinispanDistributorParameters.class.getCanonicalName()); - ParameterService.registerParameters(InfinispanDistributorParameters.class, this); - ParameterService.registerParameters(DistributorParameters.class, this); - } - - /** - * Gets the config file. - * - * @return the config file - */ - public String getConfigFile() { - return configFile; - } - - /** - * Sets the config file. - * - * @param configFile the config file - */ - public void setConfigFile(final String configFile) { - this.configFile = configFile; - } - - /** - * Gets the jgroups file. - * - * @return the jgroups file - */ - public String getJgroupsFile() { - return jgroupsFile; - } - - /** - * Sets the jgroups file. - * - * @param jgroupsFile the jgroups file - */ - public void setJgroupsFile(final String jgroupsFile) { - this.jgroupsFile = jgroupsFile; - } - - /** - * Prefer I pv 4 stack. - * - * @return true, if prefer I pv 4 stack - */ - public boolean preferIPv4Stack() { - return preferIPv4Stack; - } - - /** - * Sets the prefer I pv 4 stack. - * - * @param preferIPv4Stack the prefer I pv 4 stack - */ - public void setPreferIPv4Stack(final boolean preferIPv4Stack) { - this.preferIPv4Stack = preferIPv4Stack; - } - - /** - * Getj groups bind address. - * - * @return the j groups bind address - */ - public String getjGroupsBindAddress() { - return jGroupsBindAddress; - } - - /** - * Setj groups bind address. - * - * @param jGroupsBindAddress the j groups bind address - */ - public void setjGroupsBindAddress(final String jGroupsBindAddress) { - this.jGroupsBindAddress = jGroupsBindAddress; - } - - /* - * (non-Javadoc) - * - * @see com.ericsson.apex.context.parameters.DistributorParameters#toString() - */ - @Override - public String toString() { - return "InfinispanDistributorParameters [configFile=" + configFile + ", jgroupsFile=" + jgroupsFile - + ", preferIPv4Stack=" + preferIPv4Stack + ", jGroupsBindAddress=" + jGroupsBindAddress + "]"; - } -} diff --git a/plugins/plugins-context/context-distribution/context-distribution-infinispan/src/main/java/org/onap/policy/apex/plugins/context/distribution/infinispan/InfinispanManager.java b/plugins/plugins-context/context-distribution/context-distribution-infinispan/src/main/java/org/onap/policy/apex/plugins/context/distribution/infinispan/InfinispanManager.java deleted file mode 100644 index 1a2076f10..000000000 --- a/plugins/plugins-context/context-distribution/context-distribution-infinispan/src/main/java/org/onap/policy/apex/plugins/context/distribution/infinispan/InfinispanManager.java +++ /dev/null @@ -1,122 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * Copyright (C) 2016-2018 Ericsson. 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. - * - * SPDX-License-Identifier: Apache-2.0 - * ============LICENSE_END========================================================= - */ - -package org.onap.policy.apex.plugins.context.distribution.infinispan; - -import java.io.IOException; - -import org.infinispan.manager.DefaultCacheManager; -import org.infinispan.manager.EmbeddedCacheManager; -import org.onap.policy.apex.context.ContextException; -import org.slf4j.ext.XLogger; -import org.slf4j.ext.XLoggerFactory; - -/** - * The Class InfinispanManager holds the Infinispan cache manager for a JVM. - */ -public class InfinispanManager { - // Logger for this class - private static final XLogger LOGGER = XLoggerFactory.getXLogger(InfinispanManager.class); - - // The Infinispan Cache Manager - private EmbeddedCacheManager cacheManager; - - /** - * Constructor, set up an Infinispan cache manager. - * - * @param infinispanDistributorParameters the infinispan distributor parameters - * @throws ContextException On errors connecting to Infinispan - */ - public InfinispanManager(final InfinispanDistributorParameters infinispanDistributorParameters) - throws ContextException { - LOGGER.entry("Creating Infinispan Manager: " + infinispanDistributorParameters); - - setSystemProperties(infinispanDistributorParameters); - - try { - LOGGER.debug("starting infinispan cache manager using specified configuration . . ."); - cacheManager = new DefaultCacheManager(infinispanDistributorParameters.getConfigFile()); - LOGGER.debug("started infinispan cache manager using specified configuration"); - } catch (final IOException ioException) { - final String errorMessage = - "failed to start infinispan cache manager, no infinispan configuration found on local file system or in classpath, " - + "try setting Infinspan \"configFile\" parameter"; - LOGGER.error(errorMessage); - throw new ContextException(errorMessage, ioException); - } catch (final Exception e) { - LOGGER.error("failed to start infinispan cache manager using specified configuration", e); - throw new ContextException("failed to start infinispan cache manager using specified configuration", e); - } - - // Start the cache manager - cacheManager.start(); - - Runtime.getRuntime().addShutdownHook(new InfinspanManagerShutdownHook()); - - LOGGER.exit("Created Infinispan Manager: " + infinispanDistributorParameters); - } - - /** - * Shutdown the manager. - */ - public void shutdown() { - if (cacheManager == null) { - return; - } - - cacheManager.stop(); - cacheManager = null; - } - - /** - * Get the cache manager. - * - * @return the infinispan cache manager - */ - public EmbeddedCacheManager getCacheManager() { - return cacheManager; - } - - /** - * Set system properties used by Infinispan. - * - * @param infinispanDistributorParameters The parameter values to set are passed as properties - */ - private void setSystemProperties(final InfinispanDistributorParameters infinispanDistributorParameters) { - System.setProperty("java.net.preferIPv4Stack", - Boolean.toString(infinispanDistributorParameters.preferIPv4Stack())); - System.setProperty("jgroups.bind_addr", infinispanDistributorParameters.getjGroupsBindAddress()); - } - - /** - * Private class to implement the shutdown hook for this infinispan manager. - */ - public class InfinspanManagerShutdownHook extends Thread { - /* - * (non-Javadoc) - * - * @see java.lang.Thread#run() - */ - @Override - public void run() { - shutdown(); - } - } -} diff --git a/plugins/plugins-context/context-distribution/context-distribution-infinispan/src/main/java/org/onap/policy/apex/plugins/context/distribution/infinispan/package-info.java b/plugins/plugins-context/context-distribution/context-distribution-infinispan/src/main/java/org/onap/policy/apex/plugins/context/distribution/infinispan/package-info.java deleted file mode 100644 index b9ceeb668..000000000 --- a/plugins/plugins-context/context-distribution/context-distribution-infinispan/src/main/java/org/onap/policy/apex/plugins/context/distribution/infinispan/package-info.java +++ /dev/null @@ -1,27 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * Copyright (C) 2016-2018 Ericsson. 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. - * - * SPDX-License-Identifier: Apache-2.0 - * ============LICENSE_END========================================================= - */ - -/** - * Implements the Infinispan context distributor for - * distribution of APEX context across JVMs. - * - * @author Liam Fallon (liam.fallon@ericsson.com) - */ -package org.onap.policy.apex.plugins.context.distribution.infinispan; diff --git a/plugins/plugins-context/context-distribution/context-distribution-infinispan/src/main/resources/infinispan/infinispan.xml.sample b/plugins/plugins-context/context-distribution/context-distribution-infinispan/src/main/resources/infinispan/infinispan.xml.sample deleted file mode 100644 index 302eac935..000000000 --- a/plugins/plugins-context/context-distribution/context-distribution-infinispan/src/main/resources/infinispan/infinispan.xml.sample +++ /dev/null @@ -1,40 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - diff --git a/plugins/plugins-context/context-distribution/context-distribution-infinispan/src/test/java/org/onap/policy/apex/plugins/context/distribution/infinispan/InfinispanContextDistributorTest.java b/plugins/plugins-context/context-distribution/context-distribution-infinispan/src/test/java/org/onap/policy/apex/plugins/context/distribution/infinispan/InfinispanContextDistributorTest.java deleted file mode 100644 index 34fa7d439..000000000 --- a/plugins/plugins-context/context-distribution/context-distribution-infinispan/src/test/java/org/onap/policy/apex/plugins/context/distribution/infinispan/InfinispanContextDistributorTest.java +++ /dev/null @@ -1,93 +0,0 @@ -/*- - * ============LICENSE_START======================================================= - * Copyright (C) 2018 Ericsson. 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. - * - * SPDX-License-Identifier: Apache-2.0 - * ============LICENSE_END========================================================= - */ -package org.onap.policy.apex.plugins.context.distribution.infinispan; - -import java.io.IOException; - -import org.junit.Test; -import org.onap.policy.apex.context.parameters.ContextParameters; -import org.onap.policy.apex.context.test.distribution.ContextAlbumUpdate; -import org.onap.policy.apex.context.test.distribution.ContextInstantiation; -import org.onap.policy.apex.context.test.distribution.ContextUpdate; -import org.onap.policy.apex.context.test.distribution.SequentialContextInstantiation; -import org.onap.policy.apex.model.basicmodel.concepts.ApexException; -import org.onap.policy.apex.model.basicmodel.handling.ApexModelException; -import org.slf4j.ext.XLogger; -import org.slf4j.ext.XLoggerFactory; - -public class InfinispanContextDistributorTest { - private static final XLogger logger = XLoggerFactory.getXLogger(InfinispanContextDistributorTest.class); - - private static final String PLUGIN_CLASS = InfinispanContextDistributor.class.getCanonicalName(); - - @Test - public void testContextAlbumUpdateInfinispan() throws ApexModelException, IOException, ApexException { - logger.debug("Running testContextAlbumUpdateInfinispan test . . ."); - - final ContextParameters contextParameters = new ContextParameters(); - contextParameters.getDistributorParameters().setPluginClass(PLUGIN_CLASS); - new InfinispanDistributorParameters(); - - new ContextAlbumUpdate().testContextAlbumUpdate(); - - logger.debug("Ran testContextAlbumUpdateInfinispan test"); - } - - @Test - public void testContextInstantiationInfinispan() throws ApexModelException, IOException, ApexException { - logger.debug("Running testContextInstantiationInfinispan test . . ."); - - final ContextParameters contextParameters = new ContextParameters(); - contextParameters.getDistributorParameters().setPluginClass(PLUGIN_CLASS); - new InfinispanDistributorParameters(); - - new ContextInstantiation().testContextInstantiation(); - - logger.debug("Ran testContextInstantiationInfinispan test"); - } - - @Test - public void testContextUpdateInfinispan() throws ApexModelException, IOException, ApexException { - logger.debug("Running testContextUpdateInfinispan test . . ."); - - final ContextParameters contextParameters = new ContextParameters(); - contextParameters.getDistributorParameters().setPluginClass(PLUGIN_CLASS); - new InfinispanDistributorParameters(); - - new ContextUpdate().testContextUpdate(); - - logger.debug("Ran testContextUpdateInfinispan test"); - } - - @Test - public void testSequentialContextInstantiationInfinispan() throws ApexModelException, IOException, ApexException { - logger.debug("Running testSequentialContextInstantiationInfinispan test . . ."); - - final ContextParameters contextParameters = new ContextParameters(); - contextParameters.getDistributorParameters().setPluginClass(PLUGIN_CLASS); - new InfinispanDistributorParameters(); - - new SequentialContextInstantiation().testSequentialContextInstantiation(); - - logger.debug("Ran testSequentialContextInstantiationInfinispan test"); - } - - -} -- cgit 1.2.3-korg