Class ExtensibleConfigurableCacheFactory.PartitionedBackingMapManager

  • All Implemented Interfaces:
    BackingMapManager
    Enclosing class:
    ExtensibleConfigurableCacheFactory

    public static class ExtensibleConfigurableCacheFactory.PartitionedBackingMapManager
    extends AbstractBackingMapManager
    The PartitionedBackingMapManager is used by PartitionAwareBackingMap(s) to lazily configure the enclosing PABM based on the configuration settings of the enclosed maps.
    • Constructor Detail

      • PartitionedBackingMapManager

        protected PartitionedBackingMapManager​(ExtensibleConfigurableCacheFactory factory,
                                               MapBuilder.Dependencies dependencies,
                                               ParameterResolver resolver,
                                               MapBuilder bldrMap)
        Create a PartitionedBackingMapManager object.
        Parameters:
        factory - the factory associated with this manager
        dependencies - the MapBuilder dependencies
        resolver - the ParameterResolver needed to resolve cache params
        bldrMap - the builder that will build the backing map
    • Method Detail

      • instantiateBackingMap

        public Map instantiateBackingMap​(String sName)
        Instantiate a [thread safe] Map that should be used by a CacheService to store cached values for a NamedCache with the specified name.

        If the contents of the Map can be modified by anything other than the CacheService itself (e.g. if the Map automatically expires its entries periodically or size-limits its contents), then the returned object must implement the ObservableMap interface. NOTE: The cache name passed in has a partition number appended to it so that we cannot use it to find a parameter resolver. This is why the resolver is passed into the constructor.

        Parameters:
        sName - the name of the NamedCache for which this backing map is being created
        Returns:
        an object implementing the Map interface that will provide backing storage for the specified cache name
      • isBackingMapPersistent

        public boolean isBackingMapPersistent​(String sName)
        Determine if the contents of the Map that is used by a CacheService to store cached values for a NamedCache with the specified name should be persisted.
        Parameters:
        sName - the name of the NamedCache
        Returns:
        true if the CacheService should persist the backing storage of the specified NamedCache
      • isBackingMapSlidingExpiry

        public boolean isBackingMapSlidingExpiry​(String sName)
        Determine if the Map that is used by a CacheService to store cached values for a NamedCache with specified name enables the sliding expiry - the expiry delay being extended by the read operations.
        Parameters:
        sName - the name of the NamedCache
        Returns:
        true if the backing map of the specified NamedCache enables the sliding expiry
      • getCacheFactory

        public ExtensibleConfigurableCacheFactory getCacheFactory()
        Obtain the "container" ConfigurableCacheFactory that created this manager and which this manager is bound to.
        Returns:
        the ConfigurableCacheFactory that created this manager