Add SSL client and move logger out from abs. class
This commit is contained in:
parent
fa29bb1970
commit
8c42f0dcb9
@ -2,6 +2,7 @@ package eu.mikroskeem.utils.etcdconnector;
|
||||
|
||||
import mousio.client.retry.RetryOnce;
|
||||
import mousio.etcd4j.EtcdClient;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.net.URI;
|
||||
@ -16,6 +17,9 @@ public class EtcdConnector extends EtcdConnectorBase {
|
||||
public EtcdConnector(URI... etcdUrls) throws IOException {
|
||||
super();
|
||||
|
||||
/* Set up logger */
|
||||
logger = LoggerFactory.getLogger("EtcdConnector");
|
||||
|
||||
/* Initialize client */
|
||||
initClient(etcdUrls);
|
||||
|
||||
|
@ -17,13 +17,10 @@ import java.util.List;
|
||||
import java.util.concurrent.TimeoutException;
|
||||
|
||||
abstract class EtcdConnectorBase {
|
||||
final Logger logger;
|
||||
Logger logger;
|
||||
EtcdClient etcdClient;
|
||||
|
||||
EtcdConnectorBase() throws IOException {
|
||||
/* Set up logger */
|
||||
logger = LoggerFactory.getLogger("EtcdConnector");
|
||||
}
|
||||
EtcdConnectorBase() throws IOException {}
|
||||
|
||||
|
||||
/**
|
||||
@ -171,7 +168,7 @@ abstract class EtcdConnectorBase {
|
||||
* @param ttl key ttl (seconds)
|
||||
* @return whether write succeeded or not
|
||||
*/
|
||||
public boolean putKey(@NotNull String path, @NotNull String value, @NotNull int ttl){
|
||||
public boolean putKey(@NotNull String path, @NotNull String value, @NotNull Integer ttl){
|
||||
logger.debug("putKey: {}, {}, {}", path, value, ttl);
|
||||
try {
|
||||
EtcdKeysResponse response = etcdClient.put(path, new Gson().toJson(value)).ttl(ttl).send().get();
|
||||
|
@ -0,0 +1,39 @@
|
||||
package eu.mikroskeem.utils.etcdconnector;
|
||||
|
||||
import io.netty.handler.ssl.SslContext;
|
||||
import io.netty.handler.ssl.SslContextBuilder;
|
||||
import mousio.client.retry.RetryOnce;
|
||||
import mousio.etcd4j.EtcdClient;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
import javax.net.ssl.SSLException;
|
||||
import java.io.IOException;
|
||||
import java.net.URI;
|
||||
|
||||
public class EtcdSSLConnector extends EtcdConnectorBase {
|
||||
public EtcdSSLConnector(URI... etcdUrls) throws IOException {
|
||||
super();
|
||||
|
||||
/* Set up logger */
|
||||
logger = LoggerFactory.getLogger("EtcdConnector");
|
||||
|
||||
/* Initialize client */
|
||||
initClient(etcdUrls);
|
||||
|
||||
/* Test client */
|
||||
testEtcd();
|
||||
}
|
||||
|
||||
@Override void initClient(URI... urls){
|
||||
SslContext sslContext;
|
||||
try {
|
||||
//sslContext = SslContext.newClientContext();
|
||||
sslContext = SslContextBuilder.forClient().build();
|
||||
} catch (SSLException e){
|
||||
logger.error("Encountered error while creating new SSL context");
|
||||
throw new RuntimeException(e);
|
||||
}
|
||||
etcdClient = new EtcdClient(sslContext, urls);
|
||||
etcdClient.setRetryHandler(new RetryOnce(5000));
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue
Block a user