public interface ControlUnitAdmin
ControlUnit| Modifier and Type | Method and Description |
|---|---|
java.lang.String |
createControlUnit(java.lang.String controlUnitType,
java.lang.String constructorID,
java.lang.Object arguments)
Explicitly creates control unit instance of a specified type using
a supplied constructor and returns the id of the newly created control unit.
|
void |
destroyControlUnit(java.lang.String controlUnitType,
java.lang.String controlUnitID)
Explicitly removes control unit instance with a given type and id.
|
java.lang.String[] |
findControlUnits(java.lang.String controlUnitType,
java.lang.String finderID,
java.lang.Object arguments)
Returns ids of the control units with a given type and satisfying a given finder
method with the supplied argument(s).
|
ControlUnit |
getControlUnit(java.lang.String controlUnitType,
java.lang.String controlUnitID)
Returns the Control Unit of a specified type and with a specified id.
|
java.lang.String[] |
getControlUnitTypes()
Returns all distinct types of control units currently exported
in the framework.
|
java.lang.String |
getControlUnitTypeVersion(java.lang.String controlUnitType)
Returns the current version for given type of control units currently exported
in the framework.
|
java.lang.String[] |
getParentControlUnits(java.lang.String childControlUnitType,
java.lang.String childControlUnitID,
java.lang.String parentControlUnitType)
Returns ids of the exported control units of givent type that are parents of
a control units with a given type and id.
|
java.lang.String[] |
getParentControlUnitTypes(java.lang.String childControlUnitType)
Returns types of the exported control units that may be parents of
a control units with a given type.
|
java.lang.String[] |
getSubControlUnits(java.lang.String parentControlUnitType,
java.lang.String parentControlUnitID,
java.lang.String childControlUnitType)
Returns ids of children of a control unit specified by a given type and id.
|
java.lang.String[] |
getSubControlUnitTypes(java.lang.String parentControlUnitType)
Returns types of the exported control units that may be children of
a control units with a given type.
|
java.lang.Object |
invokeAction(java.lang.String controlUnitType,
java.lang.String controlUnitID,
java.lang.String actionID,
java.lang.Object arguments)
Executes a given action over a control unit with a given id.
|
java.lang.Object |
queryStateVariable(java.lang.String controlUnitType,
java.lang.String controlUnitID,
java.lang.String stateVariableID)
Queries a control unit with a given type and id for the value of a
given state variable.
|
java.lang.String[] getControlUnitTypes()
java.lang.String getControlUnitTypeVersion(java.lang.String controlUnitType)
controlUnitType - control unit typejava.lang.IllegalArgumentException - if there is no such type
of units exported in the frameworkjava.lang.String[] findControlUnits(java.lang.String controlUnitType,
java.lang.String finderID,
java.lang.Object arguments)
throws java.lang.Exception
"$find.".
Every finder method may have different number and/or type of arguments which are also
specified in the metadata.
null as finderId and arguments to method
returns all ids of all control units of the specified by the cuType type.
Otherwise the exact searching of the Control Units is delegated to the
ControlUnitFactory for this control unit type. Therefore invoking this method
with non-null as finderId and arguments is not
supported for finding control units exported by ManagedControlUnit services.
If there are no control units that satisfies the finder condition the method returns
null.controlUnitType - type of control units to findfinderID - the id of the finder method. Must start with "$find.".arguments - the finder argument(s). If the argument is only
one this is the argument itself. If the arguments are more then one, the
value must be a Object[] and arguments are retrieved from
that array.ControlUnit identifiers.java.lang.Exception - if an error occurs while searching control units.java.lang.IllegalArgumentException - if this factory does not have finder
with the supplied Id or the arguments number and/or types do not match the
finder arguments.ControlUnit getControlUnit(java.lang.String controlUnitType, java.lang.String controlUnitID)
controlUnitType - the type of the Control UnitcontrolUnitID - the id of the Control UnitControlUnit identified by the specified
(controlUnitType, controlUnitId) pair or
null if there is not such control unit exported in the
framework.java.lang.String[] getSubControlUnits(java.lang.String parentControlUnitType,
java.lang.String parentControlUnitID,
java.lang.String childControlUnitType)
parentControlUnitType - the type of the parent Control Unit.parentControlUnitID - the id of the parent Control Unit.childControlUnitType - the type of the child Control Units.java.lang.String[] getParentControlUnitTypes(java.lang.String childControlUnitType)
childControlUnitType - child unit typejava.lang.String[] getParentControlUnits(java.lang.String childControlUnitType,
java.lang.String childControlUnitID,
java.lang.String parentControlUnitType)
childControlUnitType - child unit typechildControlUnitID - child unit idparentControlUnitType - parent units typejava.lang.String createControlUnit(java.lang.String controlUnitType,
java.lang.String constructorID,
java.lang.Object arguments)
throws java.lang.Exception
"$create.". Every constructor may have different number and/or
types of arguments which are also defined in the metadata.
ControlUnitFactory
of this control unit type. Therefore this method is not supported for control units
exported by ManagedControlUnit services.controlUnitType - - the type of the Control Unit.constructorID - the id of the constructors. Must start with "$create.".arguments - - the 'constructors' argument(s). If the argument is only
one this is the argument itself. If the arguments are more then one, the
value must be a Object[] and arguments are retrieved from that array.java.lang.Exception - if an error occurs while creating Control Unit.java.lang.IllegalArgumentException - if this factory does not have constructor
with the supplied Id or the arguments number and/or types do not match the
constructor arguments.void destroyControlUnit(java.lang.String controlUnitType,
java.lang.String controlUnitID)
throws java.lang.Exception
IllegalArgumentException. Support for explicit removing of
Control Units is specified in the control unit metadata by presence of an
action with id "$destroy".controlUnitType - - the type of the Control Unit.controlUnitID - - controlUnitId control unit id.java.lang.Exception - if an error occurs while destroying of the Control Unit.java.lang.IllegalArgumentException - if this factory does not support
explicit destroy of the control units.java.lang.String[] getSubControlUnitTypes(java.lang.String parentControlUnitType)
parentControlUnitType - parent control unit typejava.lang.Object queryStateVariable(java.lang.String controlUnitType,
java.lang.String controlUnitID,
java.lang.String stateVariableID)
controlUnitType - the type of the control unitcontrolUnitID - the id of the control unitstateVariableID - the id of the variablejava.lang.Object invokeAction(java.lang.String controlUnitType,
java.lang.String controlUnitID,
java.lang.String actionID,
java.lang.Object arguments)
throws java.lang.Exception
controlUnitType - the type of the control unitcontrolUnitID - the id of the control unitactionID - the id of the actionarguments - the input argument(s). If the argument is only one this is
the argument itself. If the arguments are more then one, the
value must be a Object[] and arguments are retrieved
from that array.null if the action does not
return value.java.lang.Exception - if an error occurs while executing action.java.lang.IllegalArgumentException - if the Control Unit does not have action
with the supplied Id or the arguments number and/or types do not match the
action arguments.Copyright © 2019 Bosch Software Innovations GmbH. All Rights Reserved.