Merge "Sonar fixes related to exceptions"
[aaf/authz.git] / cadi / aaf / src / main / java / org / onap / aaf / cadi / aaf / v2_0 / AbsAAFLocator.java
index 312c58e..fca2374 100644 (file)
@@ -32,6 +32,7 @@ import java.util.NoSuchElementException;
 
 import org.onap.aaf.cadi.Access;
 import org.onap.aaf.cadi.Access.Level;
+import org.onap.aaf.cadi.aaf.Defaults;
 import org.onap.aaf.cadi.Locator;
 import org.onap.aaf.cadi.LocatorException;
 import org.onap.aaf.cadi.config.Config;
@@ -75,7 +76,7 @@ public abstract class AbsAAFLocator<TRANS extends Trans> implements Locator<URI>
                        }
                }
 
-               epList = new LinkedList<EP>();
+               epList = new LinkedList<>();
                refreshWait = refreshMin;
 
                this.access = access;
@@ -87,6 +88,12 @@ public abstract class AbsAAFLocator<TRANS extends Trans> implements Locator<URI>
                        latitude = Double.parseDouble(lat);
                        longitude = Double.parseDouble(lng);
                }
+               if(name.startsWith(Defaults.AAF_NS)) {
+                       String root_ns = access.getProperty(Config.AAF_ROOT_NS, null);
+                       if(root_ns!=null) {
+                               name=name.replace(Defaults.AAF_NS, root_ns);
+                       }
+               }
                if(name.startsWith("http")) { // simple URL
                        this.name = name;
                        this.version = Config.AAF_DEFAULT_VERSION;
@@ -128,6 +135,8 @@ public abstract class AbsAAFLocator<TRANS extends Trans> implements Locator<URI>
                                                version = split[1];
                                                name = split[0];
                                                break;
+                                       default:
+                                               break;
                                }
                        }
                }
@@ -207,7 +216,7 @@ public abstract class AbsAAFLocator<TRANS extends Trans> implements Locator<URI>
        }
 
        private boolean noEntries() {
-               return epList.size()<=0;
+               return epList.isEmpty();
        }
 
        @Override
@@ -259,9 +268,9 @@ public abstract class AbsAAFLocator<TRANS extends Trans> implements Locator<URI>
        @Override
        public Item best() throws LocatorException {
                if(!hasItems()) {
-                       throw new LocatorException("No Entries found" + (pathInfo==null?"":(" for " + pathInfo)));
+                       throw new LocatorException("No Entries found for '" + aaf_locator_uri.toString() + "/locate/" + name + ':' + version + '\'');
                }
-               List<EP> lep = new ArrayList<EP>();
+               List<EP> lep = new ArrayList<>();
                EP first = null;
                // Note: Deque is sorted on the way by closest distance
                Iterator<EP> iter = getIterator();
@@ -416,8 +425,8 @@ public abstract class AbsAAFLocator<TRANS extends Trans> implements Locator<URI>
                }
 
        protected static class EP implements Comparable<EP> {
-               public URI uri;
-               public final double distance;
+               private URI uri;
+               private final double distance;
                private boolean valid;
                
                public EP(final Endpoint ep, double latitude, double longitude) throws URISyntaxException {
@@ -486,7 +495,7 @@ public abstract class AbsAAFLocator<TRANS extends Trans> implements Locator<URI>
                        try {
                                return new URI(rv.getScheme(),rv.getUserInfo(),rv.getHost(),rv.getPort(),pathInfo,query,fragment);
                        } catch (URISyntaxException e) {
-                               throw new LocatorException("Error copying URL");
+                               throw new LocatorException("Error copying URL", e);
                        }
                }
                return rv;