diff options
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.java | 87 |
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 |