Class SharedCodeService

java.lang.Object
org.praxislive.code.SharedCodeService
All Implemented Interfaces:
Protocol, Service

public final class SharedCodeService extends Object implements Service
A Service for handling shared code updates and creating dependent CodeContext. Must be running in the same process as the components due to task and result references. Should make use of a CodeCompilerService implementation for compiling source code (which does support other processes).
  • Field Details

    • NEW_SHARED

      public static final String NEW_SHARED
      Control ID of the new shared code control.
      See Also:
    • NEW_SHARED_INFO

      public static final ControlInfo NEW_SHARED_INFO
      ControlInfo of the new shared code control.
  • Constructor Details

    • SharedCodeService

      public SharedCodeService()
  • Method Details

    • controls

      public Stream<String> controls()
      Description copied from interface: Protocol
      The names of the controls that a component advertising this protocol must provide.
      Specified by:
      controls in interface Protocol
      Returns:
      stream of control names
    • getControlInfo

      public ControlInfo getControlInfo(String control)
      Description copied from interface: Protocol
      Query the ControlInfo for the provided control name on this protocol. The component implementing this protocol will generally use the control info provided here inside its component info. In exceptional circumstances, the component may extend or adapt the behaviour of the control, as long as it is fully compatible with this control info and the specification.
      Specified by:
      getControlInfo in interface Protocol
      Parameters:
      control - name of control
      Returns:
      control info for named control