public static ExportOptions getExportOptions()

in src/main/java/org/apache/sling/distribution/serialization/impl/vlt/VltUtils.java [150:196]


    public static ExportOptions getExportOptions(WorkspaceFilter filter, String[] packageRoots,
                                                 String packageGroup,
                                                 String packageName,
                                                 String packageVersion,
                                                 boolean useBinaryReferences,
                                                 Map<String, String> exportPathMapping) {
        DefaultMetaInf inf = new DefaultMetaInf();
        ExportOptions opts = new ExportOptions();
        inf.setFilter(filter);

        Properties props = new Properties();
        props.setProperty(VaultPackage.NAME_GROUP, packageGroup);
        props.setProperty(VaultPackage.NAME_NAME, packageName);
        props.setProperty(VaultPackage.NAME_VERSION, packageVersion);
        props.setProperty(PackageProperties.NAME_USE_BINARY_REFERENCES, String.valueOf(useBinaryReferences));

        if (exportPathMapping != null && !exportPathMapping.isEmpty()) {
            StringBuilder builder = new StringBuilder();

            for (Entry<String, String> entry : exportPathMapping.entrySet()) {
                if (builder.length() > 0) {
                    builder.append(MAPPING_DELIMITER);
                }

                builder.append(entry.getKey())
                       .append(MAPPING_SEPARATOR)
                       .append(entry.getValue());
            }

            props.setProperty(PATH_MAPPING_PROPERTY, builder.toString());
        }

        inf.setProperties(props);

        opts.setMetaInf(inf);

        String root = getPackageRoot(filter.getFilterSets(), packageRoots);
        opts.setRootPath(root);
        opts.setMountPath(root);

        // Set the zlib compression level to "best speed"
        // This level enables the FileVault improvement
        // covered by JCRVLT-163.
        opts.setCompressionLevel(Deflater.BEST_SPEED);

        return opts;
    }