public Resource getResource()

in src/main/java/org/apache/sling/nosql/generic/resource/impl/NoSqlResourceProvider.java [69:94]


    public Resource getResource(ResourceResolver resourceResolver, String path) {
        if (!adapter.validPath(path)) {
            return null;
        }
        if (!this.deletedResources.isEmpty()) {
            for (String deletedPath : deletedResources) {
                Pattern deletedPathPattern = PathUtil.getSameOrDescendantPathPattern(deletedPath);
                if (deletedPathPattern.matcher(path).matches()) {
                    return null;
                }
            }
        }
        if (this.changedResources.containsKey(path)) {
            return new NoSqlResource(this.changedResources.get(path), resourceResolver, this);
        }
        NoSqlData data = adapter.get(path);
        if (data != null) {
            return new NoSqlResource(data, resourceResolver, this);
        }
        else if (ROOT_PATH.equals(path)) {
            // root path exists implicitly - bot not yet in nosql store - return a "virtual" resource until something is stored in it
            NoSqlData rootData = new NoSqlData(ROOT_PATH, new HashMap<String, Object>());
            return new NoSqlResource(rootData, resourceResolver, this);
        }
        return null;
    }