summaryrefslogtreecommitdiffstats
path: root/catalog-dao/src/main/java/org/openecomp/sdc/be/dao/cassandra/schema/SdcSchemaUtils.java
diff options
context:
space:
mode:
Diffstat (limited to 'catalog-dao/src/main/java/org/openecomp/sdc/be/dao/cassandra/schema/SdcSchemaUtils.java')
-rw-r--r--catalog-dao/src/main/java/org/openecomp/sdc/be/dao/cassandra/schema/SdcSchemaUtils.java75
1 files changed, 25 insertions, 50 deletions
diff --git a/catalog-dao/src/main/java/org/openecomp/sdc/be/dao/cassandra/schema/SdcSchemaUtils.java b/catalog-dao/src/main/java/org/openecomp/sdc/be/dao/cassandra/schema/SdcSchemaUtils.java
index 862e2adcc0..f6e60ece01 100644
--- a/catalog-dao/src/main/java/org/openecomp/sdc/be/dao/cassandra/schema/SdcSchemaUtils.java
+++ b/catalog-dao/src/main/java/org/openecomp/sdc/be/dao/cassandra/schema/SdcSchemaUtils.java
@@ -7,9 +7,9 @@
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
- *
+ *
* http://www.apache.org/licenses/LICENSE-2.0
- *
+ *
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
@@ -28,41 +28,34 @@ import com.datastax.driver.core.SocketOptions;
import com.datastax.driver.core.policies.DCAwareRoundRobinPolicy;
import com.datastax.driver.core.policies.LoadBalancingPolicy;
import com.datastax.driver.core.policies.TokenAwarePolicy;
+import java.util.List;
+import java.util.function.Supplier;
import org.openecomp.sdc.be.config.Configuration;
import org.openecomp.sdc.be.config.ConfigurationManager;
import org.openecomp.sdc.common.log.wrappers.Logger;
-import java.util.List;
-import java.util.function.Supplier;
-
public class SdcSchemaUtils {
private static Logger log = Logger.getLogger(SdcSchemaUtils.class.getName());
private Cluster cluster;
- private boolean isConnected;
-
-
+ private boolean isConnected;
public SdcSchemaUtils() {
super();
try {
isConnected = false;
- cluster = createCluster();
+ cluster = createCluster();
isConnected = true;
} catch (Exception e) {
log.info("** CassandraClient isn't connected. error is", e);
}
-
log.info("** cluster created");
}
/**
- * the method creates the cluster object using the supplied cassandra nodes
- * in the configuration
+ * the method creates the cluster object using the supplied cassandra nodes in the configuration
*
* @return cluster object our null in case of an invalid configuration
- *
- *
*/
public Cluster createCluster() {
final Configuration.CassandrConfig config = getCassandraConfig();
@@ -75,62 +68,53 @@ public class SdcSchemaUtils {
log.info("Connecting to node: {} port: {}.", nodes, cassandraPort);
Cluster.Builder clusterBuilder = Cluster.builder();
nodes.forEach(node -> clusterBuilder.addContactPoint(node).withPort(cassandraPort));
-
log.info("Connection timeout in seconds : {}", config.getMaxWaitSeconds());
clusterBuilder.withMaxSchemaAgreementWaitSeconds(config.getMaxWaitSeconds());
-
setSocketOptions(clusterBuilder, config);
if (!enableAuthentication(clusterBuilder, config)) {
return null;
}
-
if (!enableSsl(clusterBuilder, config)) {
return null;
}
setLocalDc(clusterBuilder, config);
-
return clusterBuilder.build();
}
-
+
/**
- *
* @return
*/
- public Session connect() {
+ public Session connect() {
Session session = null;
if (cluster != null) {
try {
session = cluster.connect();
-
} catch (Throwable e) {
- log.debug("Failed to connect cluster, error :", e);
-
+ log.debug("Failed to connect cluster, error :", e);
}
}
return session;
}
-
- public Metadata getMetadata(){
- if (cluster != null){
+
+ public Metadata getMetadata() {
+ if (cluster != null) {
return cluster.getMetadata();
}
return null;
}
-
+
private void setLocalDc(Cluster.Builder clusterBuilder, Configuration.CassandrConfig config) {
String localDataCenter = config.getLocalDataCenter();
if (localDataCenter != null) {
- log.info("localDatacenter was provided, setting Cassndra clint to use datacenter: {} as local.",
- localDataCenter);
- LoadBalancingPolicy tokenAwarePolicy = new TokenAwarePolicy(
- DCAwareRoundRobinPolicy.builder().withLocalDc(localDataCenter).build());
+ log.info("localDatacenter was provided, setting Cassndra clint to use datacenter: {} as local.", localDataCenter);
+ LoadBalancingPolicy tokenAwarePolicy = new TokenAwarePolicy(DCAwareRoundRobinPolicy.builder().withLocalDc(localDataCenter).build());
clusterBuilder.withLoadBalancingPolicy(tokenAwarePolicy);
} else {
log.info(
- "localDatacenter was provided, the driver will use the datacenter of the first contact point that was reached at initialization");
+ "localDatacenter was provided, the driver will use the datacenter of the first contact point that was reached at initialization");
}
}
-
+
private boolean enableSsl(Cluster.Builder clusterBuilder, Configuration.CassandrConfig config) {
boolean ssl = config.isSsl();
if (ssl) {
@@ -144,7 +128,6 @@ public class SdcSchemaUtils {
System.setProperty("javax.net.ssl.trustStorePassword", truststorePassword);
clusterBuilder.withSSL();
}
-
}
return true;
}
@@ -153,23 +136,19 @@ public class SdcSchemaUtils {
SocketOptions socketOptions = new SocketOptions();
Integer socketConnectTimeout = config.getSocketConnectTimeout();
if (socketConnectTimeout != null) {
- log.info("SocketConnectTimeout was provided, setting Cassandra client to use SocketConnectTimeout: {} .",
- socketConnectTimeout);
+ log.info("SocketConnectTimeout was provided, setting Cassandra client to use SocketConnectTimeout: {} .", socketConnectTimeout);
socketOptions.setConnectTimeoutMillis(socketConnectTimeout);
}
-
Integer socketReadTimeout = config.getSocketReadTimeout();
if (socketReadTimeout != null) {
- log.info("SocketReadTimeout was provided, setting Cassandra client to use SocketReadTimeout: {} .",
- socketReadTimeout);
+ log.info("SocketReadTimeout was provided, setting Cassandra client to use SocketReadTimeout: {} .", socketReadTimeout);
socketOptions.setReadTimeoutMillis(socketReadTimeout);
}
clusterBuilder.withSocketOptions(socketOptions);
}
-
+
private boolean enableAuthentication(Cluster.Builder clusterBuilder, Configuration.CassandrConfig config) {
boolean authenticate = config.isAuthenticate();
-
if (authenticate) {
String username = config.getUsername();
String password = config.getPassword();
@@ -179,7 +158,6 @@ public class SdcSchemaUtils {
} else {
clusterBuilder.withCredentials(username, password);
}
-
}
return true;
}
@@ -188,7 +166,7 @@ public class SdcSchemaUtils {
return executeStatement(this::createCluster, statement);
}
- public boolean executeStatements(String ... statements) {
+ public boolean executeStatements(String... statements) {
return executeStatements(this::createCluster, statements);
}
@@ -196,9 +174,8 @@ public class SdcSchemaUtils {
return executeStatements(clusterSupplier, statement);
}
- boolean executeStatements(Supplier<Cluster> clusterSupplier, String ... statements) {
- try(Cluster cluster = clusterSupplier.get();
- Session session = cluster.connect()) {
+ boolean executeStatements(Supplier<Cluster> clusterSupplier, String... statements) {
+ try (Cluster cluster = clusterSupplier.get(); Session session = cluster.connect()) {
for (String statement : statements) {
session.execute(statement);
}
@@ -212,13 +189,11 @@ public class SdcSchemaUtils {
Configuration.CassandrConfig getCassandraConfig() {
return ConfigurationManager.getConfigurationManager().getConfiguration().getCassandraConfig();
}
-
-
+
public void closeCluster() {
if (isConnected) {
cluster.close();
}
log.info("** CassandraClient cluster closed");
}
-
}