diff --git a/executor-base/src/main/java/ch/unisg/executorBase/executor/domain/ExecutorBase.java b/executor-base/src/main/java/ch/unisg/executorBase/executor/domain/ExecutorBase.java index 09ded48..5f125f2 100644 --- a/executor-base/src/main/java/ch/unisg/executorBase/executor/domain/ExecutorBase.java +++ b/executor-base/src/main/java/ch/unisg/executorBase/executor/domain/ExecutorBase.java @@ -1,5 +1,6 @@ package ch.unisg.executorbase.executor.domain; +import java.io.IOException; import java.util.logging.Level; import java.util.logging.Logger; @@ -88,6 +89,6 @@ public abstract class ExecutorBase { * Implementation of the actual execution method of an executor * @return the execution result **/ - protected abstract String execution(String input); + protected abstract String execution(String input) throws ConnectorException, IOException, ConnectorException; } diff --git a/executor-humidity/pom.xml b/executor-humidity/pom.xml index 3c07d0c..6828a7d 100644 --- a/executor-humidity/pom.xml +++ b/executor-humidity/pom.xml @@ -5,7 +5,7 @@ 4.0.0 org.example - executor-miro + executor-humidity 1.0-SNAPSHOT @@ -15,9 +15,9 @@ compile - org.springframework.boot - spring-boot-autoconfigure - 2.5.5 + org.springframework + spring-web + 5.3.10 compile @@ -26,6 +26,11 @@ 0.0.1-SNAPSHOT compile + + org.eclipse.californium + californium-core + 3.0.0 + diff --git a/executor-humidity/src/main/java/ch/unisg/executorhumidity/executor/adapter/out/GetHumidityAdapter.java b/executor-humidity/src/main/java/ch/unisg/executorhumidity/executor/adapter/out/GetHumidityAdapter.java index 88f440d..5cf9c88 100644 --- a/executor-humidity/src/main/java/ch/unisg/executorhumidity/executor/adapter/out/GetHumidityAdapter.java +++ b/executor-humidity/src/main/java/ch/unisg/executorhumidity/executor/adapter/out/GetHumidityAdapter.java @@ -1,17 +1,32 @@ package ch.unisg.executorhumidity.executor.adapter.out; import ch.unisg.executorhumidity.executor.application.port.out.GetHumidityPort; +import org.eclipse.californium.core.CoapClient; +import org.eclipse.californium.elements.exception.ConnectorException; import org.springframework.context.annotation.Primary; import org.springframework.stereotype.Component; +import java.io.IOException; + + @Component @Primary public class GetHumidityAdapter implements GetHumidityPort { @Override - public boolean getHumidity(String key) { + public String getHumidity() { - CoapClient client1 = new CoapClient("coap://130.82.171.10:5683/humidity") + CoapClient client1 = new CoapClient("coap://130.82.171.10:5683/humidity"); + String result = null; + try { + result = client1.get().getResponseText(); + } catch (ConnectorException e) { + e.printStackTrace(); + } catch (IOException e) { + e.printStackTrace(); + } + + return result; } } diff --git a/executor-humidity/src/main/java/ch/unisg/executorhumidity/executor/application/port/out/GetHumidityPort.java b/executor-humidity/src/main/java/ch/unisg/executorhumidity/executor/application/port/out/GetHumidityPort.java index b865cfd..d2cda18 100644 --- a/executor-humidity/src/main/java/ch/unisg/executorhumidity/executor/application/port/out/GetHumidityPort.java +++ b/executor-humidity/src/main/java/ch/unisg/executorhumidity/executor/application/port/out/GetHumidityPort.java @@ -1,5 +1,9 @@ package ch.unisg.executorhumidity.executor.application.port.out; +import org.eclipse.californium.elements.exception.ConnectorException; + +import java.io.IOException; + public interface GetHumidityPort { - boolean getHumidity(String key); + String getHumidity(); } diff --git a/executor-humidity/src/main/java/ch/unisg/executorhumidity/executor/domain/Executor.java b/executor-humidity/src/main/java/ch/unisg/executorhumidity/executor/domain/Executor.java index 2a8cd3c..703881f 100644 --- a/executor-humidity/src/main/java/ch/unisg/executorhumidity/executor/domain/Executor.java +++ b/executor-humidity/src/main/java/ch/unisg/executorhumidity/executor/domain/Executor.java @@ -2,11 +2,17 @@ package ch.unisg.executorhumidity.executor.domain; import ch.unisg.executorbase.executor.domain.ExecutorBase; import ch.unisg.executorbase.executor.domain.ExecutorType; +import ch.unisg.executorhumidity.executor.adapter.out.GetHumidityAdapter; +import ch.unisg.executorhumidity.executor.application.port.out.GetHumidityPort; +import org.eclipse.californium.elements.exception.ConnectorException; + +import java.io.IOException; public class Executor extends ExecutorBase{ - private static final Executor executor = new Exec(ExecutorType.HUMIDITY); + private static final Executor executor = new Executor(ExecutorType.HUMIDITY); // TODO: Add the necessary ports + private final GetHumidityPort getHumidityPort = new GetHumidityAdapter(); private Executor(ExecutorType executorType) {super(executorType);} @@ -18,5 +24,9 @@ public class Executor extends ExecutorBase{ protected String execution(String input) { //TODO: Fill + + String result = getHumidityPort.getHumidity(); + + return result; } } diff --git a/executor-robot/pom.xml b/executor-robot/pom.xml index ca95edf..67fe35b 100644 --- a/executor-robot/pom.xml +++ b/executor-robot/pom.xml @@ -45,7 +45,37 @@ executor-base 0.0.1-SNAPSHOT - + + ch.unisg + executor-base + 0.0.1-SNAPSHOT + compile + + + ch.unisg + executor-base + 0.0.1-SNAPSHOT + compile + + + ch.unisg + executor-base + 0.0.1-SNAPSHOT + compile + + + ch.unisg + executor-base + 0.0.1-SNAPSHOT + compile + + + ch.unisg + executor-base + 0.0.1-SNAPSHOT + compile + +