com.atlassian.jira.task
Interface ImportTaskManager

All Known Implementing Classes:
ImportTaskManagerImpl

public interface ImportTaskManager

A simplified version of the TaskManager. This interface should only be used for data imports. Implementations should *not* rely on any external dependencies since they will get refreshed during a data import which can cause all sorts of issues during an import. Also depending on any external dependencies will double memory consumption potentially during an import.

Since:
v4.4

Method Summary
<V> TaskDescriptor<V>
getTask()
          Returns the TaskDescriptor of the current import task that's running
 void shutdownNow()
          Attempts to aggressively stop the executing tasks and shuts down the underlying thread pool.
<V> TaskDescriptor<V>
submitTask(Callable<V> callable, String taskName)
          This submits a Callable task to the manager which can then be started at the managers discretion, but hopefully very soon.
 

Method Detail

getTask

<V> TaskDescriptor<V> getTask()
Returns the TaskDescriptor of the current import task that's running

Returns:
a TaskDescriptor or null if the manager has not such task. The descriptor returned is a snapshot of the task state when the method returns will not reflect any future changes. null will be returned when no matching task can be found.

submitTask

<V> TaskDescriptor<V> submitTask(@NotNull
                                 Callable<V> callable,
                                 String taskName)
                             throws RejectedExecutionException,
                                    AlreadyExecutingException
This submits a Callable task to the manager which can then be started at the managers discretion, but hopefully very soon. The TaskDescriptor returned is a snapshot of the task's state when the method returns and will not change to reflect the task's future state changes.

Parameters:
callable - the long running task
taskName - An i18nized string describing this task
Returns:
a TaskDescriptor for the new long running task. The returned descriptor is a snapshot of the task state when the method returns and will not reflect any future changes.
Throws:
RejectedExecutionException - if the task manager is being shutdown and cannot accept new tasks.
AlreadyExecutingException - if another import task is already running in the task manager.

shutdownNow

void shutdownNow()
Attempts to aggressively stop the executing tasks and shuts down the underlying thread pool.



Copyright © 2002-2012 Atlassian. All Rights Reserved.