Interface PeripheralController

All Superinterfaces:
Lifecycle

public interface PeripheralController
extends Lifecycle
Provides high-level methods for the system to control a peripheral device.
  • Method Details

    • process

      void process​(@Nonnull PeripheralJob job, @Nonnull PeripheralJobCallback callback) throws java.lang.IllegalStateException
      Lets the peripheral device associated with this controller process the given job. The callback is used to inform about the successful or failed completion of the job.
      Parameters:
      job - The job to process.
      callback - The callback to use.
      Throws:
      java.lang.IllegalStateException - If this peripheral device associated with this controller cannot process the job.
    • canProcess

      @Nonnull ExplainedBoolean canProcess​(@Nonnull PeripheralJob job)
      Checks if the peripheral device would be able to process the given job, taking into account its current state.
      Parameters:
      job - A job that might have to be processed.
      Returns:
      An ExplainedBoolean telling if the peripheral device would be able to process the job.
    • sendCommAdapterCommand

      void sendCommAdapterCommand​(@Nonnull PeripheralAdapterCommand command)
      Sends a PeripheralAdapterCommand to the communication adapter.
      Parameters:
      command - The adapter command to be sent.