
com.adobe.cq.social.srp.internal.ProviderCache Maven / Gradle / Ivy
/*************************************************************************
*
* ADOBE CONFIDENTIAL
* __________________
*
* Copyright 2014 Adobe Systems Incorporated
* All Rights Reserved.
*
* NOTICE: All information contained herein is, and remains
* the property of Adobe Systems Incorporated and its suppliers,
* if any. The intellectual and technical concepts contained
* herein are proprietary to Adobe Systems Incorporated and its
* suppliers and are protected by trade secret or copyright law.
* Dissemination of this information or reproduction of this material
* is strictly forbidden unless prior written permission is obtained
* from Adobe Systems Incorporated.
**************************************************************************/
package com.adobe.cq.social.srp.internal;
import java.util.HashMap;
import java.util.Map;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import com.adobe.cq.social.srp.internal.CachingResourceProvider;
/**
* Implementation of the cache appropriate for storing hash maps.
*/
public class ProviderCache extends AbstractCache> {
private static final Logger LOGGER = LoggerFactory.getLogger(ProviderCache.class);
/**
* serial version id.
*/
private static final long serialVersionUID = 1L;
/**
* default constructor that will use default values for the cache.
*/
public ProviderCache() {
super();
}
/**
* @param concurrencyLevel cache concurreny level
* @param cacheStartSize starting cache size
* @param cacheMaxSize the initial size of the cache.
* @param ttl expiration time for cache entries in milliseconds
*/
public ProviderCache(final int concurrencyLevel, final int cacheStartSize, final int cacheMaxSize, final long ttl) {
super(concurrencyLevel, cacheStartSize, cacheMaxSize, ttl);
}
@SuppressWarnings("unchecked")
@Override
public synchronized void merge(final String key, final Map data,
final Map returnedResult) {
final CacheEntry
© 2015 - 2025 Weber Informatics LLC | Privacy Policy