Package org.opentcs.components.kernel

# Interface PeripheralJobDispatcher

All Superinterfaces:
  `Lifecycle`

    public interface PeripheralJobDispatcher
    extends Lifecycle

This interface declares the methods a peripheral job dispatcher module for the openTCS kernel must implement.

A peripheral job dispatcher manages the distribution of peripheral jobs among the perihperal devices represented by locations in a system. It is basically event-driven, where an event can be a new peripheral job being introduced into the system or a peripheral device becoming available for processing existing jobs.

- ## Method Summary

  Modifier and Type | Method | Description
  --- | --- | ---
  `void` | `dispatch()` | Notifies the dispatcher that it should start the dispatching process.
  `void` | `withdrawJob​(Location location)` | Notifies the dispatcher that any job a peripheral device (represented by the given location) might be processing is to be withdrawn.

  ### Methods inherited from interface org.opentcs.components.Lifecycle

  `initialize, isInitialized, terminate`

- ## Method Details

  - ### dispatch

    void dispatch()
    Notifies the dispatcher that it should start the dispatching process.

  - ### withdrawJob

    void withdrawJob​(@Nonnull Location location)
    Notifies the dispatcher that any job a peripheral device (represented by the given location) might be processing is to be withdrawn.
    Parameters:
      `location` - The location representing a peripheral device whose job is withdrawn.