// This software is released into the Public Domain. See copying.txt for details. package org.openstreetmap.osmosis.core.pipeline.common; import java.util.Map; import java.util.logging.Logger; /** * This task manager implementation supports tasks that perform passive * processing on data received from other tasks. * * @author Brett Henderson */ public abstract class PassiveTaskManager extends TaskManager { private static final Logger LOG = Logger.getLogger(PassiveTaskManager.class.getName()); /** * Creates a new instance. * * @param taskId * A unique identifier for the task. This is used to produce * meaningful errors when errors occur. * @param pipeArgs * The arguments defining input and output pipes for the task, * pipes are a logical concept for identifying how the tasks are * connected together. */ protected PassiveTaskManager(String taskId, Map<String, String> pipeArgs) { super(taskId, pipeArgs); } /** * {@inheritDoc} */ @Override public void execute() { // Nothing to do for a sink because it passively receives data. LOG.fine("Task " + getTaskId() + " is passive, no execution required."); } /** * {@inheritDoc} */ @Override public boolean waitForCompletion() { // Nothing to do for a sink because it passively receives data. LOG.fine("Task " + getTaskId() + " is passive, no completion wait required."); return true; } }