import org.onap.dmaap.dbcapi.aaf.DmaapPerm;
import org.onap.dmaap.dbcapi.aaf.AafService.ServiceType;
import org.onap.dmaap.dbcapi.authentication.ApiPerms;
+import org.onap.dmaap.dbcapi.authentication.ApiPolicy;
import org.onap.dmaap.dbcapi.database.DatabaseClass;
import org.onap.dmaap.dbcapi.logging.BaseLoggingClass;
import org.onap.dmaap.dbcapi.logging.DmaapbcLogMessageEnum;
private Singleton<Dmaap> dmaapholder = DatabaseClass.getDmaap();
+ private static String noEnvironmentPrefix;
String topicFactory; // = "org.openecomp.dcae.dmaap.topicFactory";
topicMgrRole = p.getProperty("MR.TopicMgrRole", "MR.TopicMgrRole.not.set" );
dcaeTopicNs = dmaapholder.get().getTopicNsRoot();
multiSite = "true".equalsIgnoreCase(p.getProperty("MR.multisite", "true"));
+ noEnvironmentPrefix = p.getProperty( "AAF.NoEnvironmentPrefix", "org.onap");
+
+ logger.info( "DmaapService settings: " +
+ " topicFactory=" + topicFactory +
+ " topicMgrRole=" + topicMgrRole +
+ " dcaeTopicNs=" + dcaeTopicNs +
+ " multisite=" + multiSite +
+ " noEnvironmentPrefix=" + noEnvironmentPrefix
+ );
}
dmaapholder.update(nd);
AafService aaf = new AafService( ServiceType.AAF_Admin);
- ApiPerms p = new ApiPerms();
- p.setEnvMap();
+ ApiPolicy apiPolicy = new ApiPolicy();
+ if ( apiPolicy.getUseAuthClass() ) {
+ ApiPerms p = new ApiPerms();
+ p.setEnvMap();
+ }
boolean anythingWrong = false;
if ( multiSite ) {
if ( ! dmaap.isStatusValid() || ! nd.getDmaapName().equals(dmaap.getDmaapName()) || dmaap.getVersion().equals( "0") ) {
nd.setLastMod();
dmaapholder.update(nd); //need to set this so the following perms will pick up any new vals.
- ApiPerms p = new ApiPerms();
- p.setEnvMap();
+ ApiPolicy apiPolicy = new ApiPolicy();
+ if ( apiPolicy.getUseAuthClass()) {
+ ApiPerms p = new ApiPerms();
+ p.setEnvMap();
+ }
AafService aaf = new AafService( ServiceType.AAF_Admin);
if ( multiSite ) {
anythingWrong = setTopicMgtPerms( nd, aaf ) || createMmaTopic();
}
public String getTopicPerm( String val ) {
Dmaap dmaap = dmaapholder.get();
- return dmaap.getTopicNsRoot() + "." + val + ".mr.topic";
+ String nsRoot = dmaap.getTopicNsRoot();
+ String t;
+ // in ONAP Casablanca, we assume no distinction of environments reflected in topic namespace
+ if ( nsRoot.startsWith(noEnvironmentPrefix) ) {
+ t = nsRoot + ".mr.topic";
+ } else {
+ t = nsRoot + "." + val + ".mr.topic";
+ }
+ return t;
}
public String getBridgeAdminFqtn(){