private int writeNodeType()

in src/main/java/org/apache/jackrabbit/filevault/maven/packaging/mojo/GenerateCndMojo.java [255:273]


    private int writeNodeType(QNodeTypeDefinition ntDefinition, CompactNodeTypeDefWriter cndWriter, Set<Name> written, NodeTypeDefinitionProvider ntDefinitionProvider)
            throws IOException, RepositoryException {
        int numWrittenNodeTypes = 1;
        cndWriter.write(ntDefinition);
        written.add(ntDefinition.getName());
        // also write all referenced node types
        for (Name superType: ntDefinition.getSupertypes()) {
            numWrittenNodeTypes += writeNodeType(superType, cndWriter, written, ntDefinitionProvider);
        }
        for (QNodeDefinition cntDefinition: ntDefinition.getChildNodeDefs()) {
            writeNodeType(cntDefinition.getDefaultPrimaryType(), cndWriter, written, ntDefinitionProvider);
            if (cntDefinition.getRequiredPrimaryTypes() != null) {
                for (Name name: cntDefinition.getRequiredPrimaryTypes()) {
                    numWrittenNodeTypes += writeNodeType(name, cndWriter, written, ntDefinitionProvider);
                }
            }
        }
        return numWrittenNodeTypes;
    }