Class AssemblyService

All Implemented Interfaces:
CtxEventListener, ContextHandleAware, HandleAware, Ready, ReadyListener

public final class AssemblyService extends AbstractService
Manages assemblies in kOS.

An assembly defines a collection of hardware for the device, and this service is used to install the assembly, which makes the hardware visible. A typical device only has a single assembly, but it is possible to have multiple assemblies for devices that support expansion hardware. In some cases, optional hardware is simply included in the main assembly and marked optional, but in other cases it may be cleaner to have the administrator indicate that they are installing expansion hardware which adds another assembly. See the developer site for more details about ways to handle optional and expansion hardware.

An assembly contains instances of various hardware-related objects such as nozzles, boards, pumps, and so on. The "install" process configures these devices, sets handle paths, and generally gets the contents of the assembly ready for use. This service then fires lifecycle events to all other parts of kOS, allowing them to react to the assembly's installation, allowing other components in the system to react to system changes in an atomic way.

Since:
1.0
Version:
2023-03-06
  • Method Details

    • install

      public void install(Assembly assembly)
      Installs an assembly.
    • uninstall

      public void uninstall(Assembly assembly)
      Uninstalls an assembly.
    • getCoreAssembly

      public Assembly getCoreAssembly()
    • getAssemblies

      public Set<Assembly> getAssemblies()