Merging dev to main #107
|
@ -33,12 +33,11 @@ public abstract class ExecutorBase {
|
||||||
|
|
||||||
Logger logger = Logger.getLogger(ExecutorBase.class.getName());
|
Logger logger = Logger.getLogger(ExecutorBase.class.getName());
|
||||||
|
|
||||||
protected ExecutorBase(ExecutorType executorType) {
|
protected ExecutorBase(ExecutorType executorType, String uri) {
|
||||||
logger.info("ExecutorBase | Starting Executor");
|
logger.info("ExecutorBase | Starting Executor");
|
||||||
this.status = ExecutorStatus.STARTING_UP;
|
this.status = ExecutorStatus.STARTING_UP;
|
||||||
this.executorType = executorType;
|
this.executorType = executorType;
|
||||||
// TODO set this automaticly
|
this.executorURI = new ExecutorURI(uri);
|
||||||
this.executorURI = new ExecutorURI("http://localhost:8084");
|
|
||||||
// TODO do this in main
|
// TODO do this in main
|
||||||
// Notify executor-pool about existence. If executor-pools response is successfull start with getting an assignment, else shut down executor.
|
// Notify executor-pool about existence. If executor-pools response is successfull start with getting an assignment, else shut down executor.
|
||||||
logger.info("ExecutorBase | Notifying executor-pool about existens");
|
logger.info("ExecutorBase | Notifying executor-pool about existens");
|
||||||
|
|
|
@ -1,7 +1,6 @@
|
||||||
package ch.unisg.executorcomputation.executor.domain;
|
package ch.unisg.executorcomputation.executor.domain;
|
||||||
|
|
||||||
import java.util.concurrent.TimeUnit;
|
import java.util.concurrent.TimeUnit;
|
||||||
import java.util.logging.Level;
|
|
||||||
import java.util.logging.Logger;
|
import java.util.logging.Logger;
|
||||||
|
|
||||||
import javax.script.ScriptEngine;
|
import javax.script.ScriptEngine;
|
||||||
|
@ -15,14 +14,14 @@ public class Executor extends ExecutorBase {
|
||||||
|
|
||||||
private static Logger executorLogger = Logger.getLogger(Executor.class.getName());
|
private static Logger executorLogger = Logger.getLogger(Executor.class.getName());
|
||||||
|
|
||||||
private static final Executor executor = new Executor(ExecutorType.COMPUTATION);
|
private static final Executor executor = new Executor(ExecutorType.COMPUTATION, "http://localhost:8085");
|
||||||
|
|
||||||
public static Executor getExecutor() {
|
public static Executor getExecutor() {
|
||||||
return executor;
|
return executor;
|
||||||
}
|
}
|
||||||
|
|
||||||
private Executor(ExecutorType executorType) {
|
private Executor(ExecutorType executorType, String uri) {
|
||||||
super(executorType);
|
super(executorType, uri);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -4,17 +4,16 @@ import ch.unisg.executorbase.executor.domain.ExecutorBase;
|
||||||
import ch.unisg.executorbase.executor.domain.ExecutorType;
|
import ch.unisg.executorbase.executor.domain.ExecutorType;
|
||||||
import ch.unisg.executorhumidity.executor.adapter.out.GetHumidityAdapter;
|
import ch.unisg.executorhumidity.executor.adapter.out.GetHumidityAdapter;
|
||||||
import ch.unisg.executorhumidity.executor.application.port.out.GetHumidityPort;
|
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 {
|
public class Executor extends ExecutorBase {
|
||||||
|
|
||||||
private static final Executor executor = new Executor(ExecutorType.HUMIDITY);
|
private static final Executor executor = new Executor(ExecutorType.HUMIDITY, "http://localhost:8087");
|
||||||
|
|
||||||
private final GetHumidityPort getHumidityPort = new GetHumidityAdapter();
|
private final GetHumidityPort getHumidityPort = new GetHumidityAdapter();
|
||||||
|
|
||||||
private Executor(ExecutorType executorType) {super(executorType);}
|
private Executor(ExecutorType executorType, String uri) {
|
||||||
|
super(executorType, uri);
|
||||||
|
}
|
||||||
|
|
||||||
public static Executor getExecutor() {return executor;}
|
public static Executor getExecutor() {return executor;}
|
||||||
|
|
||||||
|
@ -22,8 +21,6 @@ public class Executor extends ExecutorBase {
|
||||||
@Override
|
@Override
|
||||||
protected
|
protected
|
||||||
String execution(String input) {
|
String execution(String input) {
|
||||||
//TODO: Fill
|
|
||||||
|
|
||||||
String result = getHumidityPort.getHumidity();
|
String result = getHumidityPort.getHumidity();
|
||||||
|
|
||||||
return result;
|
return result;
|
||||||
|
|
|
@ -7,15 +7,15 @@ import ch.unisg.executorbase.executor.domain.ExecutorType;
|
||||||
|
|
||||||
public class Executor extends ExecutorBase {
|
public class Executor extends ExecutorBase {
|
||||||
|
|
||||||
private static final Executor executor = new Executor(ExecutorType.SMALLROBOT);
|
private static final Executor executor = new Executor(ExecutorType.SMALLROBOT, "http://localhost:8084");
|
||||||
private final UserToRobotPort userToRobotPort = new UserToRobotAdapter();
|
private final UserToRobotPort userToRobotPort = new UserToRobotAdapter();
|
||||||
|
|
||||||
public static Executor getExecutor() {
|
public static Executor getExecutor() {
|
||||||
return executor;
|
return executor;
|
||||||
}
|
}
|
||||||
|
|
||||||
private Executor(ExecutorType executorType) {
|
private Executor(ExecutorType executorType, String uri) {
|
||||||
super(executorType);
|
super(executorType, uri);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -8,6 +8,7 @@ import java.net.http.HttpResponse;
|
||||||
import java.util.logging.Level;
|
import java.util.logging.Level;
|
||||||
import java.util.logging.Logger;
|
import java.util.logging.Logger;
|
||||||
|
|
||||||
|
import org.json.JSONArray;
|
||||||
import org.json.JSONObject;
|
import org.json.JSONObject;
|
||||||
import org.springframework.beans.factory.annotation.Value;
|
import org.springframework.beans.factory.annotation.Value;
|
||||||
import org.springframework.context.annotation.Primary;
|
import org.springframework.context.annotation.Primary;
|
||||||
|
@ -32,19 +33,22 @@ public class PublishTaskAssignedEventAdapter implements TaskAssignedEventPort {
|
||||||
@Override
|
@Override
|
||||||
public void publishTaskAssignedEvent(TaskAssignedEvent event) {
|
public void publishTaskAssignedEvent(TaskAssignedEvent event) {
|
||||||
|
|
||||||
String body = new JSONObject()
|
try {
|
||||||
.put("taskId", event.taskID)
|
|
||||||
.toString();
|
JSONObject op1 = new JSONObject()
|
||||||
|
.put("op", "replace")
|
||||||
|
.put("path", "/taskStatus")
|
||||||
|
.put("value", "ASSIGNED");
|
||||||
|
|
||||||
|
String body = new JSONArray().put(op1).toString();
|
||||||
|
|
||||||
HttpClient client = HttpClient.newHttpClient();
|
HttpClient client = HttpClient.newHttpClient();
|
||||||
HttpRequest request = HttpRequest.newBuilder()
|
HttpRequest request = HttpRequest.newBuilder()
|
||||||
.uri(URI.create(server + "/tasks/assignTask"))
|
.uri(URI.create(server + "/tasks/" + event.taskID))
|
||||||
.header("Content-Type", "application/task+json")
|
.header("Content-Type", "application/task+json")
|
||||||
.POST(HttpRequest.BodyPublishers.ofString(body))
|
.method("PATCH", HttpRequest.BodyPublishers.ofString(body))
|
||||||
.build();
|
.build();
|
||||||
|
|
||||||
|
|
||||||
try {
|
|
||||||
client.send(request, HttpResponse.BodyHandlers.ofString());
|
client.send(request, HttpResponse.BodyHandlers.ofString());
|
||||||
} catch (InterruptedException e) {
|
} catch (InterruptedException e) {
|
||||||
logger.log(Level.SEVERE, e.getLocalizedMessage(), e);
|
logger.log(Level.SEVERE, e.getLocalizedMessage(), e);
|
||||||
|
@ -52,6 +56,28 @@ public class PublishTaskAssignedEventAdapter implements TaskAssignedEventPort {
|
||||||
} catch (IOException e) {
|
} catch (IOException e) {
|
||||||
logger.log(Level.SEVERE, e.getLocalizedMessage(), e);
|
logger.log(Level.SEVERE, e.getLocalizedMessage(), e);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// String body = new JSONObject()
|
||||||
|
// .put("taskId", event.taskID)
|
||||||
|
// .toString();
|
||||||
|
|
||||||
|
// HttpClient client = HttpClient.newHttpClient();
|
||||||
|
// HttpRequest request = HttpRequest.newBuilder()
|
||||||
|
// .uri(URI.create(server + "/tasks/assignTask"))
|
||||||
|
// .header("Content-Type", "application/task+json")
|
||||||
|
// .POST(HttpRequest.BodyPublishers.ofString(body))
|
||||||
|
// .build();
|
||||||
|
|
||||||
|
|
||||||
|
// try {
|
||||||
|
// client.send(request, HttpResponse.BodyHandlers.ofString());
|
||||||
|
// } catch (InterruptedException e) {
|
||||||
|
// logger.log(Level.SEVERE, e.getLocalizedMessage(), e);
|
||||||
|
// Thread.currentThread().interrupt();
|
||||||
|
// } catch (IOException e) {
|
||||||
|
// logger.log(Level.SEVERE, e.getLocalizedMessage(), e);
|
||||||
|
// }
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -8,6 +8,7 @@ import java.net.http.HttpResponse;
|
||||||
import java.util.logging.Level;
|
import java.util.logging.Level;
|
||||||
import java.util.logging.Logger;
|
import java.util.logging.Logger;
|
||||||
|
|
||||||
|
import org.json.JSONArray;
|
||||||
import org.json.JSONObject;
|
import org.json.JSONObject;
|
||||||
import org.springframework.beans.factory.annotation.Value;
|
import org.springframework.beans.factory.annotation.Value;
|
||||||
import org.springframework.context.annotation.Primary;
|
import org.springframework.context.annotation.Primary;
|
||||||
|
@ -32,21 +33,27 @@ public class PublishTaskCompletedEventAdapter implements TaskCompletedEventPort
|
||||||
@Override
|
@Override
|
||||||
public void publishTaskCompleted(TaskCompletedEvent event) {
|
public void publishTaskCompleted(TaskCompletedEvent event) {
|
||||||
|
|
||||||
String body = new JSONObject()
|
try {
|
||||||
.put("taskId", event.taskID)
|
|
||||||
.put("status", event.status)
|
JSONObject op1 = new JSONObject()
|
||||||
.put("outputData", event.result)
|
.put("op", "replace")
|
||||||
.toString();
|
.put("path", "/taskStatus")
|
||||||
|
.put("value", event.status);
|
||||||
|
|
||||||
|
JSONObject op2 = new JSONObject()
|
||||||
|
.put("op", "replace")
|
||||||
|
.put("path", "/outputData")
|
||||||
|
.put("value", event.result);
|
||||||
|
|
||||||
|
String body = new JSONArray().put(op1).put(op2).toString();
|
||||||
|
|
||||||
HttpClient client = HttpClient.newHttpClient();
|
HttpClient client = HttpClient.newHttpClient();
|
||||||
HttpRequest request = HttpRequest.newBuilder()
|
HttpRequest request = HttpRequest.newBuilder()
|
||||||
.uri(URI.create(server + "/tasks/completeTask/"))
|
.uri(URI.create(server + "/tasks/" + event.taskID))
|
||||||
.header("Content-Type", "application/task+json")
|
.header("Content-Type", "application/task+json")
|
||||||
.POST(HttpRequest.BodyPublishers.ofString(body))
|
.method("PATCH", HttpRequest.BodyPublishers.ofString(body))
|
||||||
.build();
|
.build();
|
||||||
|
|
||||||
|
|
||||||
try {
|
|
||||||
client.send(request, HttpResponse.BodyHandlers.ofString());
|
client.send(request, HttpResponse.BodyHandlers.ofString());
|
||||||
} catch (InterruptedException e) {
|
} catch (InterruptedException e) {
|
||||||
logger.log(Level.SEVERE, e.getLocalizedMessage(), e);
|
logger.log(Level.SEVERE, e.getLocalizedMessage(), e);
|
||||||
|
@ -55,6 +62,29 @@ public class PublishTaskCompletedEventAdapter implements TaskCompletedEventPort
|
||||||
logger.log(Level.SEVERE, e.getLocalizedMessage(), e);
|
logger.log(Level.SEVERE, e.getLocalizedMessage(), e);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// String body = new JSONObject()
|
||||||
|
// .put("taskId", event.taskID)
|
||||||
|
// .put("status", event.status)
|
||||||
|
// .put("outputData", event.result)
|
||||||
|
// .toString();
|
||||||
|
|
||||||
|
// HttpClient client = HttpClient.newHttpClient();
|
||||||
|
// HttpRequest request = HttpRequest.newBuilder()
|
||||||
|
// .uri(URI.create(server + "/tasks/completeTask/"))
|
||||||
|
// .header("Content-Type", "application/task+json")
|
||||||
|
// .POST(HttpRequest.BodyPublishers.ofString(body))
|
||||||
|
// .build();
|
||||||
|
|
||||||
|
|
||||||
|
// try {
|
||||||
|
// client.send(request, HttpResponse.BodyHandlers.ofString());
|
||||||
|
// } catch (InterruptedException e) {
|
||||||
|
// logger.log(Level.SEVERE, e.getLocalizedMessage(), e);
|
||||||
|
// Thread.currentThread().interrupt();
|
||||||
|
// } catch (IOException e) {
|
||||||
|
// logger.log(Level.SEVERE, e.getLocalizedMessage(), e);
|
||||||
|
// }
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue
Block a user