Class KernelInjectionModule

java.lang.Object
com.google.inject.AbstractModule
org.opentcs.customizations.ConfigurableInjectionModule
org.opentcs.customizations.kernel.KernelInjectionModule
All Implemented Interfaces:
com.google.inject.Module

public abstract class KernelInjectionModule extends ConfigurableInjectionModule
A base class for Guice modules adding or customizing bindings for the kernel application.
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    protected void
    bindDispatcher(Class<? extends org.opentcs.components.kernel.Dispatcher> clazz)
    Sets the dispatcher implementation to be used.
    protected void
    bindPeripheralJobDispatcher(Class<? extends org.opentcs.components.kernel.PeripheralJobDispatcher> clazz)
    Sets the peripheral job dispatcher implementation to be used.
    protected void
    bindRouter(Class<? extends org.opentcs.components.kernel.Router> clazz)
    Sets the router implementation to be used.
    protected void
    bindScheduler(Class<? extends org.opentcs.components.kernel.Scheduler> clazz)
    Sets the scheduler implementation to be used.
    protected com.google.inject.multibindings.MapBinder<String,org.opentcs.components.kernel.routing.EdgeEvaluator>
    Returns a mapbinder that can be used to register edge evaluators.
    protected com.google.inject.multibindings.Multibinder<org.opentcs.components.kernel.KernelExtension>
    Returns a multibinder that can be used to register kernel extensions for all kernel states.
    protected com.google.inject.multibindings.Multibinder<org.opentcs.components.kernel.KernelExtension>
    Returns a multibinder that can be used to register kernel extensions for the kernel's modelling state.
    protected com.google.inject.multibindings.Multibinder<org.opentcs.components.kernel.KernelExtension>
    Returns a multibinder that can be used to register kernel extensions for the kernel's operating state.
    protected com.google.inject.multibindings.Multibinder<org.opentcs.components.kernel.OrderSequenceCleanupApproval>
    Returns a multibinder that can be used to register order sequence cleanup approvals.
    protected com.google.inject.multibindings.Multibinder<org.opentcs.drivers.peripherals.PeripheralCommAdapterFactory>
    Returns a multibinder that can be used to register peripheral communication adapter factories.
    protected com.google.inject.multibindings.Multibinder<org.opentcs.components.kernel.PeripheralJobCleanupApproval>
    Returns a multibinder that can be used to register peripheral job cleanup approvals.
    protected com.google.inject.multibindings.Multibinder<org.opentcs.components.kernel.Scheduler.Module>
    Returns a multibinder that can be used to register scheduler modules.
    protected com.google.inject.multibindings.Multibinder<org.opentcs.components.kernel.TransportOrderCleanupApproval>
    Returns a multibinder that can be used to register transport order cleanup approvals.
    protected com.google.inject.multibindings.Multibinder<org.opentcs.drivers.vehicle.VehicleCommAdapterFactory>
    Returns a multibinder that can be used to register vehicle communication adapter factories.

    Methods inherited from class org.opentcs.customizations.ConfigurableInjectionModule

    getConfigBindingProvider, setConfigBindingProvider

    Methods inherited from class com.google.inject.AbstractModule

    addError, addError, addError, bind, bind, bind, bindConstant, binder, bindInterceptor, bindListener, bindListener, bindScope, configure, configure, convertToTypes, currentStage, getMembersInjector, getMembersInjector, getProvider, getProvider, install, requestInjection, requestInjection, requestStaticInjection, requireBinding, requireBinding

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • KernelInjectionModule

      public KernelInjectionModule()
  • Method Details

    • bindScheduler

      protected void bindScheduler(Class<? extends org.opentcs.components.kernel.Scheduler> clazz)
      Sets the scheduler implementation to be used.
      Parameters:
      clazz - The implementation.
    • bindRouter

      protected void bindRouter(Class<? extends org.opentcs.components.kernel.Router> clazz)
      Sets the router implementation to be used.
      Parameters:
      clazz - The implementation.
    • bindDispatcher

      protected void bindDispatcher(Class<? extends org.opentcs.components.kernel.Dispatcher> clazz)
      Sets the dispatcher implementation to be used.
      Parameters:
      clazz - The implementation.
    • bindPeripheralJobDispatcher

      protected void bindPeripheralJobDispatcher(Class<? extends org.opentcs.components.kernel.PeripheralJobDispatcher> clazz)
      Sets the peripheral job dispatcher implementation to be used.
      Parameters:
      clazz - The implementation.
    • extensionsBinderAllModes

      protected com.google.inject.multibindings.Multibinder<org.opentcs.components.kernel.KernelExtension> extensionsBinderAllModes()
      Returns a multibinder that can be used to register kernel extensions for all kernel states.
      Returns:
      The multibinder.
    • extensionsBinderModelling

      protected com.google.inject.multibindings.Multibinder<org.opentcs.components.kernel.KernelExtension> extensionsBinderModelling()
      Returns a multibinder that can be used to register kernel extensions for the kernel's modelling state.
      Returns:
      The multibinder.
    • extensionsBinderOperating

      protected com.google.inject.multibindings.Multibinder<org.opentcs.components.kernel.KernelExtension> extensionsBinderOperating()
      Returns a multibinder that can be used to register kernel extensions for the kernel's operating state.
      Returns:
      The multibinder.
    • vehicleCommAdaptersBinder

      protected com.google.inject.multibindings.Multibinder<org.opentcs.drivers.vehicle.VehicleCommAdapterFactory> vehicleCommAdaptersBinder()
      Returns a multibinder that can be used to register vehicle communication adapter factories.
      Returns:
      The multibinder.
    • peripheralCommAdaptersBinder

      protected com.google.inject.multibindings.Multibinder<org.opentcs.drivers.peripherals.PeripheralCommAdapterFactory> peripheralCommAdaptersBinder()
      Returns a multibinder that can be used to register peripheral communication adapter factories.
      Returns:
      The multibinder.
    • transportOrderCleanupApprovalBinder

      protected com.google.inject.multibindings.Multibinder<org.opentcs.components.kernel.TransportOrderCleanupApproval> transportOrderCleanupApprovalBinder()
      Returns a multibinder that can be used to register transport order cleanup approvals.
      Returns:
      The multibinder.
    • orderSequenceCleanupApprovalBinder

      protected com.google.inject.multibindings.Multibinder<org.opentcs.components.kernel.OrderSequenceCleanupApproval> orderSequenceCleanupApprovalBinder()
      Returns a multibinder that can be used to register order sequence cleanup approvals.
      Returns:
      The multibinder.
    • peripheralJobCleanupApprovalBinder

      protected com.google.inject.multibindings.Multibinder<org.opentcs.components.kernel.PeripheralJobCleanupApproval> peripheralJobCleanupApprovalBinder()
      Returns a multibinder that can be used to register peripheral job cleanup approvals.
      Returns:
      The multibinder.
    • schedulerModuleBinder

      protected com.google.inject.multibindings.Multibinder<org.opentcs.components.kernel.Scheduler.Module> schedulerModuleBinder()
      Returns a multibinder that can be used to register scheduler modules.
      Returns:
      The multibinder.
    • edgeEvaluatorBinder

      protected com.google.inject.multibindings.MapBinder<String,org.opentcs.components.kernel.routing.EdgeEvaluator> edgeEvaluatorBinder()
      Returns a mapbinder that can be used to register edge evaluators.
      Returns:
      The mapbinder.