package org.onap.dmaap.dbcapi.model;
-import java.util.Date;
-
import javax.xml.bind.annotation.XmlRootElement;
+import org.onap.dmaap.dbcapi.util.DmaapConfig;
import org.onap.dmaap.dbcapi.util.DmaapTimestamp;
private String dcaeLocationName;
private String fqdn;
- private String[] hosts;
private DmaapTimestamp lastMod;
private String topicProtocol;
private String topicPort;
+ private String replicationGroup;
+ private String sourceReplicationPort;
+ private String targetReplicationPort;
// TODO: make this a system property
- private static String defaultTopicProtocol = "https";
- private static String defaultTopicPort = "3905";
+ private static String defaultTopicProtocol;
+ private static String defaultTopicPort;
+ private static String defaultReplicationGroup;
+ private static String defaultSourceReplicationPort;
+ private static String defaultTargetReplicationPort;
-
+ private static void setDefaults() {
+ boolean been_here = false;
+ if ( been_here ) {
+ return;
+ }
+ DmaapConfig dc = (DmaapConfig)DmaapConfig.getConfig();
+ defaultTopicProtocol = dc.getProperty("MR.TopicProtocol", "https");
+ defaultTopicPort = dc.getProperty( "MR.TopicPort", "3905");
+ defaultReplicationGroup = dc.getProperty( "MR.ReplicationGroup", "" );
+ defaultSourceReplicationPort = dc.getProperty( "MR.SourceReplicationPort", "2181");
+ defaultTargetReplicationPort = dc.getProperty( "MR.TargetReplicationPort", "9092");
+ been_here = true;
+ }
public MR_Cluster() {
+ setDefaults();
this.topicProtocol = defaultTopicProtocol;
this.topicPort = defaultTopicPort;
- this.hosts = new String[3];
+ this.replicationGroup = null;
+ this.sourceReplicationPort = defaultSourceReplicationPort;
+ this.targetReplicationPort = defaultTargetReplicationPort;
this.lastMod = new DmaapTimestamp();
this.lastMod.mark();
debugLogger.debug( "MR_Cluster constructor " + this.lastMod );
}
-
+
+ // new style constructor
public MR_Cluster( String dLN,
- String f,
- String a,
- String[] h ) {
+ String f,
+ String prot,
+ String port) {
+ setDefaults();
this.dcaeLocationName = dLN;
this.fqdn = f;
-logger.info( "templog:MR_Cluster at 10" );
- this.hosts = new String[3];
- this.hosts[0] = h[0];
-logger.info( "templog:MR_Cluster at 20" );
- this.hosts[1] = h[1];
-logger.info( "templog:MR_Cluster at 30" );
- this.hosts[2] = h[2];
-logger.info( "templog:MR_Cluster at 40" );
- this.topicProtocol = defaultTopicProtocol;
-logger.info( "templog:MR_Cluster at 50" );
- this.topicPort = defaultTopicPort;
+
+ if ( prot == null || prot.isEmpty() ) {
+ this.topicProtocol = defaultTopicProtocol;
+ } else {
+ this.topicProtocol = prot;
+ }
+ if ( port == null || port.isEmpty() ) {
+ this.topicPort = defaultTopicPort;
+ } else {
+ this.topicPort = port;
+ }
+
+ this.replicationGroup = defaultReplicationGroup;
+ this.sourceReplicationPort = defaultSourceReplicationPort;
+ this.targetReplicationPort = defaultTargetReplicationPort;
+
this.lastMod = new DmaapTimestamp();
this.lastMod.mark();
-
+
debugLogger.debug( "MR_Cluster constructor w initialization complete" + this.lastMod.getVal() );
-logger.info( "templog:MR_Cluster at 60" );
}
+ public MR_Cluster( String dLN,
+ String f,
+ String prot,
+ String port,
+ String repGroup,
+ String sourceRepPort,
+ String targetRepPort ) {
+ setDefaults();
+ this.dcaeLocationName = dLN;
+ this.fqdn = f;
+
+ if ( prot == null || prot.isEmpty() ) {
+ this.topicProtocol = defaultTopicProtocol;
+ } else {
+ this.topicProtocol = prot;
+ }
+ if ( port == null || port.isEmpty() ) {
+ this.topicPort = defaultTopicPort;
+ } else {
+ this.topicPort = port;
+ }
+ if ( repGroup == null || repGroup.isEmpty() ) {
+ this.replicationGroup = defaultReplicationGroup;
+ } else {
+ this.replicationGroup = repGroup;
+ }
+ if ( sourceRepPort == null || sourceRepPort.isEmpty()) {
+ this.sourceReplicationPort = defaultSourceReplicationPort;
+ } else {
+ this.sourceReplicationPort = sourceRepPort;
+ }
+ if ( targetRepPort == null || targetRepPort.isEmpty()) {
+ this.targetReplicationPort = defaultTargetReplicationPort;
+ } else {
+ this.targetReplicationPort = targetRepPort;
+ }
+
+ this.lastMod = new DmaapTimestamp();
+ this.lastMod.mark();
+
+ debugLogger.debug( "MR_Cluster constructor w initialization complete" + this.lastMod.getVal() );
+ }
public String getDcaeLocationName() {
return dcaeLocationName;
}
this.fqdn = fqdn;
}
- public String[] getHosts() {
- return hosts;
- }
-
- public void setHosts(String[] hosts) {
- this.hosts = hosts;
- }
public String getTopicProtocol() {
return topicProtocol;
this.topicPort = topicPort;
}
+ public String getReplicationGroup() {
+ return replicationGroup;
+ }
+
+ public void setReplicationGroup(String replicationGroup) {
+ this.replicationGroup = replicationGroup;
+ }
+
+
+
+
+ public String getSourceReplicationPort() {
+ return sourceReplicationPort;
+ }
+
+
+
+ public void setSourceReplicationPort(String sourceReplicationPort) {
+ this.sourceReplicationPort = sourceReplicationPort;
+ }
+
+
+
+ public String getTargetReplicationPort() {
+ return targetReplicationPort;
+ }
+
+
+
+ public void setTargetReplicationPort(String targetReplicationPort) {
+ this.targetReplicationPort = targetReplicationPort;
+ }
+
public String genTopicURL(String overideFqdn, String topic) {