X-Git-Url: https://gerrit.onap.org/r/gitweb?a=blobdiff_plain;f=auth%2Fauth-batch%2Fsrc%2Fmain%2Fjava%2Forg%2Fonap%2Faaf%2Fauth%2Fbatch%2Fhelpers%2FNS.java;h=3a3b47988e30cd84e44410ea19ac40f9a4e58d60;hb=78ccdcc1d1c29760e4cf833f94df62e1c5aa733f;hp=cad1c12403df43f8af53206314c679a12812ba40;hpb=1c5a9a2adec0370b2a51dffb42a76012095a5da0;p=aaf%2Fauthz.git diff --git a/auth/auth-batch/src/main/java/org/onap/aaf/auth/batch/helpers/NS.java b/auth/auth-batch/src/main/java/org/onap/aaf/auth/batch/helpers/NS.java index cad1c124..3a3b4798 100644 --- a/auth/auth-batch/src/main/java/org/onap/aaf/auth/batch/helpers/NS.java +++ b/auth/auth-batch/src/main/java/org/onap/aaf/auth/batch/helpers/NS.java @@ -9,9 +9,9 @@ * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at - * + * * http://www.apache.org/licenses/LICENSE-2.0 - * + * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. @@ -27,6 +27,8 @@ import java.util.Iterator; import java.util.Map; import java.util.TreeMap; +import org.onap.aaf.auth.dao.cass.NsDAO; +import org.onap.aaf.cadi.util.CSV; import org.onap.aaf.misc.env.Env; import org.onap.aaf.misc.env.TimeTaken; import org.onap.aaf.misc.env.Trans; @@ -40,13 +42,9 @@ import com.datastax.driver.core.Statement; public class NS implements Comparable { public static final Map data = new TreeMap<>(); - public final String name; - public final String description; - public final String parent; - public final int scope; - public final int type; + public NsDAO.Data ndd; - public static Creator v2_0_11 = new Creator () { + public static final Creator v2_0_11 = new Creator () { @Override public NS create(Row row) { return new NS(row.getString(0),row.getString(1), row.getString(2),row.getInt(3),row.getInt(4)); @@ -59,27 +57,40 @@ public class NS implements Comparable { }; public NS(String name, String description, String parent, int type, int scope) { - this.name = name; - this.description = description; - this.parent = parent; - this.scope = scope; - this.type = type; + ndd = new NsDAO.Data(); + ndd.name = name; + ndd.description = description; + ndd.parent = parent; + ndd.type = type; + // ndd.attrib = } - + public static void load(Trans trans, Session session, Creator creator) { load(trans,session, "select name, description, parent, type, scope from authz.ns;" - ,creator); + ,creator + , v -> data.put(v.ndd.name,v) + ); } - + public static void loadOne(Trans trans, Session session, Creator creator, String ns) { load(trans,session, - ("select name, description, parent, type, scope from authz.ns WHERE name='"+ns+"';") + ("select name, description, parent, type, scope from authz.ns WHERE name='" + ns + "';") ,creator + , v -> data.put(v.ndd.name,v) ); } - private static void load(Trans trans, Session session, String query, Creator creator) { + public static void load(Trans trans, Session session, Creator creator, Visitor visitor) { + load(trans,session,creator.query(null),creator, visitor); + } + + public void row(final CSV.Writer csvw, String tag) { + csvw.row(tag,ndd.name,ndd.type,ndd.parent); + } + + + private static void load(Trans trans, Session session, String query, Creator creator, Visitor visitor) { trans.info().log( "query: " + query ); ResultSet results; TimeTaken tt; @@ -91,7 +102,7 @@ public class NS implements Comparable { } finally { tt.done(); } - + try { Iterator iter = results.iterator(); @@ -101,7 +112,7 @@ public class NS implements Comparable { while (iter.hasNext()) { row = iter.next(); NS ns = creator.create(row); - data.put(ns.name,ns); + visitor.visit(ns); } } finally { tt.done(); @@ -125,9 +136,9 @@ public class NS implements Comparable { tt.done(); } } - + public String toString() { - return name; + return ndd.name; } /* (non-Javadoc) @@ -135,7 +146,7 @@ public class NS implements Comparable { */ @Override public int hashCode() { - return name.hashCode(); + return ndd.name.hashCode(); } /* (non-Javadoc) @@ -143,33 +154,32 @@ public class NS implements Comparable { */ @Override public boolean equals(Object obj) { - return name.equals(obj); + return ndd.name.equals(obj); } @Override public int compareTo(NS o) { - return name.compareTo(o.name); + return ndd.name.compareTo(o.ndd.name); } - + public static class NSSplit { public String ns; public String other; public NSSplit(String s, int dot) { ns = s.substring(0,dot); - other = s.substring(dot+1); + other = s.substring(dot + 1); } } public static NSSplit deriveParent(String dotted) { if (dotted==null) { return null; } - for (int idx = dotted.lastIndexOf('.');idx>=0; idx=dotted.lastIndexOf('.',idx-1)) { - if (data.get(dotted.substring(0, idx))!=null) { + for (int idx = dotted.lastIndexOf('.');idx >= 0; idx = dotted.lastIndexOf('.',idx - 1)) { + if (data.get(dotted.substring(0, idx)) != null) { return new NSSplit(dotted,idx); } } return null; } - } \ No newline at end of file