Package org.apache.jackrabbit.vault.fs.config

Examples of org.apache.jackrabbit.vault.fs.config.DefaultWorkspaceFilter


    public VaultFileSystem getFileSystem(RepositoryAddress repositoryAddress, File contentSyncRoot, Session session)
            throws RepositoryException, IOException, ConfigurationException {

        // TODO - should not use File to read from FS, rather input streams
        VaultFsConfig config = null;
        DefaultWorkspaceFilter filter = null;

        File filterFile = findFilterFile(contentSyncRoot);
        if (filterFile != null) {
            filter = new DefaultWorkspaceFilter();
            filter.load(filterFile);
        }

        File metaInfDir = new File(contentSyncRoot.getParent(), Constants.META_INF);

        if (metaInfDir.isDirectory()) {
View Full Code Here


    private DefaultWorkspaceFilter filter;

    public VltFilter(InputStream in) throws IOException, ConfigurationException {

        if (in != null) {
            filter = new DefaultWorkspaceFilter();
            filter.load(in);
        } else {
            filter = AggregateManagerImpl.getDefaultWorkspaceFilter();
        }
View Full Code Here

        try {
            session = getSession(resourceResolver);

            final String[] paths = request.getPaths();

            DefaultWorkspaceFilter filter = new DefaultWorkspaceFilter();
            DefaultMetaInf inf = new DefaultMetaInf();
            ExportOptions opts = new ExportOptions();
            for (String path : paths) {
                filter.add(new PathFilterSet(path));
            }
            inf.setFilter(filter);

            Properties props = new Properties();
            String packageGroup = "sling/replication";
View Full Code Here

        MetaInf metaInf = pkg.getMetaInf();
        String[] paths = new String[0];
        if (metaInf != null) {
            WorkspaceFilter filter = metaInf.getFilter();
            if (filter == null) {
                filter = new DefaultWorkspaceFilter();
            }
            List<PathFilterSet> filterSets = filter.getFilterSets();
            paths = new String[filterSets.size()];
            for (int i = 0; i < paths.length; i++) {
                paths[i] = filterSets.get(i).getRoot();
View Full Code Here

        filter = opts.getFilter();
        if (filter == null) {
            filter = archive.getMetaInf().getFilter();
        }
        if (filter == null) {
            filter = new DefaultWorkspaceFilter();
        }

        // set import mode if possible
        if (opts.getImportMode() != null) {
            if (filter instanceof DefaultWorkspaceFilter) {
View Full Code Here

        Node defNode = contentNode.addNode("vlt:definition", "vlt:PackageDefinition");

        ImportOptions opts = getDefaultOptions();
        Archive subArchive =  archive.getSubArchive("META-INF/vault/definition", true);

        DefaultWorkspaceFilter filter = new DefaultWorkspaceFilter();
        filter.add(new PathFilterSet(defNode.getPath()));

        Importer importer = new Importer(opts);
        importer.getOptions().setAutoSaveThreshold(Integer.MAX_VALUE);
        importer.getOptions().setFilter(filter);
        importer.run(subArchive, defNode);
View Full Code Here

            throws VltException {
        VaultFileSystem fs = fileSystems.get(mountpoint);
        if (fs == null) {
            try {
                // check if export root already defines config and filter
                DefaultWorkspaceFilter filter = null;
                VaultFsConfig config = null;
                if (exportRoot != null && exportRoot.getMetaInf() != null) {
                    filter = (DefaultWorkspaceFilter) exportRoot.getMetaInf().getFilter();
                    config = exportRoot.getMetaInf().getConfig();
                }
                if (filter == null && defaultFilterRoots.length > 0) {
                    filter = new DefaultWorkspaceFilter();
                    for (String root: defaultFilterRoots) {
                        filter.add(new PathFilterSet(root));
                    }
                    stdout.printf("Created default filter:%n%s", filter.getSourceAsString());
                }
                if (filter == null && defaultFilter != null) {
                    filter = new DefaultWorkspaceFilter();
                    try {
                        filter.load(new File(defaultFilter));
                    } catch (ConfigurationException e) {
                        throw new VltException("Specified filter is not valid.", e);
                    }
                }
                // get .vltignore files
                if (exportRoot != null && filter != null) {
                    if (globalIgnored == null) {
                        globalIgnored = new Ignored(this, cwd);
                    }
                    filter.setGlobalIgnored(globalIgnored);
                }
                // override any import mode defined in the filter as this is not expected when committing files (GRANITE-XYZ)
                if (filter != null) {
                    filter.setImportMode(ImportMode.REPLACE);
                }

                Repository rep = repProvider.getRepository(mountpoint);
                Credentials creds = credsProvider.getCredentials(mountpoint);
                fs = Mounter.mount(config, filter, rep, creds, mountpoint, fsRoot);
View Full Code Here

*/
public class WorkspaceFilterTest {

    @Test
    public void testMatching() {
        DefaultWorkspaceFilter filter = new DefaultWorkspaceFilter();
        PathFilterSet set1 = new PathFilterSet("/foo");
        filter.add(set1);
        PathFilterSet set2 = new PathFilterSet("/tmp");
        set2.addInclude(new DefaultPathFilter("/tmp(/.*)?"));
        set2.addExclude(new DefaultPathFilter("/tmp/foo(/.*)?"));
        filter.add(set2);
        assertTrue(filter.contains("/foo"));
        assertTrue(filter.contains("/foo/bar"));
        assertTrue(filter.contains("/tmp"));
        assertTrue(filter.contains("/tmp/bar"));
        assertFalse(filter.contains("/tmp/foo"));
        assertFalse(filter.contains("/tmp/foo/bar"));
        assertFalse(filter.contains("/"));
        assertFalse(filter.contains("/bar"));

        assertTrue(filter.covers("/foo"));
        assertTrue(filter.covers("/tmp"));
        assertTrue(filter.covers("/tmp/foo"));
    }
View Full Code Here

        assertTrue(filter.covers("/tmp/foo"));
    }

    @Test
    public void testMapping1() {
        DefaultWorkspaceFilter filter = new DefaultWorkspaceFilter();
        PathFilterSet set1 = new PathFilterSet("/tmp/stage/products");
        filter.add(set1);
        PathMapping map = new SimplePathMapping("/tmp/stage", "/content/geometrixx/en");
        WorkspaceFilter mapped = filter.translate(map);
        assertFalse(mapped.contains("/content/geometrixx/en"));
        assertTrue(mapped.contains("/content/geometrixx/en/products"));
    }
View Full Code Here

        assertTrue(mapped.contains("/content/geometrixx/en/products"));
    }

    @Test
    public void testMapping2() {
        DefaultWorkspaceFilter filter = new DefaultWorkspaceFilter();
        PathFilterSet set1 = new PathFilterSet("/tmp/stage");
        set1.addInclude(new DefaultPathFilter("/tmp/stage/products(/.*)?"));
        set1.addExclude(new DefaultPathFilter("/tmp/stage/products/triangle(/.*)?"));
        set1.addExclude(new DefaultPathFilter(".*/foo"));
        filter.add(set1);
        PathMapping map = new SimplePathMapping("/tmp/stage", "/content/geometrixx/en");
        WorkspaceFilter mapped = filter.translate(map);
        assertFalse(mapped.contains("/content/geometrixx/en"));
        assertTrue(mapped.contains("/content/geometrixx/en/products"));
        assertFalse(mapped.contains("/content/geometrixx/en/products/triangle"));
        assertFalse(mapped.contains("/content/geometrixx/en/products/foo"));
    }
View Full Code Here

TOP

Related Classes of org.apache.jackrabbit.vault.fs.config.DefaultWorkspaceFilter

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.