java.lang.Object
org.praxislive.code.SharedCodeService
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).-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic classA dependent result with new code context linked to new shared code classes.static classSharedCodeService.DependentTask<D extends CodeDelegate>A dependent task for recompiling aCodeDelegateagainst the new shared code classes.static classResult with shared classes, dependent code contexts, and log.static classTask containing new shared code and dependents to be updated, for sending to the SharedCodeService.Nested classes/interfaces inherited from interface org.praxislive.core.Protocol
Protocol.Type<T extends Protocol>, Protocol.TypeProvider -
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final StringControl ID of the new shared code control.static final ControlInfoControlInfo of the new shared code control. -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptioncontrols()The names of the controls that a component advertising this protocol must provide.getControlInfo(String control) Query the ControlInfo for the provided control name on this protocol.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.praxislive.core.Protocol
optionalControls
-
Field Details
-
NEW_SHARED
Control ID of the new shared code control.- See Also:
-
NEW_SHARED_INFO
ControlInfo of the new shared code control.
-
-
Constructor Details
-
SharedCodeService
public SharedCodeService()
-
-
Method Details
-
controls
Description copied from interface:ProtocolThe names of the controls that a component advertising this protocol must provide. -
getControlInfo
Description copied from interface:ProtocolQuery 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:
getControlInfoin interfaceProtocol- Parameters:
control- name of control- Returns:
- control info for named control
-