Component
/ redhawk / rest / domains / DOMAIN_NAME / applications / APPLICATION_ID / components
{
"components": [
{
"id": "componentId",
"name": "componentName"
}
]
}
The components
list can be indexed further by using the id
field of interest.
/ redhawk / rest / domains / DOMAIN_NAME / applications / APPLICATION_ID / components / COMPONENT_ID
{
"id": "componentId",
"name": "componentName",
"started": false, /* or true */
"properties": [
/* List of property structures */
],
"ports": [
/* List of port structures */
]
}
/ PARENT_PATH / properties
{
"properties": [
/* List of property structures */
]
}
The properties
field is a list of structures indexed by id
following this general format:
{
"id": "propertyId",
"name": "propertyName",
"kinds": [], /* configure, allocation, execparam, event, message */
"scaType": "simple", /* simple, struct, simpleseq, structseq */
"mode": "readwrite", /* readonly, writeonly, readwrite */
"value": "", /* Depends on scaType */
}
For more information on the structures, see Properties.
/ PARENT_PATH / properties
{
"properties": [
/* simplified list of properties */
{
"id": "propertyId",
"value": "" /* As appropriate */
},
]
}
The properties
field is a list of structures which follow the structures defined in Properties with the exception that only the id
and value
fields are important. Everything else is optional and will be ignored at the server.
Unlike Devices, Component properties can only be configured (the function of which only returns void
). Therefore the server does not emit a response structure as it does for Devices.
/ PARENT_PATH / ports
{
"ports": [
/* List of port structures */
]
}
The general format for ports is shown here:
{
"name": "portName",
"repId": "IDL:<namespace>/<type>:<version>",
"direction": "Uses", /* or Provides */
"idl": {
"namespace": "BULKIO", /* or FRONTEND */
"version": ":<version>",
"type": "<type>"
}
}
The list can be indexed using the name
field. See Ports for more information.