Issue-ID: AAF-857
Change-Id: I55cdedad9dfaf4be8c785aa5f503f71fe4504070
Signed-off-by: Instrumental <jonathan.gathman@att.com>
- String aaf_url = access.getProperty(Config.AAF_URL, null);
- if(aaf_url==null) {
- aaf_url = "https://"+Config.AAF_LOCATE_URL_TAG+"/%NS."+name;
+ String aaf_url;
+ if(name.indexOf('.')>=0) {
+ aaf_url = "https://"+Config.AAF_LOCATE_URL_TAG+'/'+name+':'+version;
+ } else {
+ aaf_url = "https://"+Config.AAF_LOCATE_URL_TAG+"/%NS."+name+':'+version;
}
RegistrationPropHolder rph = new RegistrationPropHolder(access,0);
aaf_url = rph.replacements(getClass().getSimpleName(),aaf_url, null,null);
}
RegistrationPropHolder rph = new RegistrationPropHolder(access,0);
aaf_url = rph.replacements(getClass().getSimpleName(),aaf_url, null,null);
} catch (UnknownHostException | CadiException e) {
throw new LocatorException(e);
}
} catch (UnknownHostException | CadiException e) {
throw new LocatorException(e);
}
- gui_locator = AbsAAFLocator.create(rph.getPublicEntryName("gui", rph.default_container),
- Config.AAF_DEFAULT_API_VERSION);
+ String url = rph.getPublicEntryName("gui", rph.default_container);
+ gui_locator = AbsAAFLocator.create(url,Config.AAF_DEFAULT_API_VERSION);
}
public static Locator<URI> create(final String name, final String version) throws LocatorException {
}
public static Locator<URI> create(final String name, final String version) throws LocatorException {
+ if(locatorCreator==null) {
+ throw new LocatorException("LocatorCreator is not set");
+ }
return locatorCreator.create(name, version);
}
return locatorCreator.create(name, version);
}
Method aalMth = aalCls.getMethod("create", String.class,String.class);
int colon = _url.lastIndexOf(':');
if(colon>=0) {
Method aalMth = aalCls.getMethod("create", String.class,String.class);
int colon = _url.lastIndexOf(':');
if(colon>=0) {
- String version = _url.substring(colon+1);
- int slash = _url.lastIndexOf('/',colon);
+ int slash = _url.indexOf('/',colon);
+ String version;
+ if(slash<0) {
+ version = _url.substring(colon+1);
+ } else {
+ version = _url.substring(colon+1,slash);
+ }
+ slash = _url.lastIndexOf('/',colon);
if(slash>=0) {
Object aal = aalMth.invoke(null/*static*/, _url.substring(slash+1, colon),version);
return (Locator<URI>)aal;
}
}
} catch (ClassNotFoundException | NoSuchMethodException | SecurityException | IllegalAccessException | IllegalArgumentException | InvocationTargetException e) {
if(slash>=0) {
Object aal = aalMth.invoke(null/*static*/, _url.substring(slash+1, colon),version);
return (Locator<URI>)aal;
}
}
} catch (ClassNotFoundException | NoSuchMethodException | SecurityException | IllegalAccessException | IllegalArgumentException | InvocationTargetException e) {
- access.log(Level.DEBUG, "Configured AbsAAFLocator not found. Continuing Locator creation");
+ String msg;
+ char quote;
+ if(e.getCause()!=null) {
+ msg=e.getCause().getMessage();
+ quote='"';
+ } else {
+ msg = "-";
+ quote=' ';
+ }
+ access.printf(Level.DEBUG, "Configured AbsAAFLocator not found%c%s%cContinuing Locator creation ",quote,msg,quote);
}
// String url = _url.replace("/AAF_NS.", "/%C%CID%AAF_NS.");
// String root_ns = access.getProperty(Config.AAF_ROOT_NS, null);
}
// String url = _url.replace("/AAF_NS.", "/%C%CID%AAF_NS.");
// String root_ns = access.getProperty(Config.AAF_ROOT_NS, null);
if(value.indexOf("%NS")>=0) {
str = getNS(dot_le);
if(str==null || str.isEmpty()) {
if(value.indexOf("%NS")>=0) {
str = getNS(dot_le);
if(str==null || str.isEmpty()) {
- value = value.replace("%NS"+'.', str);
+ value = value.replace("%NS"+'.', "");
+ } else {
+ value = value.replace("%NS", str);
- value = value.replace("%NS", str);