Instances of this class allow for executing code on a Notes thread.
Clients must subclass and implement the runInNotesThread method.
It is important not to join this Job to the UI thread.
This class replaces the NotesJob class to add better memory management
and security context switching.
Field Summary
Fields inherited from class org.eclipse.core.runtime.jobs.Job
Create a new session for this Job.
NotesFactory.createSession() is used in the default implementation.
Allows a subclass to create the session with different arguments.
Recycles the session create by the createSession method.
Subclasses may override to clean up other session-dependent variables, but must call the super method.
Note: this will not be called if an error was thrown from runInNotesThread.
Handles Notes errors thrown during the creation or life of the Session.
The default implementation logs the error.
Subclasses may override to handle the error differently.
Clients must implement this method with code that is executed on the Notes thread.
Note that the given session is only valid during the life of this method.
Additionally, any Notes elements accessed or created are valid only within this method.
Any data used across "sessions" must be saved in formats other than those provided by the Notes back-end classes.
Parameters:
session - the Notes session to use for communicating with Notes back-end elements.
monitor - the progress monitor used for this job
Returns:
the status of the job
Throws:
NotesException - thrown when an error occurs during the operation