EventSender now sends Event instead of its superclass JSONObject

This commit is contained in:
Mauro Mugnaini 2020-06-23 13:09:44 +02:00
parent fc227213ef
commit b1d6ce25e3
2 changed files with 7 additions and 10 deletions

View File

@ -1,9 +1,7 @@
package org.gcube.event.publisher;
import org.json.simple.JSONObject;
public interface EventSender {
void send(JSONObject event);
void send(Event event);
}

View File

@ -8,7 +8,6 @@ import java.net.URL;
import org.gcube.oidc.rest.JWTToken;
import org.gcube.oidc.rest.OpenIdConnectRESTHelper;
import org.json.simple.JSONObject;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@ -29,19 +28,19 @@ public class HTTPEventSender implements EventSender {
}
@Override
public void send(JSONObject event) {
public void send(Event event) {
if (log.isDebugEnabled()) {
log.debug("Starting HTTP POST thread to: " + endpoint);
}
new Thread(new HTTPost(event)).start();
new Thread(new HTTPost(event.toJSONString())).start();
}
public class HTTPost implements Runnable {
private JSONObject data;
private String json;
public HTTPost(JSONObject data) {
this.data = data;
public HTTPost(String json) {
this.json = json;
}
@Override
@ -65,7 +64,7 @@ public class HTTPEventSender implements EventSender {
if (log.isTraceEnabled()) {
log.trace("Sending event JSON");
}
os.write(data.toJSONString().getBytes("UTF-8"));
os.write(json.getBytes("UTF-8"));
os.close();
StringBuilder sb = new StringBuilder();