Interface Dispatcher
- All Superinterfaces:
Lifecycle
public interface Dispatcher extends Lifecycle
A dispatcher manages the distribution of transport orders among the vehicles in a system. It is basically event-driven, where an event can be a new transport order being introduced into the system or a vehicle becoming available for processing existing orders.
-
Field Summary
Fields Modifier and Type Field Description static java.lang.String
PROPKEY_ASSIGNED_PARKING_POSITION
The key of a vehicle property defining the name of the vehicle's assigned parking position.static java.lang.String
PROPKEY_ASSIGNED_RECHARGE_LOCATION
The key of a vehicle property defining the name of the vehicle's assigned recharge location.static java.lang.String
PROPKEY_PARKING_POSITION_PRIORITY
The key of a parking position property defining its priority.static java.lang.String
PROPKEY_PREFERRED_PARKING_POSITION
The key of a vehicle property defining the name of the vehicle's preferred parking position.static java.lang.String
PROPKEY_PREFERRED_RECHARGE_LOCATION
The key of a vehicle property defining the name of the vehicle's preferred recharge location. -
Method Summary
Modifier and Type Method Description void
dispatch()
Notifies the dispatcher that it should start the dispatching process.default void
reroute(Vehicle vehicle, ReroutingType reroutingType)
Notifies the dispatcher of a request to reroute the given vehicle considering the given reoruting type.void
topologyChanged()
Notifies the dispatcher of changes in the topology.void
withdrawOrder(Vehicle vehicle, boolean immediateAbort)
Notifies the dispatcher that any order a given vehicle might be processing is to be withdrawn.void
withdrawOrder(TransportOrder order, boolean immediateAbort)
Notifies the dispatcher that the given transport order is to be withdrawn/aborted.Methods inherited from interface org.opentcs.components.Lifecycle
initialize, isInitialized, terminate
-
Field Details
-
PROPKEY_PARKING_POSITION_PRIORITY
static final java.lang.String PROPKEY_PARKING_POSITION_PRIORITYThe key of a parking position property defining its priority.Whether and in what way this is respected for assigning a parking position to a vehicle is implementation-specific.
- See Also:
- Constant Field Values
-
PROPKEY_ASSIGNED_PARKING_POSITION
static final java.lang.String PROPKEY_ASSIGNED_PARKING_POSITIONThe key of a vehicle property defining the name of the vehicle's assigned parking position.Whether and in what way this is respected for selecting a parking position is implementation-specific.
- See Also:
- Constant Field Values
-
PROPKEY_PREFERRED_PARKING_POSITION
static final java.lang.String PROPKEY_PREFERRED_PARKING_POSITIONThe key of a vehicle property defining the name of the vehicle's preferred parking position.Whether and in what way this is respected for selecting a parking position is implementation-specific.
- See Also:
- Constant Field Values
-
PROPKEY_ASSIGNED_RECHARGE_LOCATION
static final java.lang.String PROPKEY_ASSIGNED_RECHARGE_LOCATIONThe key of a vehicle property defining the name of the vehicle's assigned recharge location.Whether and in what way this is respected for selecting a recharge location is implementation-specific.
- See Also:
- Constant Field Values
-
PROPKEY_PREFERRED_RECHARGE_LOCATION
static final java.lang.String PROPKEY_PREFERRED_RECHARGE_LOCATIONThe key of a vehicle property defining the name of the vehicle's preferred recharge location.Whether and in what way this is respected for selecting a recharge location is implementation-specific.
- See Also:
- Constant Field Values
-
-
Method Details
-
dispatch
void dispatch()Notifies the dispatcher that it should start the dispatching process. -
withdrawOrder
Notifies the dispatcher that the given transport order is to be withdrawn/aborted.- Parameters:
order
- The transport order to be withdrawn/aborted.immediateAbort
- Whether the order should be aborted immediately instead of withdrawn.
-
withdrawOrder
Notifies the dispatcher that any order a given vehicle might be processing is to be withdrawn.- Parameters:
vehicle
- The vehicle whose order is withdrawn.immediateAbort
- Whether the vehicle's order should be aborted immediately instead of withdrawn.
-
topologyChanged
void topologyChanged()Notifies the dispatcher of changes in the topology. -
reroute
@ScheduledApiChange(when="6.0", details="Default implementation will be removed.") default void reroute(@Nonnull Vehicle vehicle, @Nonnull ReroutingType reroutingType)Notifies the dispatcher of a request to reroute the given vehicle considering the given reoruting type.- Parameters:
vehicle
- The vehicle to be rerouted.reroutingType
- The type of the requested rerouting.
-