/** * Recursive into children. The parent of each stored TemplateThing are not meaningful for a tree; * only the children are meaningful. */ public HashMap<String, TemplateThing> getUniqueTypes(final HashMap<String, TemplateThing> ht) { if (ht.containsKey(this.type)) return ht; ht.put(this.type, this); if (null == al_children || al_children.isEmpty()) return ht; for (final TemplateThing tt : al_children) { tt.getUniqueTypes(ht); } return ht; }