Class ConverterCollections.ConverterCacheMap<FK,TK,FV,TV>

java.lang.Object
com.tangosol.util.ConverterCollections.ConverterMap<FK,TK,FV,TV>
com.tangosol.util.ConverterCollections.ConverterObservableMap<FK,TK,FV,TV>
com.tangosol.util.ConverterCollections.ConverterCacheMap<FK,TK,FV,TV>
All Implemented Interfaces:
CacheMap<TK,TV>, ObservableMap<TK,TV>, Serializable, Map<TK,TV>
Direct Known Subclasses:
ConverterCollections.ConverterNamedCache
Enclosing class:
ConverterCollections

public static class ConverterCollections.ConverterCacheMap<FK,TK,FV,TV> extends ConverterCollections.ConverterObservableMap<FK,TK,FV,TV> implements CacheMap<TK,TV>, Serializable
A Converter CacheMap views an underlying CacheMap through a set of key and value Converters.
See Also:
  • Constructor Details

    • ConverterCacheMap

      public ConverterCacheMap(CacheMap<FK,FV> map, Converter<FK,TK> convKeyUp, Converter<TK,FK> convKeyDown, Converter<FV,TV> convValUp, Converter<TV,FV> convValDown)
      Constructor.
      Parameters:
      map - the underlying CacheMap
      convKeyUp - the Converter to view the underlying CacheMap's keys through
      convKeyDown - the Converter to use to pass keys down to the underlying CacheMap
      convValUp - the Converter to view the underlying CacheMap's values through
      convValDown - the Converter to use to pass values down to the underlying CacheMap
  • Method Details

    • getAll

      public Map<TK,TV> getAll(Collection<? extends TK> colKeys)
      Get all the specified keys, if they are in the cache. For each key that is in the cache, that key and its corresponding value will be placed in the map that is returned by this method. The absence of a key in the returned map indicates that it was not in the cache, which may imply (for caches that can load behind the scenes) that the requested data could not be loaded.

      The result of this method is defined to be semantically the same as the following implementation, without regards to threading issues:

       Map map = new AnyMap(); // could be a HashMap (but does not have to)
       for (Iterator iter = colKeys.iterator(); iter.hasNext(); )
           {
           Object oKey = iter.next();
           Object oVal = get(oKey);
           if (oVal != null || containsKey(oKey))
               {
               map.put(oKey, oVal);
               }
           }
       return map;
       
      Specified by:
      getAll in interface CacheMap<FK,TK>
      Parameters:
      colKeys - a collection of keys that may be in the named cache
      Returns:
      a Map of keys to values for the specified keys passed in colKeys
    • put

      public TV put(TK key, TV value, long cMillis)
      Associates the specified value with the specified key in this cache. If the cache previously contained a mapping for this key, the old value is replaced. This variation of the CacheMap.put(Object oKey, Object oValue) method allows the caller to specify an expiry (or "time to live") for the cache entry.
      Specified by:
      put in interface CacheMap<FK,TK>
      Parameters:
      key - key with which the specified value is to be associated
      value - value to be associated with the specified key
      cMillis - the number of milliseconds until the cache entry will expire, also referred to as the entry's "time to live"; pass CacheMap.EXPIRY_DEFAULT to use the cache's default time-to-live setting; pass CacheMap.EXPIRY_NEVER to indicate that the cache entry should never expire; this milliseconds value is not a date/time value, such as is returned from System.currentTimeMillis()
      Returns:
      previous value associated with specified key, or null if there was no mapping for key. A null return can also indicate that the map previously associated null with the specified key, if the implementation supports null values
    • getCacheMap

      public CacheMap<FK,FV> getCacheMap()
      Return the underlying CacheMap.
      Returns:
      the underlying CacheMap