Search in sources :

Example 1 with EntryNodeToCacheContentHandler

use of com.adobe.acs.commons.httpcache.store.jcr.impl.handler.EntryNodeToCacheContentHandler in project acs-aem-commons by Adobe-Consulting-Services.

the class JCRHttpCacheStoreImpl method getIfPresent.

@Override
public CacheContent getIfPresent(final CacheKey key) {
    final long currentTime = System.currentTimeMillis();
    incrementRequestCount();
    return withSession(new Function<Session, CacheContent>() {

        @Override
        public CacheContent apply(Session session) throws Exception {
            final BucketNodeFactory factory = new BucketNodeFactory(session, cacheRootPath, key, bucketTreeDepth);
            final Node bucketNode = factory.getBucketNode();
            if (bucketNode != null) {
                final Node entryNode = new BucketNodeHandler(bucketNode, dclm).getEntryIfExists(key);
                final CacheContent content = new EntryNodeToCacheContentHandler(entryNode).get();
                if (content != null) {
                    incrementTotalLookupTime(System.currentTimeMillis() - currentTime);
                    incrementHitCount();
                    return content;
                }
            }
            incrementTotalLookupTime(System.currentTimeMillis() - currentTime);
            incrementMissCount();
            return null;
        }
    });
}
Also used : BucketNodeFactory(com.adobe.acs.commons.httpcache.store.jcr.impl.writer.BucketNodeFactory) CacheContent(com.adobe.acs.commons.httpcache.engine.CacheContent) Node(javax.jcr.Node) EntryNodeToCacheContentHandler(com.adobe.acs.commons.httpcache.store.jcr.impl.handler.EntryNodeToCacheContentHandler) CacheMBeanException(com.adobe.acs.commons.util.impl.exception.CacheMBeanException) NotCompliantMBeanException(javax.management.NotCompliantMBeanException) HttpCacheDataStreamException(com.adobe.acs.commons.httpcache.exception.HttpCacheDataStreamException) OpenDataException(javax.management.openmbean.OpenDataException) IOException(java.io.IOException) BucketNodeHandler(com.adobe.acs.commons.httpcache.store.jcr.impl.handler.BucketNodeHandler) Session(javax.jcr.Session)

Aggregations

CacheContent (com.adobe.acs.commons.httpcache.engine.CacheContent)1 HttpCacheDataStreamException (com.adobe.acs.commons.httpcache.exception.HttpCacheDataStreamException)1 BucketNodeHandler (com.adobe.acs.commons.httpcache.store.jcr.impl.handler.BucketNodeHandler)1 EntryNodeToCacheContentHandler (com.adobe.acs.commons.httpcache.store.jcr.impl.handler.EntryNodeToCacheContentHandler)1 BucketNodeFactory (com.adobe.acs.commons.httpcache.store.jcr.impl.writer.BucketNodeFactory)1 CacheMBeanException (com.adobe.acs.commons.util.impl.exception.CacheMBeanException)1 IOException (java.io.IOException)1 Node (javax.jcr.Node)1 Session (javax.jcr.Session)1 NotCompliantMBeanException (javax.management.NotCompliantMBeanException)1 OpenDataException (javax.management.openmbean.OpenDataException)1