public OptimizationResult getOptimizedContents()

in src/main/java/org/apache/sling/fileoptim/impl/FileOptimizerServiceImpl.java [147:168]


    public OptimizationResult getOptimizedContents(Resource fileResource) throws IOException {
        if (!fileResource.getName().equals(JcrConstants.JCR_CONTENT)
                && fileResource.getChild(JcrConstants.JCR_CONTENT) != null) {
            fileResource = fileResource.getChild(JcrConstants.JCR_CONTENT);
        }
        OptimizationResult result = new OptimizationResult(fileResource);

        OptimizedFile optim = fileResource.adaptTo(OptimizedFile.class);

        boolean optimize = true;
        byte[] original = IOUtils.toByteArray(optim.getContent());
        if (StringUtils.isNotBlank(optim.getHash()) && optim.getHash().equals(calculateHash(original))) {
            optimize = false;
        }

        if (optimize) {
            doOptimize(fileResource, result, optim, original);
        } else {
            log.trace("Resource {} is already optimized", fileResource);
        }
        return result;
    }