summaryrefslogtreecommitdiffstats
path: root/openecomp-be/lib/openecomp-core-lib/openecomp-zusammen-lib/openecomp-zusammen-core/src/main/java/org/openecomp/core/zusammen/impl/CassandraConnectionInitializer.java
blob: 0115ab6d5b1b8746472d0ed9fbf20bd9ee2a7c9d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
package org.openecomp.core.zusammen.impl;


import org.apache.commons.lang3.StringUtils;
import org.openecomp.core.nosqldb.util.CassandraUtils;

import javax.servlet.ServletContextEvent;
import javax.servlet.ServletContextListener;
import java.util.Objects;

/**
 * @author Avrahamg
 * @since April 25, 2017
 */

public class CassandraConnectionInitializer implements ServletContextListener {

  private static String DATA_CENTER_PROPERTY_NAME = "cassandra.datacenter";
  private static String CONSISTENCY_LEVEL_PROPERTY_NAME = "cassandra.consistency.level";
  private static String NODES_PROPERTY_NAME = "cassandra.nodes";
  private static String AUTHENTICATE_PROPERTY_NAME = "cassandra.authenticate";
  private static String TRUE = "true";
  private static String FALSE = "false";
  private static String SSL_PROPERTY_NAME = "cassandra.ssl";
  private static String TRUSTSTORE_PROPERTY_NAME = "cassandra.truststore";
  private static String TRUSTSTORE_PASSWORD_PROPERTY_NAME = "cassandra.truststore.password";
  private static String USER_PROPERTY_NAME = "cassandra.user";
  private static String PASSWORD_PROPERTY_NAME = "cassandra.password";
  private static String KEYSPACE_PROPERTY_NAME = "cassandra.keyspace";
  private static String ZUSAMMEN = "zusammen";

  @Override
  public void contextInitialized(ServletContextEvent servletContextEvent) {
    setCassandraConnectionPropertiesToSystem();
  }

  public static void setCassandraConnectionPropertiesToSystem() {

    if (!System.getProperties().containsKey(NODES_PROPERTY_NAME)) {
      System.setProperty(NODES_PROPERTY_NAME, StringUtils.join(CassandraUtils.getAddresses(), ','));
    }

    if (!System.getProperties().containsKey(AUTHENTICATE_PROPERTY_NAME)) {
      System.setProperty(AUTHENTICATE_PROPERTY_NAME,
          CassandraUtils.isAuthenticate() ? TRUE : FALSE);
    }
    if (!System.getProperties().containsKey(SSL_PROPERTY_NAME)) {
      System.setProperty(SSL_PROPERTY_NAME,
          CassandraUtils.isSsl() ? TRUE : FALSE);
    }

    if (!System.getProperties().containsKey(TRUSTSTORE_PROPERTY_NAME)) {
      System.setProperty(TRUSTSTORE_PROPERTY_NAME, CassandraUtils.getTruststore());
    }

    if (!System.getProperties().containsKey(TRUSTSTORE_PASSWORD_PROPERTY_NAME)) {
      System.setProperty(TRUSTSTORE_PASSWORD_PROPERTY_NAME, CassandraUtils.getTruststorePassword());
    }

    if (!System.getProperties().containsKey(USER_PROPERTY_NAME)) {
      System.setProperty(USER_PROPERTY_NAME, CassandraUtils.getUser());
    }

    if (!System.getProperties().containsKey(PASSWORD_PROPERTY_NAME)) {
      System.setProperty(PASSWORD_PROPERTY_NAME, CassandraUtils.getPassword());
    }

    if (!System.getProperties().containsKey(KEYSPACE_PROPERTY_NAME)) {
      System.setProperty(KEYSPACE_PROPERTY_NAME, ZUSAMMEN);
    }


    if (!System.getProperties().containsKey(DATA_CENTER_PROPERTY_NAME)) {
      String dataCenter = CassandraUtils.getLocalDataCenter();
      if (Objects.nonNull(dataCenter)) {
        System.setProperty(DATA_CENTER_PROPERTY_NAME, dataCenter);
      }
    }

    if (!System.getProperties().containsKey(CONSISTENCY_LEVEL_PROPERTY_NAME)) {
      String consistencyLevel = CassandraUtils.getConsistencyLevel();
      if (Objects.nonNull(consistencyLevel)) {
        System.setProperty(CONSISTENCY_LEVEL_PROPERTY_NAME, consistencyLevel);
      }
    }


  }

  //       -Dcassandra.nodes=10.147.97.145  -Dcassandra.keyspace=zusammen -Dcassandra.authenticate=true -Dcassandra.ssl=true
  // -Dcassandra.truststore=/apps/jetty/base/be/config/.truststore -Dcassandra.truststore.password=Aa123456
  // -Dcassandra.user=asdc_user -Dcassandra.password=Aa1234%^!

  @Override
  public void contextDestroyed(ServletContextEvent servletContextEvent) {

  }
}