diff options
Diffstat (limited to 'plugins/plugins-context/plugins-context-distribution/plugins-context-distribution-infinispan/src')
5 files changed, 143 insertions, 43 deletions
diff --git a/plugins/plugins-context/plugins-context-distribution/plugins-context-distribution-infinispan/src/main/java/org/onap/policy/apex/plugins/context/distribution/infinispan/InfinispanContextDistributor.java b/plugins/plugins-context/plugins-context-distribution/plugins-context-distribution-infinispan/src/main/java/org/onap/policy/apex/plugins/context/distribution/infinispan/InfinispanContextDistributor.java index 9361d0b4c..d6a04dd7c 100644 --- a/plugins/plugins-context/plugins-context-distribution/plugins-context-distribution-infinispan/src/main/java/org/onap/policy/apex/plugins/context/distribution/infinispan/InfinispanContextDistributor.java +++ b/plugins/plugins-context/plugins-context-distribution/plugins-context-distribution-infinispan/src/main/java/org/onap/policy/apex/plugins/context/distribution/infinispan/InfinispanContextDistributor.java @@ -25,8 +25,9 @@ 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.context.parameters.ContextParameterConstants; import org.onap.policy.apex.model.basicmodel.concepts.AxArtifactKey; -import org.onap.policy.apex.model.basicmodel.service.ParameterService; +import org.onap.policy.common.parameters.ParameterService; import org.slf4j.ext.XLogger; import org.slf4j.ext.XLoggerFactory; @@ -71,7 +72,7 @@ public class InfinispanContextDistributor extends AbstractDistributor { if (infinispanManager == null) { // Get the parameters from the parameter service final InfinispanDistributorParameters parameters = - ParameterService.getParameters(InfinispanDistributorParameters.class); + ParameterService.get(ContextParameterConstants.DISTRIBUTOR_GROUP_NAME); LOGGER.debug("initiating Infinispan with the parameters: " + parameters); diff --git a/plugins/plugins-context/plugins-context-distribution/plugins-context-distribution-infinispan/src/main/java/org/onap/policy/apex/plugins/context/distribution/infinispan/InfinispanDistributorParameters.java b/plugins/plugins-context/plugins-context-distribution/plugins-context-distribution-infinispan/src/main/java/org/onap/policy/apex/plugins/context/distribution/infinispan/InfinispanDistributorParameters.java index d73955224..539a732cf 100644 --- a/plugins/plugins-context/plugins-context-distribution/plugins-context-distribution-infinispan/src/main/java/org/onap/policy/apex/plugins/context/distribution/infinispan/InfinispanDistributorParameters.java +++ b/plugins/plugins-context/plugins-context-distribution/plugins-context-distribution-infinispan/src/main/java/org/onap/policy/apex/plugins/context/distribution/infinispan/InfinispanDistributorParameters.java @@ -21,7 +21,6 @@ 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. @@ -30,9 +29,9 @@ import org.onap.policy.apex.model.basicmodel.service.ParameterService; */ 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"; + 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; @@ -54,9 +53,7 @@ public class InfinispanDistributorParameters extends DistributorParameters { * The Constructor. */ public InfinispanDistributorParameters() { - super(InfinispanDistributorParameters.class.getCanonicalName()); - ParameterService.registerParameters(InfinispanDistributorParameters.class, this); - ParameterService.registerParameters(DistributorParameters.class, this); + super(); } /** diff --git a/plugins/plugins-context/plugins-context-distribution/plugins-context-distribution-infinispan/src/main/resources/infinispan/default-jgroups-tcp.xml b/plugins/plugins-context/plugins-context-distribution/plugins-context-distribution-infinispan/src/main/resources/infinispan/default-jgroups-tcp.xml new file mode 100644 index 000000000..028cf1df6 --- /dev/null +++ b/plugins/plugins-context/plugins-context-distribution/plugins-context-distribution-infinispan/src/main/resources/infinispan/default-jgroups-tcp.xml @@ -0,0 +1,76 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + ============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========================================================= +--> + +<config xmlns="urn:org:jgroups" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="urn:org:jgroups http://www.jgroups.org/schema/jgroups-4.0.xsd"> + <TCP bind_addr="${jgroups.tcp.address:127.0.0.1}" + bind_port="${jgroups.tcp.port:7800}" + enable_diagnostics="false" + thread_naming_pattern="pl" + send_buf_size="640k" + sock_conn_timeout="300" + bundler_type="no-bundler" + + thread_pool.min_threads="${jgroups.thread_pool.min_threads:0}" + thread_pool.max_threads="${jgroups.thread_pool.max_threads:200}" + thread_pool.keep_alive_time="60000" + /> + <MPING bind_addr="${jgroups.tcp.address:127.0.0.1}" + mcast_addr="${jgroups.mping.mcast_addr:228.2.4.6}" + mcast_port="${jgroups.mping.mcast_port:43366}" + ip_ttl="${jgroups.udp.ip_ttl:2}" + /> + <MERGE3 min_interval="10000" + max_interval="30000" + /> + <FD_SOCK /> + <FD_ALL timeout="60000" + interval="15000" + timeout_check_interval="5000" + /> + <VERIFY_SUSPECT timeout="5000" /> + <pbcast.NAKACK2 use_mcast_xmit="false" + xmit_interval="100" + xmit_table_num_rows="50" + xmit_table_msgs_per_row="1024" + xmit_table_max_compaction_time="30000" + resend_last_seqno="true" + /> + <UNICAST3 xmit_interval="100" + xmit_table_num_rows="50" + xmit_table_msgs_per_row="1024" + xmit_table_max_compaction_time="30000" + conn_expiry_timeout="0" + /> + <pbcast.STABLE stability_delay="500" + desired_avg_gossip="5000" + max_bytes="1M" + /> + <pbcast.GMS print_local_addr="false" + install_view_locally_first="true" + join_timeout="${jgroups.join_timeout:5000}" + /> + <MFC max_credits="2m" + min_threshold="0.40" + /> + <FRAG3/> +</config> diff --git a/plugins/plugins-context/plugins-context-distribution/plugins-context-distribution-infinispan/src/main/resources/infinispan/infinispan.xml.sample b/plugins/plugins-context/plugins-context-distribution/plugins-context-distribution-infinispan/src/main/resources/infinispan/infinispan.xml index 302eac935..5b416f50d 100644 --- a/plugins/plugins-context/plugins-context-distribution/plugins-context-distribution-infinispan/src/main/resources/infinispan/infinispan.xml.sample +++ b/plugins/plugins-context/plugins-context-distribution/plugins-context-distribution-infinispan/src/main/resources/infinispan/infinispan.xml @@ -19,22 +19,23 @@ ============LICENSE_END========================================================= --> -<infinispan xmlns="urn:infinispan:config:8.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="urn:infinispan:config:8.0 http://infinispan.org/schemas/infinispan-config-8.0.xsd"> - <jgroups> - <stack-file name="tcpStack" path="default-configs/default-jgroups-tcp.xml" /> - </jgroups> +<infinispan xmlns="urn:infinispan:config:8.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="urn:infinispan:config:8.0 http://infinispan.org/schemas/infinispan-config-8.0.xsd"> + <jgroups> + <stack-file name="external-file" path="infinispan/default-jgroups-tcp.xml" /> + </jgroups> - <cache-container name="ApexCacheContainer" default-cache="TestContext_0.0.1"> - <transport cluster="apexCluster" stack="tcpStack" /> - <jmx /> - <replicated-cache name="LargeContextMap_0.0.1" mode="SYNC" statistics="true"> - <state-transfer enabled="true" /> - </replicated-cache> - <replicated-cache name="LongSameTypeContextMap_0.0.1" mode="SYNC" statistics="true"> - <state-transfer enabled="true" /> - </replicated-cache> - <replicated-cache name="TestContext_0.0.1" mode="SYNC"> - <state-transfer enabled="true" /> - </replicated-cache> - </cache-container> + <cache-container name="ApexCacheContainer" default-cache="TestContext_0.0.1"> + <transport cluster="apexCluster" stack="external-file" /> + <jmx /> + <replicated-cache name="LargeContextMap_0.0.1" mode="SYNC" statistics="true"> + <state-transfer enabled="true" /> + </replicated-cache> + <replicated-cache name="LongSameTypeContextMap_0.0.1" mode="SYNC" statistics="true"> + <state-transfer enabled="true" /> + </replicated-cache> + <replicated-cache name="TestContext_0.0.1" mode="SYNC"> + <state-transfer enabled="true" /> + </replicated-cache> + </cache-container> </infinispan> diff --git a/plugins/plugins-context/plugins-context-distribution/plugins-context-distribution-infinispan/src/test/java/org/onap/policy/apex/plugins/context/distribution/infinispan/InfinispanContextDistributorTest.java b/plugins/plugins-context/plugins-context-distribution/plugins-context-distribution-infinispan/src/test/java/org/onap/policy/apex/plugins/context/distribution/infinispan/InfinispanContextDistributorTest.java index 34fa7d439..862dcef83 100644 --- a/plugins/plugins-context/plugins-context-distribution/plugins-context-distribution-infinispan/src/test/java/org/onap/policy/apex/plugins/context/distribution/infinispan/InfinispanContextDistributorTest.java +++ b/plugins/plugins-context/plugins-context-distribution/plugins-context-distribution-infinispan/src/test/java/org/onap/policy/apex/plugins/context/distribution/infinispan/InfinispanContextDistributorTest.java @@ -21,14 +21,20 @@ package org.onap.policy.apex.plugins.context.distribution.infinispan; import java.io.IOException; +import org.junit.After; +import org.junit.Before; import org.junit.Test; +import org.onap.policy.apex.context.impl.schema.java.JavaSchemaHelperParameters; +import org.onap.policy.apex.context.parameters.ContextParameterConstants; import org.onap.policy.apex.context.parameters.ContextParameters; +import org.onap.policy.apex.context.parameters.SchemaParameters; 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.onap.policy.common.parameters.ParameterService; import org.slf4j.ext.XLogger; import org.slf4j.ext.XLoggerFactory; @@ -37,14 +43,47 @@ public class InfinispanContextDistributorTest { private static final String PLUGIN_CLASS = InfinispanContextDistributor.class.getCanonicalName(); + private SchemaParameters schemaParameters; + private ContextParameters contextParameters; + + @Before + public void beforeTest() { + contextParameters = new ContextParameters(); + + contextParameters.setName(ContextParameterConstants.MAIN_GROUP_NAME); + InfinispanDistributorParameters inifinispanDistributorParameters = new InfinispanDistributorParameters(); + inifinispanDistributorParameters.setName(ContextParameterConstants.DISTRIBUTOR_GROUP_NAME); + inifinispanDistributorParameters.setPluginClass(PLUGIN_CLASS); + contextParameters.setDistributorParameters(inifinispanDistributorParameters); + contextParameters.getLockManagerParameters().setName(ContextParameterConstants.LOCKING_GROUP_NAME); + contextParameters.getPersistorParameters().setName(ContextParameterConstants.PERSISTENCE_GROUP_NAME); + + ParameterService.register(contextParameters); + ParameterService.register(contextParameters.getDistributorParameters()); + ParameterService.register(contextParameters.getLockManagerParameters()); + ParameterService.register(contextParameters.getPersistorParameters()); + + schemaParameters = new SchemaParameters(); + schemaParameters.setName(ContextParameterConstants.SCHEMA_GROUP_NAME); + schemaParameters.getSchemaHelperParameterMap().put("JAVA", new JavaSchemaHelperParameters()); + + ParameterService.register(schemaParameters); + } + + @After + public void afterTest() { + ParameterService.deregister(schemaParameters); + + ParameterService.deregister(contextParameters.getDistributorParameters()); + ParameterService.deregister(contextParameters.getLockManagerParameters()); + ParameterService.deregister(contextParameters.getPersistorParameters()); + ParameterService.deregister(contextParameters); + } + @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"); @@ -54,10 +93,6 @@ public class InfinispanContextDistributorTest { 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"); @@ -67,10 +102,6 @@ public class InfinispanContextDistributorTest { 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"); @@ -80,14 +111,8 @@ public class InfinispanContextDistributorTest { 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"); } - - } |