More refinement, Agent.sh
[aaf/authz.git] / cadi / core / src / main / java / org / onap / aaf / cadi / config / RegistrationPropHolder.java
index c813964..aa78231 100644 (file)
@@ -28,7 +28,7 @@ import org.onap.aaf.cadi.CadiException;
 import org.onap.aaf.cadi.util.Split;
 
 public class RegistrationPropHolder {
-
+       private final String PUBLIC_NAME="%NS.%N";
        private final Access access;
        public String hostname;
        private int port;
@@ -38,6 +38,7 @@ public class RegistrationPropHolder {
        public Float longitude;
        public final String default_fqdn;
        public final String default_container_ns;
+       public final String default_name;
        public final String lentries;
        public final String lcontainer;
 
@@ -74,6 +75,8 @@ public class RegistrationPropHolder {
 
                public_hostname = access.getProperty(Config.AAF_LOCATOR_PUBLIC_HOSTNAME, hostname);
                                
+               default_name = access.getProperty(Config.AAF_LOCATOR_NAME, "%CNS.%NS.%N");
+               
                latitude=null;
                String slatitude = access.getProperty(Config.CADI_LATITUDE, null);
                if(slatitude == null) {
@@ -100,7 +103,7 @@ public class RegistrationPropHolder {
                        }
                }
                
-               default_fqdn = access.getProperty(Config.AAF_LOCATOR_FQDN, public_hostname);
+               default_fqdn = access.getProperty(Config.AAF_LOCATOR_FQDN, hostname);
                default_container_ns = access.getProperty(Config.AAF_LOCATOR_CONTAINER_NS,"");
                
                if(errs.length()>0) {
@@ -120,17 +123,18 @@ public class RegistrationPropHolder {
                if(public_hostname!=null && dot_le.isEmpty()) {
                        str = public_hostname;
                } else {
-                       str = access.getProperty(Config.AAF_LOCATOR_FQDN+dot_le, null);
-                       if(str==null) {
-                               str = access.getProperty(Config.AAF_LOCATOR_FQDN, hostname);
-                       }
+                       str = access.getProperty(Config.AAF_LOCATOR_FQDN+dot_le, default_fqdn);
                }
                return replacements(str,entry,dot_le);
        }
        
        public String getEntryName(final String entry, final String dot_le) {
                String str;
-               str = access.getProperty(Config.AAF_LOCATOR_NAME+dot_le, "%NS.%N");
+               if(dot_le.isEmpty()) {
+                       str = PUBLIC_NAME;
+               } else {
+                       str = access.getProperty(Config.AAF_LOCATOR_NAME+dot_le, default_name);
+               }
                return replacements(str,entry,dot_le);
        }
        
@@ -166,27 +170,6 @@ public class RegistrationPropHolder {
                        }
                }
 
-               if(source.indexOf("%NS")>=0) {
-                       str = getNS(dot_le);
-                       if(str==null || str.isEmpty()) {
-                               source = source.replace("%NS"+'.', str);
-                       }
-                       source = source.replace("%NS", str);
-               }
-
-               // aaf_root_ns
-               if(source.indexOf("AAF_NS")>=0) {
-                       str = access.getProperty(Config.AAF_ROOT_NS, null);
-                       if(str!=null) {
-                               String temp = source.replace("%AAF_NS", str);
-                               if(temp == source) { // intended
-                                       source = source.replace("AAF_NS", str); // Backward Compatibility
-                               } else {
-                                       source = temp;
-                               }
-                       }
-               }
-
                int atC = source.indexOf("%C"); 
                if(atC>=0) {
                        // aaf_locator_container_ns
@@ -203,11 +186,37 @@ public class RegistrationPropHolder {
                        source = source.replace("%C", str);
                }
                
+               if(source.indexOf("%NS")>=0) {
+                       str = getNS(dot_le);
+                       if(str==null || str.isEmpty()) {
+                               source = source.replace("%NS"+'.', str);
+                       }
+                       source = source.replace("%NS", str);
+               }
+
+               // aaf_root_ns
+               if(source.indexOf("AAF_NS")>=0) {
+                       str = access.getProperty(Config.AAF_ROOT_NS, Config.AAF_ROOT_NS_DEF);
+                       String temp = source.replace("%AAF_NS", str);
+                       if(temp.equals(source)) { // intended
+                               source = source.replace("AAF_NS", str); // Backward Compatibility
+                       } else {
+                               source = temp;
+                       }
+               }
+
+               
                if(source.indexOf('%')>=0) {
-                       // These shouldn't be expected to have dot elements
-                       source = source.replace("%N", name);
-                       source = source.replace("%DF", default_fqdn);
-                       source = source.replace("%PH", public_hostname);
+            // These shouldn't be expected to have dot elements
+            if(name!=null) {
+              source = source.replace("%N", name);
+            }
+            if(default_fqdn!=null) {
+              source = source.replace("%DF", default_fqdn);
+            }
+            if(public_hostname!=null) {
+              source = source.replace("%PH", public_hostname);
+            }
                }
                return source;
        }