|
|
|
@ -1,6 +1,7 @@
|
|
|
|
|
|
|
|
|
|
package eu.dnetlib.message;
|
|
|
|
|
package eu.dnetlib.dhp.message;
|
|
|
|
|
|
|
|
|
|
import org.apache.http.client.config.RequestConfig;
|
|
|
|
|
import org.apache.http.client.methods.CloseableHttpResponse;
|
|
|
|
|
import org.apache.http.client.methods.HttpPut;
|
|
|
|
|
import org.apache.http.entity.SerializableEntity;
|
|
|
|
@ -13,6 +14,12 @@ public class MessageSender {
|
|
|
|
|
|
|
|
|
|
private static final Logger log = LoggerFactory.getLogger(MessageSender.class);
|
|
|
|
|
|
|
|
|
|
private static final int SOCKET_TIMEOUT_MS = 2000;
|
|
|
|
|
|
|
|
|
|
private static final int CONNECTION_REQUEST_TIMEOUT_MS = 2000;
|
|
|
|
|
|
|
|
|
|
private static final int CONNTECTION_TIMEOUT_MS = 2000;
|
|
|
|
|
|
|
|
|
|
private final String dnetMessageEndpoint;
|
|
|
|
|
|
|
|
|
|
public MessageSender(final String dnetMessageEndpoint) {
|
|
|
|
@ -20,10 +27,25 @@ public class MessageSender {
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public void sendMessage(final Message message) {
|
|
|
|
|
new Thread(() -> _sendMessage(message)).start();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void _sendMessage(final Message message) {
|
|
|
|
|
final HttpPut req = new HttpPut(dnetMessageEndpoint);
|
|
|
|
|
req.setEntity(new SerializableEntity(message));
|
|
|
|
|
|
|
|
|
|
try (final CloseableHttpClient client = HttpClients.createDefault();
|
|
|
|
|
final RequestConfig requestConfig = RequestConfig
|
|
|
|
|
.custom()
|
|
|
|
|
.setConnectTimeout(CONNTECTION_TIMEOUT_MS)
|
|
|
|
|
.setConnectionRequestTimeout(CONNECTION_REQUEST_TIMEOUT_MS)
|
|
|
|
|
.setSocketTimeout(SOCKET_TIMEOUT_MS)
|
|
|
|
|
.build();
|
|
|
|
|
;
|
|
|
|
|
|
|
|
|
|
try (final CloseableHttpClient client = HttpClients
|
|
|
|
|
.custom()
|
|
|
|
|
.setDefaultRequestConfig(requestConfig)
|
|
|
|
|
.build();
|
|
|
|
|
final CloseableHttpResponse response = client.execute(req)) {
|
|
|
|
|
log.debug("Sent Message to " + dnetMessageEndpoint);
|
|
|
|
|
log.debug("MESSAGE:" + message);
|