Search in sources :

Example 11 with RDFTermURI

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;
}
Also used : Response(it.unibo.arces.wot.sepa.commons.response.Response) SubscribeResponse(it.unibo.arces.wot.sepa.commons.response.SubscribeResponse) UpdateResponse(it.unibo.arces.wot.sepa.commons.response.UpdateResponse) ErrorResponse(it.unibo.arces.wot.sepa.commons.response.ErrorResponse) UpdateResponse(it.unibo.arces.wot.sepa.commons.response.UpdateResponse) Producer(it.unibo.arces.wot.sepa.pattern.Producer) RDFTermURI(it.unibo.arces.wot.sepa.commons.sparql.RDFTermURI) Bindings(it.unibo.arces.wot.sepa.commons.sparql.Bindings) RDFTermLiteral(it.unibo.arces.wot.sepa.commons.sparql.RDFTermLiteral)

Example 12 with RDFTermURI

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);
}
Also used : Response(it.unibo.arces.wot.sepa.commons.response.Response) SubscribeResponse(it.unibo.arces.wot.sepa.commons.response.SubscribeResponse) UpdateResponse(it.unibo.arces.wot.sepa.commons.response.UpdateResponse) ErrorResponse(it.unibo.arces.wot.sepa.commons.response.ErrorResponse) RDFTermURI(it.unibo.arces.wot.sepa.commons.sparql.RDFTermURI) Bindings(it.unibo.arces.wot.sepa.commons.sparql.Bindings) RDFTermLiteral(it.unibo.arces.wot.sepa.commons.sparql.RDFTermLiteral)

Example 13 with RDFTermURI

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);
}
Also used : RDFTermURI(it.unibo.arces.wot.sepa.commons.sparql.RDFTermURI) Bindings(it.unibo.arces.wot.sepa.commons.sparql.Bindings) RDFTermLiteral(it.unibo.arces.wot.sepa.commons.sparql.RDFTermLiteral)

Example 14 with RDFTermURI

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);
}
Also used : RDFTermURI(it.unibo.arces.wot.sepa.commons.sparql.RDFTermURI) Bindings(it.unibo.arces.wot.sepa.commons.sparql.Bindings) RDFTermLiteral(it.unibo.arces.wot.sepa.commons.sparql.RDFTermLiteral)

Example 15 with RDFTermURI

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");
    }
}
Also used : Response(it.unibo.arces.wot.sepa.commons.response.Response) ErrorResponse(it.unibo.arces.wot.sepa.commons.response.ErrorResponse) RDFTermURI(it.unibo.arces.wot.sepa.commons.sparql.RDFTermURI) Bindings(it.unibo.arces.wot.sepa.commons.sparql.Bindings) RDFTermLiteral(it.unibo.arces.wot.sepa.commons.sparql.RDFTermLiteral)

Aggregations

Bindings (it.unibo.arces.wot.sepa.commons.sparql.Bindings)21 RDFTermURI (it.unibo.arces.wot.sepa.commons.sparql.RDFTermURI)21 RDFTermLiteral (it.unibo.arces.wot.sepa.commons.sparql.RDFTermLiteral)15 ErrorResponse (it.unibo.arces.wot.sepa.commons.response.ErrorResponse)5 Response (it.unibo.arces.wot.sepa.commons.response.Response)5 SubscribeResponse (it.unibo.arces.wot.sepa.commons.response.SubscribeResponse)4 UpdateResponse (it.unibo.arces.wot.sepa.commons.response.UpdateResponse)3 JsonElement (com.google.gson.JsonElement)2 JsonObject (com.google.gson.JsonObject)2 RDFTerm (it.unibo.arces.wot.sepa.commons.sparql.RDFTerm)2 Producer (it.unibo.arces.wot.sepa.pattern.Producer)2 QueryResponse (it.unibo.arces.wot.sepa.commons.response.QueryResponse)1 ARBindingsResults (it.unibo.arces.wot.sepa.commons.sparql.ARBindingsResults)1 BindingsResults (it.unibo.arces.wot.sepa.commons.sparql.BindingsResults)1 ApplicationProfile (it.unibo.arces.wot.sepa.pattern.ApplicationProfile)1 Font (java.awt.Font)1 GridBagConstraints (java.awt.GridBagConstraints)1 GridBagLayout (java.awt.GridBagLayout)1 Insets (java.awt.Insets)1 ActionEvent (java.awt.event.ActionEvent)1