@Override public NodeType[] getSupertypes() { Map<String, NodeType> supertypes = Maps.newLinkedHashMap(); addSupertypes(definition, supertypes); return supertypes.values().toArray(NO_NODE_TYPES); }
@Override public NodeType[] getSupertypes() { Map<String, NodeType> supertypes = Maps.newLinkedHashMap(); addSupertypes(definition, supertypes); return supertypes.values().toArray(NO_NODE_TYPES); }
@Override public NodeType[] getSupertypes() { Map<String, NodeType> supertypes = Maps.newLinkedHashMap(); addSupertypes(definition, supertypes); return supertypes.values().toArray(NO_NODE_TYPES); }
private void addSupertypes(Tree type, Map<String, NodeType> supertypes) { PropertyState property = type.getProperty(JCR_SUPERTYPES); if (property != null) { Tree root = definition.getParent(); for (String oakName : property.getValue(Type.NAMES)) { if (!supertypes.containsKey(oakName)) { Tree supertype = root.getChild(oakName); checkState(supertype.exists()); supertypes.put( oakName, new NodeTypeImpl(supertype, mapper)); addSupertypes(supertype, supertypes); } } } }
private void addSupertypes(Tree type, Map<String, NodeType> supertypes) { PropertyState property = type.getProperty(JCR_SUPERTYPES); if (property != null) { Tree root = definition.getParent(); for (String oakName : property.getValue(Type.NAMES)) { if (!supertypes.containsKey(oakName)) { Tree supertype = root.getChild(oakName); checkState(supertype.exists()); supertypes.put( oakName, new NodeTypeImpl(supertype, mapper)); addSupertypes(supertype, supertypes); } } } }
private void addSupertypes(Tree type, Map<String, NodeType> supertypes) { PropertyState property = type.getProperty(JCR_SUPERTYPES); if (property != null) { Tree root = definition.getParent(); for (String oakName : property.getValue(Type.NAMES)) { if (!supertypes.containsKey(oakName)) { Tree supertype = root.getChild(oakName); checkState(supertype.exists()); supertypes.put( oakName, new NodeTypeImpl(supertype, mapper)); addSupertypes(supertype, supertypes); } } } }