summaryrefslogtreecommitdiffstats
path: root/context/context-test-utils/src/main/java/org/onap/policy/apex/context/test/locking/ConcurrentContextJvmThread.java
diff options
context:
space:
mode:
Diffstat (limited to 'context/context-test-utils/src/main/java/org/onap/policy/apex/context/test/locking/ConcurrentContextJvmThread.java')
-rw-r--r--context/context-test-utils/src/main/java/org/onap/policy/apex/context/test/locking/ConcurrentContextJvmThread.java135
1 files changed, 0 insertions, 135 deletions
diff --git a/context/context-test-utils/src/main/java/org/onap/policy/apex/context/test/locking/ConcurrentContextJvmThread.java b/context/context-test-utils/src/main/java/org/onap/policy/apex/context/test/locking/ConcurrentContextJvmThread.java
deleted file mode 100644
index 9e23175fb..000000000
--- a/context/context-test-utils/src/main/java/org/onap/policy/apex/context/test/locking/ConcurrentContextJvmThread.java
+++ /dev/null
@@ -1,135 +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.context.test.locking;
-
-import com.google.gson.Gson;
-
-import java.io.BufferedReader;
-import java.io.Closeable;
-import java.io.InputStream;
-import java.io.InputStreamReader;
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Map.Entry;
-
-import org.onap.policy.apex.context.test.utils.ConfigrationProvider;
-import org.onap.policy.common.parameters.ParameterGroup;
-import org.onap.policy.common.parameters.ParameterService;
-import org.slf4j.ext.XLogger;
-import org.slf4j.ext.XLoggerFactory;
-
-
-
-/**
- * The Class TestConcurrentContextThread tests concurrent use of context.
- *
- * @author Liam Fallon (liam.fallon@ericsson.com)
- */
-public class ConcurrentContextJvmThread implements Runnable, Closeable {
- // Logger for this class
- private static final XLogger LOGGER = XLoggerFactory.getXLogger(ConcurrentContextJvmThread.class);
-
- private final int jvm;
- private final ConfigrationProvider configrationProvider;
- private Process process = null;
-
- public ConcurrentContextJvmThread(final int jvm, final ConfigrationProvider configrationProvider) {
- this.jvm = jvm;
- this.configrationProvider = configrationProvider;
- }
-
- /*
- * (non-Javadoc)
- *
- * @see java.lang.Runnable#run()
- */
- @Override
- public void run() {
- final List<String> commandList = new ArrayList<>();
- commandList.add(System.getProperty("java.home") + System.getProperty("file.separator") + "bin"
- + System.getProperty("file.separator") + "java");
- commandList.add("-Xms512m");
- commandList.add("-Xmx512m");
- commandList.add("-cp");
- commandList.add(System.getProperty("java.class.path"));
- commandList.add(ConcurrentContextJvm.class.getCanonicalName());
- commandList.add(configrationProvider.getTestName());
- commandList.add(Integer.toString(jvm));
- commandList.add(Integer.toString(configrationProvider.getThreadCount()));
- commandList.add(Integer.toString(configrationProvider.getLoopSize()));
- commandList.add(Integer.toString(configrationProvider.getAlbumSize()));
- commandList.add(Integer.toString(configrationProvider.getLockType().getValue()));
- commandList.add(System.getProperty("hazelcast.config", ""));
-
- for (final Entry<String, ParameterGroup> parameterServiceEntry : ParameterService.getAll()) {
- commandList.add(parameterServiceEntry.getValue().getClass().getCanonicalName());
- commandList.add(new Gson().toJson(parameterServiceEntry.getValue()));
- }
-
- LOGGER.info("starting JVM " + jvm);
-
- // Run the JVM
- final ProcessBuilder processBuilder = new ProcessBuilder(commandList);
- processBuilder.redirectErrorStream(true);
-
- try {
- process = processBuilder.start();
-
- final InputStream is = process.getInputStream();
- final InputStreamReader isr = new InputStreamReader(is);
- final BufferedReader br = new BufferedReader(isr);
- String line;
- LOGGER.info("JVM Output for command " + commandList + "\n");
- while ((line = br.readLine()) != null) {
- LOGGER.info(line);
- }
-
- waitForExitValue();
-
- } catch (final Exception ioException) {
- LOGGER.error("Error occured while writing JVM Output for command ", ioException);
- }
- }
-
- /**
- * Wait for an exit value from the the JVM.
- */
- private void waitForExitValue() {
- // Wait to get exit value
- try {
- final int exitValue = process.waitFor();
- LOGGER.info("\n\nJVM " + jvm + " finished, exit value is " + exitValue);
- } catch (final InterruptedException e) {
- LOGGER.warn("Thread was interrupted");
- Thread.currentThread().interrupt();
- }
- }
-
-
- @Override
- public void close() {
- LOGGER.info("Shutting down {} thread ...", Thread.currentThread().getName());
- if (process != null) {
- LOGGER.info("Destroying process ...");
- process.destroy();
- }
- }
-}