use of it.unibo.arces.wot.sepa.commons.sparql.RDFTermURI in project SEPA by arces-wot.
the class SmartLightingBenchmark method populate.
private int populate(int nRoad, int nPost, int firstRoadIndex) throws SEPAProtocolException, SEPASecurityException {
Producer road = new Producer(appProfile, "INSERT_ROAD");
Producer addPost2Road = new Producer(appProfile, "ADD_POST");
Producer sensor = new Producer(appProfile, "INSERT_SENSOR");
Producer post = new Producer(appProfile, "INSERT_POST");
Producer lamp = new Producer(appProfile, "INSERT_LAMP");
Producer addSensor2post = new Producer(appProfile, "ADD_SENSOR");
Producer addLamp2post = new Producer(appProfile, "ADD_LAMP");
logger.debug("Number of roads: " + nRoad + " Posts/road: " + nPost + " First road index: " + firstRoadIndex);
Bindings bindings = new Bindings();
for (int roadIndex = firstRoadIndex; roadIndex < firstRoadIndex + nRoad; roadIndex++) {
// while (nRoad>0) {
String roadURI = "bench:Road_" + roadIndex;
bindings.addBinding("road", new RDFTermURI(roadURI));
long startTime = System.nanoTime();
Response ret = road.update(bindings);
long stopTime = System.nanoTime();
logger.info("INSERT ROAD " + roadURI + " " + (stopTime - startTime) + " 1");
if (!ret.getClass().equals(UpdateResponse.class))
return firstRoadIndex;
for (int postIndex = 1; postIndex < nPost + 1; postIndex++) {
// while(postNumber>0) {
// URI
String postURI = "bench:Post_" + roadIndex + "_" + postIndex;
String lampURI = "bench:Lamp_" + roadIndex + "_" + postIndex;
String temparatureURI = "bench:Temperature_" + roadIndex + "_" + postIndex;
String presenceURI = "bench:Presence_" + roadIndex + "_" + postIndex;
bindings.addBinding("post", new RDFTermURI(postURI));
bindings.addBinding("lamp", new RDFTermURI(lampURI));
// New post
startTime = System.nanoTime();
ret = post.update(bindings);
stopTime = System.nanoTime();
logger.info("INSERT POST " + postURI + " " + (stopTime - startTime) + " 3");
if (!ret.getClass().equals(UpdateResponse.class))
return firstRoadIndex;
// Add post to road
startTime = System.nanoTime();
ret = addPost2Road.update(bindings);
stopTime = System.nanoTime();
logger.info("INSERT POST2ROAD " + postURI + " " + (stopTime - startTime) + " 1");
if (!ret.getClass().equals(UpdateResponse.class))
return firstRoadIndex;
// New lamp
startTime = System.nanoTime();
ret = lamp.update(bindings);
stopTime = System.nanoTime();
logger.info("INSERT LAMP " + lampURI + " " + (stopTime - startTime) + " 4");
if (!ret.getClass().equals(UpdateResponse.class))
return firstRoadIndex;
// Add lamp to post
startTime = System.nanoTime();
ret = addLamp2post.update(bindings);
stopTime = System.nanoTime();
logger.info("INSERT LAMP2POST " + lampURI + " " + (stopTime - startTime) + " 1");
if (!ret.getClass().equals(UpdateResponse.class))
return firstRoadIndex;
// New temperature sensor
bindings.addBinding("sensor", new RDFTermURI(temparatureURI));
bindings.addBinding("type", new RDFTermURI("bench:TEMPERATURE"));
bindings.addBinding("unit", new RDFTermURI("bench:CELSIUS"));
bindings.addBinding("value", new RDFTermLiteral("0"));
startTime = System.nanoTime();
ret = sensor.update(bindings);
stopTime = System.nanoTime();
logger.info("INSERT SENSOR " + temparatureURI + " " + (stopTime - startTime) + " 5");
if (!ret.getClass().equals(UpdateResponse.class))
return firstRoadIndex;
startTime = System.nanoTime();
ret = addSensor2post.update(bindings);
stopTime = System.nanoTime();
logger.info("INSERT SENSOR2POST " + temparatureURI + " " + (stopTime - startTime) + " 1");
if (!ret.getClass().equals(UpdateResponse.class))
return firstRoadIndex;
// New presence sensor
bindings.addBinding("sensor", new RDFTermURI(presenceURI));
bindings.addBinding("type", new RDFTermURI("bench:PRESENCE"));
bindings.addBinding("unit", new RDFTermURI("bench:BOOLEAN"));
bindings.addBinding("value", new RDFTermLiteral("false"));
startTime = System.nanoTime();
ret = sensor.update(bindings);
stopTime = System.nanoTime();
logger.info("INSERT SENSOR " + presenceURI + " " + (stopTime - startTime) + " 5");
if (!ret.getClass().equals(UpdateResponse.class))
return firstRoadIndex;
startTime = System.nanoTime();
ret = addSensor2post.update(bindings);
stopTime = System.nanoTime();
logger.info("INSERT SENSOR2POST " + presenceURI + " " + (stopTime - startTime) + " 1");
if (!ret.getClass().equals(UpdateResponse.class))
return firstRoadIndex;
}
}
return firstRoadIndex + nRoad;
}
use of it.unibo.arces.wot.sepa.commons.sparql.RDFTermURI in project SEPA by arces-wot.
the class SmartLightingBenchmark method updateRoad.
protected boolean updateRoad(int nRoad, Integer dimming) {
String roadURI = "bench:Road_" + nRoad;
Bindings bindings = new Bindings();
bindings.addBinding("?road", new RDFTermURI(roadURI));
bindings.addBinding("?dimming", new RDFTermLiteral(dimming.toString()));
long startTime = System.nanoTime();
Response ret = roadUpdater.update(bindings);
long stopTime = System.nanoTime();
logger.info("UPDATE ROAD " + roadURI + " " + (stopTime - startTime));
return ret.getClass().equals(UpdateResponse.class);
}
use of it.unibo.arces.wot.sepa.commons.sparql.RDFTermURI in project SEPA by arces-wot.
the class MQTTServerMonitoring method addObservation.
private static void addObservation(Entry<String, JsonElement> mapping) {
String topic = mapping.getKey();
String observation = mapping.getValue().getAsJsonObject().get("observation").getAsString();
String unit = mapping.getValue().getAsJsonObject().get("unit").getAsString();
String location = mapping.getValue().getAsJsonObject().get("location").getAsString();
String comment = mapping.getValue().getAsJsonObject().get("comment").getAsString();
String label = mapping.getValue().getAsJsonObject().get("label").getAsString();
Bindings bindings = new Bindings();
bindings.addBinding("observation", new RDFTermURI(observation));
bindings.addBinding("comment", new RDFTermLiteral(comment));
bindings.addBinding("label", new RDFTermLiteral(label));
bindings.addBinding("location", new RDFTermURI(location));
bindings.addBinding("unit", new RDFTermURI(unit));
bindings.addBinding("topic", new RDFTermLiteral(topic));
logger.info("Add observation: " + bindings);
mqttInitializer.update(bindings);
}
use of it.unibo.arces.wot.sepa.commons.sparql.RDFTermURI in project SEPA by arces-wot.
the class MQTTSmartifier method updateObservationValue.
private void updateObservationValue(String observation, String value) {
Bindings bindings = new Bindings();
bindings.addBinding("observation", new RDFTermURI(observation));
bindings.addBinding("value", new RDFTermLiteral(value));
logger.info("Update observation: " + bindings);
update(bindings);
}
use of it.unibo.arces.wot.sepa.commons.sparql.RDFTermURI in project SEPA by arces-wot.
the class StatusMonitor method switchStatus.
private void switchStatus(String thing, boolean status) {
// Update
Bindings bindings = new Bindings();
if (status)
bindings.addBinding("value", new RDFTermLiteral("true"));
else
bindings.addBinding("value", new RDFTermLiteral("false"));
bindings.addBinding("thing", new RDFTermURI(thing));
Response ret = update(bindings);
if (ret.isUpdateResponse()) {
discoverables.put(thing, status);
if (status)
logger.warn("Web Thing: " + thing + " turned ON");
else
logger.warn("Web Thing: " + thing + " turned OFF");
}
}
Aggregations