Class ProvisioningJob

  • All Implemented Interfaces:
    Comparable, IAdaptable
    Direct Known Subclasses:
    LoadMetadataRepositoryJob, ProfileModificationJob

    public abstract class ProvisioningJob
    extends Job
    Abstract class representing provisioning jobs. Provisioning jobs can be run in the background by scheduling them, or they can be run by a client in a modal context. An additional progress monitor can be set into the job for progress reporting.
    Since:
    2.0
    • Field Detail

      • RESTART_NONE

        public static final int RESTART_NONE
        Constant which indicates that the job does not require a restart upon completion. This constant is typically used for operations that do not modify the running profile.
        Since:
        2.0
        See Also:
        Constant Field Values
      • RESTART_OR_APPLY

        public static final int RESTART_OR_APPLY
        Constant which indicates that the job requires the user to either restart or apply the configuration changes in order to pick up the changes performed by the job. This constant is typically used for operations that modify the running profile.
        Since:
        2.0
        See Also:
        Constant Field Values
      • RESTART_ONLY

        public static final int RESTART_ONLY
        Constant which indicates that the job requires the user to restart in order to pick up the changes performed by the job. This constant is typically used for operations that modify the running profile but don't handle dynamic changes without restarting the workbench.
        Since:
        2.0
        See Also:
        Constant Field Values
    • Constructor Detail

      • ProvisioningJob

        public ProvisioningJob​(String name,
                               ProvisioningSession session)
        Create a provisioning job with the given name that uses the provided provisioning session for retrieving any services needed.
        Parameters:
        name - the name of the job
        session - the session providing the services
    • Method Detail

      • getSession

        protected ProvisioningSession getSession()
        Return the provisioning session that is used by the receiver when retrieving necessary provisioning services.
        Returns:
        the session
        See Also:
        ProvisioningSession
      • setAdditionalProgressMonitor

        public void setAdditionalProgressMonitor​(IProgressMonitor monitor)
      • run

        public final IStatus run​(IProgressMonitor monitor)
        Executes this job. Returns the result of the execution. This method is overridden to look for a wrapped progress monitor for reporting progress.
        Specified by:
        run in class Job
        Parameters:
        monitor - the monitor to be used for reporting progress and responding to cancelation. The monitor is never null
        Returns:
        resulting status of the run. The result must not be null
        See Also:
        Job.run(org.eclipse.core.runtime.IProgressMonitor)
        Restriction:
        This method is not intended to be referenced by clients.
      • runModal

        public abstract IStatus runModal​(IProgressMonitor monitor)
        Perform the specific work involved in running this job in the current thread. This method can be called directly by clients, or in the course of running the job in the background.
        Parameters:
        monitor - the progress monitor to use for the operation
        Returns:
        a status indicating the result of the operation.
      • getRestartPolicy

        public int getRestartPolicy()
        Return the restart policy that is appropriate for this job.
        Returns:
        a constant indicating the restart policy
        See Also:
        RESTART_NONE, RESTART_ONLY, RESTART_OR_APPLY
      • getErrorStatus

        protected IStatus getErrorStatus​(String message,
                                         ProvisionException e)
        Return an error status that can be used to report the specified exception.
        Parameters:
        message - the message that should be used in the status
        e - the exception to be reported
        Returns:
        a status that can be used to describe the exception