aboutsummaryrefslogtreecommitdiffstats
path: root/UniversalVesAdapter/src/main/java/org/onap/universalvesadapter/utils/ParallelTasks.java
diff options
context:
space:
mode:
Diffstat (limited to 'UniversalVesAdapter/src/main/java/org/onap/universalvesadapter/utils/ParallelTasks.java')
-rw-r--r--UniversalVesAdapter/src/main/java/org/onap/universalvesadapter/utils/ParallelTasks.java87
1 files changed, 0 insertions, 87 deletions
diff --git a/UniversalVesAdapter/src/main/java/org/onap/universalvesadapter/utils/ParallelTasks.java b/UniversalVesAdapter/src/main/java/org/onap/universalvesadapter/utils/ParallelTasks.java
deleted file mode 100644
index 45fdf96..0000000
--- a/UniversalVesAdapter/src/main/java/org/onap/universalvesadapter/utils/ParallelTasks.java
+++ /dev/null
@@ -1,87 +0,0 @@
-/*
-* ============LICENSE_START=======================================================
-* ONAP : DCAE
-* ================================================================================
-* Copyright 2018 TechMahindra
-*=================================================================================
-* 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=========================================================
-*/
-package org.onap.universalvesadapter.utils;
-
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.concurrent.CountDownLatch;
-import java.util.concurrent.ExecutorService;
-import java.util.concurrent.Executors;
-
-/**
- *
- * Utility class to execute parallel tasks
- *
- * @author kmalbari
- *
- */
-public class ParallelTasks
-{
- private final Collection<Runnable> tasks = new ArrayList<Runnable>();
-
- public ParallelTasks()
- {
- }
-
- /**
- *
- * Add task to be executed in parallel
- *
- * @param task
- */
- public void add(final Runnable task)
- {
- tasks.add(task);
- }
-
- /**
- * starts all the added tasks in parallel
- *
- * @throws InterruptedException
- */
- public void startParallelTasks() throws InterruptedException
- {
- final ExecutorService threads = Executors.newFixedThreadPool(Runtime.getRuntime()
- .availableProcessors());
- try
- {
- final CountDownLatch latch = new CountDownLatch(tasks.size());
- for (final Runnable task : tasks)
- threads.execute(new Runnable() {
- public void run()
- {
- try
- {
- task.run();
- }
- finally
- {
- latch.countDown();
- }
- }
- });
- latch.await();
- }
- finally
- {
- threads.shutdown();
- }
- }
-} \ No newline at end of file