@SuppressWarnings("unchecked")
    @Override
    public <T> void get(String cacheKey, Class<T> type, IAsyncResultHandler<T> handler) {
        T rval;
        synchronized (mutex) {
            InfinispanCacheEntry entry = (InfinispanCacheEntry) getCache().get(cacheKey);
            if (entry != null) {
                if (System.currentTimeMillis() >= entry.getExpiresOn()) {
                    getCache().remove(cacheKey);
                    rval = null;
                } else {
                    rval = (T) entry.getHead();
                }
            } else {
                rval = null;
            }
        }
        handler.handle(AsyncResultImpl.create(rval));
    }
@see io.apiman.gateway.engine.components.ICacheStoreComponent#get(java.lang.String, java.lang.Class, io.apiman.gateway.engine.async.IAsyncResultHandler)
gateway/engine/ispn/src/main/java/io/apiman/gateway/engine/ispn/InfinispanCacheStoreComponent.java