Package org.apache.sling.resourceresolver.impl.tree

Examples of org.apache.sling.resourceresolver.impl.tree.ResourceProviderEntry


        // gather the providers in linked set, such that we keep
        // the order of addition and make sure we only get one entry
        // for each resource provider
        final Set<ProviderHandler> providersSet = new LinkedHashSet<ProviderHandler>();
        final ResourceProviderEntry atPath = getResourceProviders(path, providersSet);

        if (log.isDebugEnabled()) {
            log.debug(" Provider Set for path {} {} ", path, Arrays
                    .toString(providersSet.toArray(new ProviderHandler[providersSet.size()])));
        }
        this.iteratorPath = path;
        providers = providersSet.iterator();
        baseEntryValues = (atPath != null) ? atPath.values().iterator() : null;
        delayed = new HashMap<String, Resource>();
        visited = new HashSet<String>();
        nextResource = seek();
    }
View Full Code Here


                }

            } else if (baseEntryValues != null) {

                while (baseEntryValues.hasNext()) {
                    final ResourceProviderEntry rpw = baseEntryValues.next();
                    final String resPath = iteratorPath + rpw.getPath();
                    if (!visited.contains(resPath)) {
                        final ResourceResolver rr = parentResource.getResourceResolver();
                        final Resource res = rpw.getResourceFromProviders(this.resourceResolverContext, rr,
                                resPath);
                        if (res == null) {
                            if (!delayed.containsKey(resPath)) {
                                delayed.put(
                                        resPath,
View Full Code Here

    private ResourceProviderEntry getResourceProviders(final String path,
            final Set<ProviderHandler> providers) {

        // collect providers along the ancestor path segements
        final String[] elements = ResourceProviderEntry.split(path);
        ResourceProviderEntry base = rootProviderEntry;
        for (final String element : elements) {
            if (base.containsKey(element)) {
                base = base.get(element);
                if (log.isDebugEnabled()) {
                    log.debug("Loading from {}  {} ", element,
                            base.getResourceProviders().length);
                }
                for (final ProviderHandler rp : base.getResourceProviders()) {
                    log.debug("Adding {} for {} ", rp, path);
                    providers.add(rp);
                }
            } else {
                log.debug("No container for {} ", element);
View Full Code Here

TOP

Related Classes of org.apache.sling.resourceresolver.impl.tree.ResourceProviderEntry

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.