Dali Provisional API
Release 3.2

org.eclipse.jpt.common.core.utility.command
Interface ExtendedJobCommandExecutor

All Superinterfaces:
JobCommandExecutor
All Known Subinterfaces:
CombinedExtendedCommandExecutor
All Known Implementing Classes:
CombinedExtendedCommandExecutor.Default, CombinedExtendedCommandExecutor.Inactive, ExtendedJobCommandExecutor.Default, ExtendedJobCommandExecutor.Inactive

public interface ExtendedJobCommandExecutor
extends JobCommandExecutor

This interface extends the normal command executor to allow the client to control when a command is required to be executed synchronously.

Provisional API: This interface is part of an interim API that is still under development and expected to change significantly before reaching stability. It is available at this early stage to solicit feedback from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken (repeatedly) as the API evolves.


Nested Class Summary
static class ExtendedJobCommandExecutor.Default
          Singleton implementation of the command executor interface that simply executes the command without any sort of enhancement.
static class ExtendedJobCommandExecutor.Inactive
          Singleton implementation of the command executor interface that ignores any commands.
 
Method Summary
 void waitToExecute(JobCommand command)
          Suspend the current thread until the specified command is executed.
 boolean waitToExecute(JobCommand command, long timeout)
          Suspend the current thread until the specified command is executed or the specified time-out occurs.
 void waitToExecute(JobCommand command, String jobName)
          Suspend the current thread until the specified command is executed.
 void waitToExecute(JobCommand command, String jobName, ISchedulingRule schedulingRule)
          Suspend the current thread until the specified command is executed.
 boolean waitToExecute(JobCommand command, String jobName, ISchedulingRule schedulingRule, long timeout)
          Suspend the current thread until the specified command is executed or the specified time-out occurs.
 boolean waitToExecute(JobCommand command, String jobName, long timeout)
          Suspend the current thread until the specified command is executed or the specified time-out occurs.
 
Methods inherited from interface org.eclipse.jpt.common.core.utility.command.JobCommandExecutor
execute, execute, execute
 

Method Detail

waitToExecute

void waitToExecute(JobCommand command)
                   throws InterruptedException
Suspend the current thread until the specified command is executed. The command itself must be executed after any other commands previously passed to the command executor. The command may or may not be assigned to a Job for execution.

Throws:
InterruptedException
See Also:
JobCommandExecutor.execute(JobCommand)

waitToExecute

boolean waitToExecute(JobCommand command,
                      long timeout)
                      throws InterruptedException
Suspend the current thread until the specified command is executed or the specified time-out occurs. The time-out is specified in milliseconds. Return true if the command was executed in the allotted time; return false if a time-out occurred and the command was not executed. If the time-out is zero, wait indefinitely.

The command itself must be executed after any other commands previously passed to the command executor. The command may or may not be assigned to a Job for execution.

Throws:
InterruptedException
See Also:
JobCommandExecutor.execute(JobCommand)

waitToExecute

void waitToExecute(JobCommand command,
                   String jobName)
                   throws InterruptedException
Suspend the current thread until the specified command is executed. The command itself must be executed after any other commands previously passed to the command executor. The command may or may not be assigned to a Job for execution.

Throws:
InterruptedException
See Also:
JobCommandExecutor.execute(JobCommand, String)

waitToExecute

boolean waitToExecute(JobCommand command,
                      String jobName,
                      long timeout)
                      throws InterruptedException
Suspend the current thread until the specified command is executed or the specified time-out occurs. The time-out is specified in milliseconds. Return true if the command was executed in the allotted time; return false if a time-out occurred and the command was not executed. If the time-out is zero, wait indefinitely.

The command itself must be executed after any other commands previously passed to the command executor. The command may or may not be assigned to a Job for execution.

Throws:
InterruptedException
See Also:
JobCommandExecutor.execute(JobCommand, String)

waitToExecute

void waitToExecute(JobCommand command,
                   String jobName,
                   ISchedulingRule schedulingRule)
                   throws InterruptedException
Suspend the current thread until the specified command is executed. The command itself must be executed after any other commands previously passed to the command executor. The command may or may not be assigned to a Job for execution.

Throws:
InterruptedException
See Also:
JobCommandExecutor.execute(JobCommand, String, ISchedulingRule)

waitToExecute

boolean waitToExecute(JobCommand command,
                      String jobName,
                      ISchedulingRule schedulingRule,
                      long timeout)
                      throws InterruptedException
Suspend the current thread until the specified command is executed or the specified time-out occurs. The time-out is specified in milliseconds. Return true if the command was executed in the allotted time; return false if a time-out occurred and the command was not executed. If the time-out is zero, wait indefinitely.

The command itself must be executed after any other commands previously passed to the command executor. The command may or may not be assigned to a Job for execution.

Throws:
InterruptedException
See Also:
JobCommandExecutor.execute(JobCommand, String, ISchedulingRule)

Dali Provisional API
Release 3.2

Copyright (c) 2012 Oracle. All rights reserved.