Eclipse Platform
Release 3.1

org.eclipse.ui.progress
Class WorkbenchJob

java.lang.Object
  extended byorg.eclipse.core.runtime.PlatformObject
      extended byorg.eclipse.core.internal.jobs.InternalJob
          extended byorg.eclipse.core.runtime.jobs.Job
              extended byorg.eclipse.ui.progress.UIJob
                  extended byorg.eclipse.ui.progress.WorkbenchJob
All Implemented Interfaces:
Comparable, IAdaptable

public abstract class WorkbenchJob
extends UIJob

WorkbenchJob is a type of job that implements a done listener and does the shutdown checks before scheduling. This is used if a job is not meant to run when the Workbench is shutdown.

Since:
3.0

Field Summary
 
Fields inherited from class org.eclipse.core.runtime.jobs.Job
ASYNC_FINISH, BUILD, DECORATE, INTERACTIVE, LONG, NONE, RUNNING, SHORT, SLEEPING, WAITING
 
Constructor Summary
WorkbenchJob(Display jobDisplay, String name)
          Create a new instance of the receiver with the supplied display and name.
WorkbenchJob(String name)
          Add a new instance of the reciever with the supplied name.
 
Method Summary
 void performDone(IJobChangeEvent event)
          Perform done with the supplied event.
 boolean shouldRun()
          Returns whether this job should be run.
 boolean shouldSchedule()
          Returns whether this job should be scheduled.
 
Methods inherited from class org.eclipse.ui.progress.UIJob
errorStatus, getDisplay, run, runInUIThread, setDisplay
 
Methods inherited from class org.eclipse.core.runtime.jobs.Job
addJobChangeListener, belongsTo, cancel, done, getName, getPriority, getProperty, getResult, getRule, getState, getThread, isBlocking, isSystem, isUser, join, removeJobChangeListener, schedule, schedule, setName, setPriority, setProgressGroup, setProperty, setRule, setSystem, setThread, setUser, sleep, wakeUp, wakeUp
 
Methods inherited from class org.eclipse.core.internal.jobs.InternalJob
compareTo, toString
 
Methods inherited from class org.eclipse.core.runtime.PlatformObject
getAdapter
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.eclipse.core.runtime.IAdaptable
getAdapter
 

Constructor Detail

WorkbenchJob

public WorkbenchJob(Display jobDisplay,
                    String name)
Create a new instance of the receiver with the supplied display and name. Normally this constructor would not be used as it is best to let the job find the display from the workbench

Parameters:
jobDisplay - Display. The display to run the job with.
name - String

WorkbenchJob

public WorkbenchJob(String name)
Add a new instance of the reciever with the supplied name.

Parameters:
name - String
Method Detail

performDone

public void performDone(IJobChangeEvent event)
Perform done with the supplied event. This will only occur if the returned status was OK. This is called only if the job is finished with an IStatus.OK result and the workbench is still running.

Parameters:
event - IJobChangeEvent

shouldSchedule

public boolean shouldSchedule()
Description copied from class: Job
Returns whether this job should be scheduled. If false is returned, this job will be discarded by the job manager without being added to the queue.

This method is called immediately prior to adding the job to the waiting job queue.,so it can be used for last minute pre-condition checking before a job is scheduled.

Clients may override this method. This default implementation always returns true.

Overrides:
shouldSchedule in class Job
Returns:
true if the job manager should schedule this job and false otherwise

shouldRun

public boolean shouldRun()
Description copied from class: Job
Returns whether this job should be run. If false is returned, this job will be discarded by the job manager without running.

This method is called immediately prior to calling the job's run method, so it can be used for last minute pre-condition checking before a job is run. This method must not attempt to schedule or change the state of any other job.

Clients may override this method. This default implementation always returns true.

Overrides:
shouldRun in class Job
Returns:
true if this job should be run and false otherwise

Eclipse Platform
Release 3.1

Guidelines for using Eclipse APIs.

Copyright (c) IBM Corp. and others 2000, 2005. All rights reserved.