Moved around some properties in the API
This commit is contained in:
parent
99a61f8ca3
commit
c27f1030b6
5 changed files with 35 additions and 28 deletions
|
|
@ -19,6 +19,7 @@
|
||||||
"type": "object",
|
"type": "object",
|
||||||
"$ref": "#/components/schemas/dataClass"
|
"$ref": "#/components/schemas/dataClass"
|
||||||
},
|
},
|
||||||
|
"dataType": {"type": "string"},
|
||||||
"name": {"type": "string"},
|
"name": {"type": "string"},
|
||||||
"id": {"type": "integer"},
|
"id": {"type": "integer"},
|
||||||
"map": {
|
"map": {
|
||||||
|
|
@ -29,7 +30,8 @@
|
||||||
"config": {
|
"config": {
|
||||||
"type": "object",
|
"type": "object",
|
||||||
"$ref": "#/components/schemas/configClass"
|
"$ref": "#/components/schemas/configClass"
|
||||||
}
|
},
|
||||||
|
"configType": {"type": "string"}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
|
|
@ -86,8 +88,6 @@
|
||||||
"configClass": {
|
"configClass": {
|
||||||
"type": "object",
|
"type": "object",
|
||||||
"properties": {
|
"properties": {
|
||||||
"typeConfig": {"type": "string"},
|
|
||||||
"typeData": {"type": "string"}
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
|
|
@ -198,7 +198,7 @@
|
||||||
"type": "string"
|
"type": "string"
|
||||||
},
|
},
|
||||||
"in": "query",
|
"in": "query",
|
||||||
"name": "typeConfig",
|
"name": "configType",
|
||||||
"required": false
|
"required": false
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
|
@ -206,7 +206,7 @@
|
||||||
"type": "string"
|
"type": "string"
|
||||||
},
|
},
|
||||||
"in": "query",
|
"in": "query",
|
||||||
"name": "typeData",
|
"name": "dataType",
|
||||||
"required": false
|
"required": false
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|
@ -276,7 +276,7 @@
|
||||||
"type": "string"
|
"type": "string"
|
||||||
},
|
},
|
||||||
"in": "query",
|
"in": "query",
|
||||||
"name": "typeConfig",
|
"name": "configType",
|
||||||
"required": false
|
"required": false
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
|
@ -284,7 +284,7 @@
|
||||||
"type": "string"
|
"type": "string"
|
||||||
},
|
},
|
||||||
"in": "query",
|
"in": "query",
|
||||||
"name": "typeData",
|
"name": "dataType",
|
||||||
"required": false
|
"required": false
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -57,7 +57,7 @@
|
||||||
// Only update if data has changed
|
// Only update if data has changed
|
||||||
row.dataset.deviceId = deviceData.id;
|
row.dataset.deviceId = deviceData.id;
|
||||||
row.cells[0].innerHTML = "<a href='?id=" + deviceData.id + "'>" + deviceData.name + "</a>";
|
row.cells[0].innerHTML = "<a href='?id=" + deviceData.id + "'>" + deviceData.name + "</a>";
|
||||||
row.cells[1].innerHTML = deviceData.config?.typeConfig;
|
row.cells[1].innerHTML = deviceData.configType;
|
||||||
row.cells[2].innerHTML = deviceData.data?.valueStr;
|
row.cells[2].innerHTML = deviceData.data?.valueStr;
|
||||||
|
|
||||||
row.dataset.timestamp = deviceData.data?.timestamp;
|
row.dataset.timestamp = deviceData.data?.timestamp;
|
||||||
|
|
@ -65,7 +65,7 @@
|
||||||
$(row.cells[3]).relTimestamp();
|
$(row.cells[3]).relTimestamp();
|
||||||
|
|
||||||
var actionHtml = "";
|
var actionHtml = "";
|
||||||
switch (deviceData.config?.typeData) {
|
switch (deviceData.dataType) {
|
||||||
case "ColorEventData":
|
case "ColorEventData":
|
||||||
actionHtml =
|
actionHtml =
|
||||||
'<input type="hidden" name="type" value="color">' +
|
'<input type="hidden" name="type" value="color">' +
|
||||||
|
|
|
||||||
|
|
@ -244,27 +244,32 @@ public abstract class HalAbstractDevice<V extends HalAbstractDevice, C extends H
|
||||||
DataNode deviceNode = new DataNode(DataNode.DataType.Map);
|
DataNode deviceNode = new DataNode(DataNode.DataType.Map);
|
||||||
deviceNode.set("id", getId());
|
deviceNode.set("id", getId());
|
||||||
deviceNode.set("name", getName());
|
deviceNode.set("name", getName());
|
||||||
deviceNode.set("user", getUser().getUsername());
|
deviceNode.set("owner", getUser().getUsername());
|
||||||
|
|
||||||
DataNode mapNode = deviceNode.set("map", DataNode.DataType.Map);
|
DataNode mapNode = deviceNode.set("map", DataNode.DataType.Map);
|
||||||
mapNode.set("x", getMapX());
|
mapNode.set("x", getMapX());
|
||||||
mapNode.set("y", getMapY());
|
mapNode.set("y", getMapY());
|
||||||
|
|
||||||
if (getDeviceConfig() != null) {
|
if (getDeviceConfig() != null) {
|
||||||
DataNode configNode = deviceNode.set("config", DataNode.DataType.Map);
|
deviceNode.set("configType", getDeviceConfig().getClass().getSimpleName());
|
||||||
configNode.set("typeConfig", getDeviceConfig().getClass().getSimpleName());
|
|
||||||
configNode.set("typeData", getDeviceConfig().getDeviceDataClass().getSimpleName());
|
|
||||||
|
|
||||||
|
DataNode configNode = deviceNode.set("config", DataNode.DataType.Map);
|
||||||
for (Configurator.ConfigurationParam param : getDeviceConfigurator().getConfiguration()) {
|
for (Configurator.ConfigurationParam param : getDeviceConfigurator().getConfiguration()) {
|
||||||
configNode.set(param.getName(), param.getString());
|
configNode.set(param.getName(), param.getString());
|
||||||
}
|
}
|
||||||
|
} else {
|
||||||
|
deviceNode.set("configType", (String)null);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (getDeviceData() != null) {
|
if (getDeviceData() != null) {
|
||||||
|
deviceNode.set("dataType", getDeviceConfig().getDeviceDataClass().getSimpleName());
|
||||||
|
|
||||||
DataNode dataNode = deviceNode.set("data", DataNode.DataType.Map);
|
DataNode dataNode = deviceNode.set("data", DataNode.DataType.Map);
|
||||||
dataNode.set("value", getDeviceData().getData());
|
dataNode.set("value", getDeviceData().getData());
|
||||||
dataNode.set("valueStr", getDeviceData().toString());
|
dataNode.set("valueStr", getDeviceData().toString());
|
||||||
dataNode.set("timestamp", getDeviceData().getTimestamp());
|
dataNode.set("timestamp", getDeviceData().getTimestamp());
|
||||||
|
} else {
|
||||||
|
deviceNode.set("dataType", (String)null);
|
||||||
}
|
}
|
||||||
|
|
||||||
return deviceNode;
|
return deviceNode;
|
||||||
|
|
|
||||||
|
|
@ -39,12 +39,12 @@ public class EventApiEndpoint extends HalApiEndpoint {
|
||||||
// Get Action
|
// Get Action
|
||||||
// --------------------------------------
|
// --------------------------------------
|
||||||
|
|
||||||
String[] req_ids = new String[0];
|
String[] reqIds = new String[0];
|
||||||
if (request.get("id") != null)
|
if (request.get("id") != null)
|
||||||
req_ids = request.get("id").split(",");
|
reqIds = request.get("id").split(",");
|
||||||
|
|
||||||
String req_typeConfig = request.get("typeConfig");
|
String reqConfigType = request.get("configType");
|
||||||
String req_typeData = request.get("typeData");
|
String reqDataType = request.get("dataType");
|
||||||
|
|
||||||
// Filter devices
|
// Filter devices
|
||||||
|
|
||||||
|
|
@ -53,19 +53,19 @@ public class EventApiEndpoint extends HalApiEndpoint {
|
||||||
boolean filter_match = true;
|
boolean filter_match = true;
|
||||||
|
|
||||||
// id filtering
|
// id filtering
|
||||||
if (!ObjectUtil.isEmpty((Object) req_ids) && !ArrayUtil.contains(req_ids, "" + event.getId())) {
|
if (!ObjectUtil.isEmpty((Object) reqIds) && !ArrayUtil.contains(reqIds, "" + event.getId())) {
|
||||||
filter_match = false;
|
filter_match = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
// device type filtering
|
// device type filtering
|
||||||
if (!ObjectUtil.isEmpty(req_typeConfig) &&
|
if (!ObjectUtil.isEmpty(reqConfigType) &&
|
||||||
!event.getDeviceConfig().getClass().getSimpleName().equals(req_typeConfig)) {
|
!event.getDeviceConfig().getClass().getSimpleName().equals(reqConfigType)) {
|
||||||
filter_match = false;
|
filter_match = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
// data type filtering
|
// data type filtering
|
||||||
if (!ObjectUtil.isEmpty(req_typeData) &&
|
if (!ObjectUtil.isEmpty(reqDataType) &&
|
||||||
!event.getDeviceConfig().getDeviceDataClass().getSimpleName().equals(req_typeData)) {
|
!event.getDeviceConfig().getDeviceDataClass().getSimpleName().equals(reqDataType)) {
|
||||||
filter_match = false;
|
filter_match = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -81,6 +81,7 @@ public class EventApiEndpoint extends HalApiEndpoint {
|
||||||
|
|
||||||
for (Event event : events) {
|
for (Event event : events) {
|
||||||
DataNode deviceNode = event.getDataNode();
|
DataNode deviceNode = event.getDataNode();
|
||||||
|
deviceNode.set("type", "Event");
|
||||||
root.add(deviceNode);
|
root.add(deviceNode);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -46,8 +46,8 @@ public class SensorApiEndpoint extends HalApiEndpoint {
|
||||||
if (request.get("id") != null)
|
if (request.get("id") != null)
|
||||||
reqIds = request.get("id").split(",");
|
reqIds = request.get("id").split(",");
|
||||||
|
|
||||||
String reqTypeConfig = request.get("typeConfig");
|
String reqConfigType = request.get("configType");
|
||||||
String reqTypeData = request.get("typeData");
|
String reqDataType = request.get("dataType");
|
||||||
|
|
||||||
|
|
||||||
List<Sensor> sensors = new ArrayList<>();
|
List<Sensor> sensors = new ArrayList<>();
|
||||||
|
|
@ -60,14 +60,14 @@ public class SensorApiEndpoint extends HalApiEndpoint {
|
||||||
}
|
}
|
||||||
|
|
||||||
// device type filtering
|
// device type filtering
|
||||||
if (!ObjectUtil.isEmpty(reqTypeConfig) &&
|
if (!ObjectUtil.isEmpty(reqConfigType) &&
|
||||||
!sensor.getDeviceConfig().getClass().getSimpleName().equals(reqTypeConfig)) {
|
!sensor.getDeviceConfig().getClass().getSimpleName().equals(reqConfigType)) {
|
||||||
filter_match = false;
|
filter_match = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
// data type filtering
|
// data type filtering
|
||||||
if (!ObjectUtil.isEmpty(reqTypeData) &&
|
if (!ObjectUtil.isEmpty(reqDataType) &&
|
||||||
!sensor.getDeviceConfig().getDeviceDataClass().getSimpleName().equals(reqTypeData)) {
|
!sensor.getDeviceConfig().getDeviceDataClass().getSimpleName().equals(reqDataType)) {
|
||||||
filter_match = false;
|
filter_match = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -118,6 +118,7 @@ public class SensorApiEndpoint extends HalApiEndpoint {
|
||||||
deviceNode.set("aggregate", aggregateNode);
|
deviceNode.set("aggregate", aggregateNode);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
deviceNode.set("type", "Sensor");
|
||||||
root.add(deviceNode);
|
root.add(deviceNode);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue