public Object getAdaptable()

in src/main/java/org/apache/sling/models/impl/via/ChildResourceViaProvider.java [41:63]


    public Object getAdaptable(Object original, String value) {
        if (StringUtils.isBlank(value)) {
            return ORIGINAL;
        }
        if (original instanceof Resource) {
            return ((Resource) original).getChild(value);
        } else if (original instanceof SlingHttpServletRequest) {
            final SlingHttpServletRequest request = (SlingHttpServletRequest) original;
            final Resource resource = request.getResource();
            if (resource == null) {
                return null;
            }
            Resource child = resource.getChild(value);
            if (child == null) {
                log.debug("Could not obtain child {} of resource {}", value, resource.getPath());
                return null;
            }
            return new ChildResourceRequestWrapper(request, child);
        } else {
            log.warn("Received unexpected adaptable of type {}.", original.getClass().getName());
            return null;
        }
    }