public int generateCnd()

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


    public int generateCnd(StandaloneManagerProvider managerProvider, Path cndOutputFile, Path jcrSourceDirectory) throws IOException, RepositoryException, ParseException {
        DocViewParser docViewParser = new DocViewParser(managerProvider.getNamespaceResolver());
        // traverse relevant package files
        final Set<String> nodeTypes;
        try {
            nodeTypes = collectNodeTypes(jcrSourceDirectory, docViewParser);
        } catch (UncheckedIOException e) {
            throw e.getCause();
        }
        getLog().info("Found " + nodeTypes.size() + " unique node types" );
        Collection<? extends QNodeTypeDefinition> ntDefinitons = resolveNodeTypes(nodeTypes, managerProvider.getNameResolver(),
                managerProvider.getNodeTypeDefinitionProvider());

        // make sure parent directories exist
        Files.createDirectories(cndOutputFile.getParent());
        // writes the CND into the given file
        try (Writer writer = Files.newBufferedWriter(cndOutputFile, StandardCharsets.US_ASCII)) {
            return writeCnd(ntDefinitons, managerProvider.getNodeTypeDefinitionProvider(), managerProvider.getNamespaceResolver(), writer);
        }
    }