From aef45e0ffa74c98e20ba50340bf1487398ce6d45 Mon Sep 17 00:00:00 2001 From: Grahame Grieve Date: Wed, 11 Dec 2024 04:38:15 +1100 Subject: [PATCH] remove dead code --- .../hl7/fhir/r4/utils/IntegrityChecker.java | 271 ------------------ .../hl7/fhir/utilities/SimpleTimeTracker.java | 90 ------ 2 files changed, 361 deletions(-) delete mode 100644 org.hl7.fhir.r4/src/main/java/org/hl7/fhir/r4/utils/IntegrityChecker.java delete mode 100644 org.hl7.fhir.utilities/src/main/java/org/hl7/fhir/utilities/SimpleTimeTracker.java diff --git a/org.hl7.fhir.r4/src/main/java/org/hl7/fhir/r4/utils/IntegrityChecker.java b/org.hl7.fhir.r4/src/main/java/org/hl7/fhir/r4/utils/IntegrityChecker.java deleted file mode 100644 index 3b3febc76..000000000 --- a/org.hl7.fhir.r4/src/main/java/org/hl7/fhir/r4/utils/IntegrityChecker.java +++ /dev/null @@ -1,271 +0,0 @@ -package org.hl7.fhir.r4.utils; - -import java.io.FileWriter; -import java.io.IOException; -import java.io.InputStream; -import java.util.ArrayList; -import java.util.Collection; -import java.util.Collections; -import java.util.Comparator; -import java.util.HashMap; -import java.util.List; -import java.util.Map; - -import org.hl7.fhir.exceptions.FHIRFormatError; -import org.hl7.fhir.r4.formats.JsonParser; -import org.hl7.fhir.r4.model.CodeType; -import org.hl7.fhir.r4.model.ElementDefinition; -import org.hl7.fhir.r4.model.SearchParameter; -import org.hl7.fhir.r4.model.StructureDefinition; -import org.hl7.fhir.r4.model.StructureDefinition.TypeDerivationRule; -import org.hl7.fhir.utilities.Utilities; -import org.hl7.fhir.utilities.npm.NpmPackage; - -public class IntegrityChecker { - - public class SearchParameterNodeSorter implements Comparator { - - @Override - public int compare(SearchParameterNode o1, SearchParameterNode o2) { - return o1.name.compareTo(o2.name); - } - - } - - public class SearchParameterParamNodeSorter implements Comparator { - - @Override - public int compare(SearchParameterParamNode o1, SearchParameterParamNode o2) { - return o1.sp.getCode().compareTo(o2.sp.getCode()); - } - - } - - public class SearchParameterParamNode { - SearchParameter sp; - boolean only; - - public SearchParameterParamNode(SearchParameter sp, boolean only) { - super(); - this.sp = sp; - this.only = only; - } - - } - - public class SearchParameterNode { - - private String name; - private List params = new ArrayList<>(); - - public SearchParameterNode(String name) { - this.name = name; - } - - } - - public class StructureDefinitionNodeComparer implements Comparator { - - @Override - public int compare(StructureDefinitionNode arg0, StructureDefinitionNode arg1) { - if (arg0.sd.getType().equals(arg1.sd.getType())) { - return arg0.sd.getName().compareTo(arg1.sd.getName()); - } else { - return arg0.sd.getType().compareTo(arg1.sd.getType()); - } - } - - } - - public class StructureDefinitionNode { - StructureDefinition sd; - List children = new ArrayList<>(); - - public StructureDefinitionNode(StructureDefinition sd) { - this.sd = sd; - } - - } - - private NpmPackage npm; - - public static void main(String[] args) throws Exception { - IntegrityChecker check = new IntegrityChecker(); - check.load(args[0]); - check.check(); - } - - private void check() throws IOException { - dumpSD(new FileWriter("/Users/grahamegrieve/temp/r4-dump.txt")); -// checkSD(); -// checkSP(); - } - - private void dumpSD(FileWriter w) throws FHIRFormatError, IOException { - Map map = new HashMap<>(); - for (String sdn : npm.listResources("StructureDefinition")) { - InputStream s = npm.load(sdn); - StructureDefinition sd = (StructureDefinition) new JsonParser().parse(s); - map.put(sd.getUrl(), sd); - } - msg("Loaded " + map.size() + " Structures"); - List structures = new ArrayList<>(); - for (StructureDefinition sd : map.values()) { - structures.add(sd.getUrl()); - } - Collections.sort(structures); - - for (String sdn : structures) { - dumpSD(map.get(sdn), map, w); - } - } - - private void dumpSD(StructureDefinition sd, Map map, FileWriter w) throws IOException { - if (sd.getDerivation() == TypeDerivationRule.SPECIALIZATION) { - StructureDefinition base = sd.hasBaseDefinition() ? map.get(sd.getBaseDefinition()) : null; - System.out.println(sd.getType() + (base == null ? "" : " : " + base.getType())); - w.append(sd.getType() + (base == null ? "" : " : " + base.getType()) + "\r\n"); - for (ElementDefinition ed : sd.getSnapshot().getElement()) { - w.append(" " + Utilities.padLeft("", ' ', Utilities.charCount(ed.getPath(), '.')) + tail(ed.getPath()) + " : " - + ed.typeSummary() + " [" + ed.getMin() + ".." + ed.getMax() + "]" + "\r\n"); - } - } - } - - private String tail(String path) { - return path.contains(".") ? path.substring(path.lastIndexOf('.') + 1) : path; - } - - private void checkSP() throws IOException { - List list = new ArrayList<>(); - for (String sdn : npm.listResources("SearchParameter")) { - InputStream s = npm.load(sdn); - SearchParameter sp = (SearchParameter) new JsonParser().parse(s); - list.add(sp); - } - msg("Loaded " + list.size() + " resources"); - Map map = new HashMap<>(); - for (SearchParameter sp : list) { - for (CodeType c : sp.getBase()) { - String s = c.primitiveValue(); - if (!map.containsKey(s)) { - map.put(s, new SearchParameterNode(s)); - } - addNode(sp, sp.getBase().size() == 1, map.get(s)); - } - } - for (SearchParameterNode node : sort(map.values())) { - dump(node); - } - } - - private void dump(SearchParameterNode node) { - msg(node.name); - for (SearchParameterParamNode p : sortP(node.params)) { - String exp = p.sp.getExperimental() ? " **exp!" : ""; - if (p.only) { - msg(" " + p.sp.getCode() + exp); - } else { - msg(" *" + p.sp.getCode() + exp); - } - } - - } - - private List sortP(List params) { - List res = new ArrayList<>(); - res.addAll(params); - Collections.sort(res, new SearchParameterParamNodeSorter()); - return res; - } - - private List sort(Collection values) { - List res = new ArrayList<>(); - res.addAll(values); - Collections.sort(res, new SearchParameterNodeSorter()); - return res; - } - - private void addNode(SearchParameter sp, boolean b, SearchParameterNode node) { - node.params.add(new SearchParameterParamNode(sp, b)); - } - - private void checkSD() throws IOException { - Map map = new HashMap<>(); - for (String sdn : npm.listResources("StructureDefinition")) { - InputStream s = npm.load(sdn); - StructureDefinition sd = (StructureDefinition) new JsonParser().parse(s); - map.put(sd.getUrl(), sd); - } - msg("Loaded " + map.size() + " resources"); - List roots = new ArrayList<>(); - for (StructureDefinition sd : map.values()) { - if (sd.getBaseDefinition() == null || !map.containsKey(sd.getBaseDefinition())) { - StructureDefinitionNode root = new StructureDefinitionNode(sd); - roots.add(root); - analyse(root, map); - } - } - sort(roots); - for (StructureDefinitionNode root : roots) { - describe(root, 0); - } - } - - private void sort(List list) { - Collections.sort(list, new StructureDefinitionNodeComparer()); - - } - - private void analyse(StructureDefinitionNode node, Map map) { - for (StructureDefinition sd : map.values()) { - if (node.sd.getUrl().equals(sd.getBaseDefinition())) { - StructureDefinitionNode c = new StructureDefinitionNode(sd); - node.children.add(c); - analyse(c, map); - } - } - sort(node.children); - } - - private void describe(StructureDefinitionNode node, int level) { - describe(node.sd, level); - for (StructureDefinitionNode c : node.children) { - describe(c, level + 1); - } - } - - private void describe(StructureDefinition sd, int level) { - String exp = sd.getExperimental() ? " **exp!" : ""; - if (sd.getDerivation() == TypeDerivationRule.CONSTRAINT) { - msg(Utilities.padLeft("", ' ', level) + sd.getType() + " / " + sd.getName() + " (" + sd.getUrl() + ")" + exp); - } else { - msg(Utilities.padLeft("", ' ', level) + sd.getType() + " : " + sd.getKind() + exp); - } - } - -// private int analyse(Map map, List list, StructureDefinition sd) { -// if (!list.contains(sd)) { -// int level = 0; -// if (sd.hasBaseDefinition()) { -// StructureDefinition p = map.get(sd.getBaseDefinition()); -// if (p == null) { -// msg("Can't find parent "+sd.getBaseDefinition()+" for "+sd.getUrl()); -// } else { -// level = analyse(map, list, p) + 1; -// } -// } -// list.add(sd); -// sd.setUserData("level", level); -// } -// } - - private void msg(String string) { - System.out.println(string); - } - - private void load(String folder) throws IOException { - msg("Loading resources from " + folder); - npm = NpmPackage.fromFolder(folder); - } -} diff --git a/org.hl7.fhir.utilities/src/main/java/org/hl7/fhir/utilities/SimpleTimeTracker.java b/org.hl7.fhir.utilities/src/main/java/org/hl7/fhir/utilities/SimpleTimeTracker.java deleted file mode 100644 index bbe9c2adf..000000000 --- a/org.hl7.fhir.utilities/src/main/java/org/hl7/fhir/utilities/SimpleTimeTracker.java +++ /dev/null @@ -1,90 +0,0 @@ -package org.hl7.fhir.utilities; - -import java.io.BufferedWriter; -import java.io.File; -import java.io.FileOutputStream; -import java.io.OutputStreamWriter; - -import org.hl7.fhir.utilities.filesystem.ManagedFileAccess; - -public class SimpleTimeTracker { - - private long start; - private String name; - private String context; - private int count; - - public static int level = 0; - public static BufferedWriter bw; - - public SimpleTimeTracker(String name) { - level++; - this.name = name; - count = -1; - start = System.currentTimeMillis(); - init(); - log(name); - } - - public SimpleTimeTracker(String name, String context) { - level++; - this.name = name; - this.context = context; - start = System.currentTimeMillis(); - count = -1; - init(); - log(name+" ["+context+"]"); - } - - private void init() { - if (bw == null) { - try { - File fout = ManagedFileAccess.file("/Users/grahamegrieve/temp/time.txt"); - FileOutputStream fos = ManagedFileAccess.outStream(fout); - bw = new BufferedWriter(new OutputStreamWriter(fos)); - } catch (Exception e) { - e.printStackTrace(); - } - - } - - } - - public void report() { - String s = count == -1 ? "" : " ("+count+")"; - if (context == null) { - s = name+": "+(System.currentTimeMillis()-start)+"ms "+s; - } else { - s = name+": "+(System.currentTimeMillis()-start)+"ms "+s+" ["+context+"]"; - } - log(s); - level--; - if (level == 0) { - try { - bw.close(); - } catch (Exception e) { - e.printStackTrace(); - } - } - } - - private void log(String s) { - System.out.println(Utilities.padLeft("", '#', level)+" "+s); - try { - bw.write(s); - bw.newLine(); - } catch (Exception e) { - System.out.println("e: " +e.getMessage()); - } - } - - public void count() { - if (count == -1) { - count = 1; - } else { - count++; - } - - } - -}