X-Git-Url: https://gerrit.onap.org/r/gitweb?a=blobdiff_plain;f=cadi%2Faaf%2Fsrc%2Fmain%2Fjava%2Forg%2Fonap%2Faaf%2Fcadi%2Fregister%2FRegistrationCreator.java;h=f4e0a688f579c43780ba11ed65b7b216dd8f640e;hb=ba331a70f03bb5bf93fdb83a1ff221bdbf817749;hp=aba13fb4063e0516778af2c474d29e630bf41a9a;hpb=e36daf12cf4c5aa4b22fa3cec66a79ff2e2b8b94;p=aaf%2Fauthz.git diff --git a/cadi/aaf/src/main/java/org/onap/aaf/cadi/register/RegistrationCreator.java b/cadi/aaf/src/main/java/org/onap/aaf/cadi/register/RegistrationCreator.java index aba13fb4..f4e0a688 100644 --- a/cadi/aaf/src/main/java/org/onap/aaf/cadi/register/RegistrationCreator.java +++ b/cadi/aaf/src/main/java/org/onap/aaf/cadi/register/RegistrationCreator.java @@ -24,6 +24,7 @@ import java.net.UnknownHostException; import java.util.List; import org.onap.aaf.cadi.Access; +import org.onap.aaf.cadi.Access.Level; import org.onap.aaf.cadi.CadiException; import org.onap.aaf.cadi.aaf.Defaults; import org.onap.aaf.cadi.config.Config; @@ -31,6 +32,7 @@ import org.onap.aaf.cadi.config.RegistrationPropHolder; import org.onap.aaf.cadi.util.Split; import locate.v1_0.MgmtEndpoint; +import locate.v1_0.MgmtEndpoint.SpecialPorts; import locate.v1_0.MgmtEndpoints; public class RegistrationCreator { @@ -96,24 +98,100 @@ public class RegistrationCreator { String protocol = access.getProperty(Config.AAF_LOCATOR_PROTOCOL + dot_le, null); if (protocol!=null) { locate.setProtocol(protocol); - String subprotocols = access.getProperty(Config.AAF_LOCATOR_SUBPROTOCOL + dot_le, null); - if(subprotocols!=null) { - List ls = locate.getSubprotocol(); - for (String s : Split.split(',', subprotocols)) { - ls.add(s); - } - } + List ls = locate.getSubprotocol(); + // ls cannot be null, per generated getSubprotocol code + if(ls.isEmpty()) { + String subprotocols = access.getProperty(Config.AAF_LOCATOR_SUBPROTOCOL + dot_le, null); + if(subprotocols==null) { + subprotocols = access.getProperty(Config.CADI_PROTOCOLS, null); + } + if(subprotocols!=null) { + for (String s : Split.split(',', subprotocols)) { + ls.add(s); + } + } else { + access.printf(Level.ERROR, "%s is required for Locator Registration of %s", + Config.AAF_LOCATOR_SUBPROTOCOL,Config.AAF_LOCATOR_PROTOCOL); + } + } + lme.add(locate); + } else { + access.printf(Level.ERROR, "%s is required for Locator Registration",Config.AAF_LOCATOR_PROTOCOL); } - lme.add(locate); } } } catch (NumberFormatException | UnknownHostException e) { throw new CadiException("Error extracting Data from Properties for Registrar",e); } - + + if(access.willLog(Level.INFO)) { + access.log(Level.INFO, print(new StringBuilder(),me.getMgmtEndpoint())); + } return me; } + private StringBuilder print(StringBuilder sb, List lme) { + int cnt = 0; + for(MgmtEndpoint m : lme) { + print(sb,cnt++,m); + } + return sb; + } + + private void print(StringBuilder out, int cnt, MgmtEndpoint mep) { + out.append("\nManagement Endpoint - "); + out.append(cnt); + out.append("\n\tName: "); + out.append(mep.getName()); + out.append("\n\tHostname: "); + out.append(mep.getHostname()); + out.append("\n\tLatitude: "); + out.append(mep.getLatitude()); + out.append("\n\tLongitude: "); + out.append(mep.getLongitude()); + out.append("\n\tVersion: "); + out.append(mep.getMajor()); + out.append('.'); + out.append(mep.getMinor()); + out.append('.'); + out.append(mep.getPkg()); + out.append('.'); + out.append(mep.getPatch()); + out.append("\n\tPort: "); + out.append(mep.getPort()); + out.append("\n\tProtocol: "); + out.append(mep.getProtocol()); + out.append("\n\tSpecial Ports:"); + for( SpecialPorts sp : mep.getSpecialPorts()) { + out.append("\n\t\tName: "); + out.append(sp.getName()); + out.append("\n\t\tPort: "); + out.append(sp.getPort()); + out.append("\n\t\tProtocol: "); + out.append(sp.getProtocol()); + out.append("\n\t\t Versions: "); + boolean first = true; + for(String s : sp.getProtocolVersions()) { + if(first) { + first = false; + } else { + out.append(','); + } + out.append(s); + } + } + boolean first = true; + out.append("\n\tSubProtocol: "); + for(String s : mep.getSubprotocol()) { + if(first) { + first = false; + } else { + out.append(','); + } + out.append(s); + } + } + private MgmtEndpoint copy(MgmtEndpoint mep) { MgmtEndpoint out = new MgmtEndpoint(); out.setName(mep.getName());