Interface CacheConfiguration<K,​V>

Type Parameters:
K - the key type
V - the value type
All Superinterfaces:
javax.cache.configuration.CompleteConfiguration<K,​V>, javax.cache.configuration.Configuration<K,​V>, Serializable
All Known Implementing Classes:
CacheConfiguration.Default

public interface CacheConfiguration<K,​V>
extends javax.cache.configuration.CompleteConfiguration<K,​V>
Extended CompleteConfiguration used by MicroStream's Cache.

Added features:
- getEvictionManagerFactory()
- getSerializerFieldPredicate()

  • Method Details

    • PathProperty

      static String PathProperty()
      The property name which is used to hand the external configuration file path to the application.

      Either as system property or in the context's configuration, e.g. Spring's application.properties.

      Returns:
      "microstream.cache.configuration.path"
    • DefaultResourceName

      static String DefaultResourceName()
      The default name of the cache configuration resource.
      Returns:
      "microstream-cache.properties"
      See Also:
      Load()
    • Load

      static CacheConfiguration<?,​?> Load()
      Tries to load the default configuration file.

      The search order is as follows:

      • The path set in the system property "microstream.cache.configuration.path"
      • The file named "microstream-cache.properties" in
        • The classpath
        • The application's directory
        • The user home directory
      Returns:
      the loaded configuration or null if none was found
      See Also:
      PathProperty(), DefaultResourceName()
    • Load

      static CacheConfiguration<?,​?> Load​(Charset charset)
      Tries to load the default configuration file.

      The search order is as follows:

      • The path set in the system property "microstream.cache.configuration.path"
      • The file named "microstream-cache.properties" in
        • The classpath
        • The application's directory
        • The user home directory
      Parameters:
      charset - the charset used to load the configuration
      Returns:
      the loaded configuration or null if none was found
      See Also:
      PathProperty(), DefaultResourceName()
    • Load

      static <K,​ V> CacheConfiguration<K,​V> Load​(Class<K> keyType, Class<V> valueType)
      Tries to load the default configuration file.

      The search order is as follows:

      • The path set in the system property "microstream.cache.configuration.path"
      • The file named "microstream-cache.properties" in
        • The classpath
        • The application's directory
        • The user home directory
      Parameters:
      keyType - the key type
      valueType - the value type
      Returns:
      the loaded configuration or null if none was found
      See Also:
      PathProperty(), DefaultResourceName()
    • Load

      static <K,​ V> CacheConfiguration<K,​V> Load​(Charset charset, Class<K> keyType, Class<V> valueType)
      Tries to load the default configuration file.

      The search order is as follows:

      • The path set in the system property "microstream.cache.configuration.path"
      • The file named "microstream-cache.properties" in
        • The classpath
        • The application's directory
        • The user home directory
      Parameters:
      charset - the charset used to load the configuration
      keyType - the key type
      valueType - the value type
      Returns:
      the loaded configuration or null if none was found
      See Also:
      PathProperty(), DefaultResourceName()
    • Load

      static CacheConfiguration<?,​?> Load​(String path)
      Tries to load the configuration file from path.

      The load order is as follows:

      • The classpath
      • As an URL
      • As a file
      Parameters:
      path - a classpath resource, a file path or an URL
      Returns:
      the configuration or null if none was found
    • Load

      static CacheConfiguration<?,​?> Load​(String path, Charset charset)
      Tries to load the configuration file from path.

      The load order is as follows:

      • The classpath
      • As an URL
      • As a file
      Parameters:
      path - a classpath resource, a file path or an URL
      charset - the charset used to load the configuration
      Returns:
      the configuration or null if none was found
    • Load

      static <K,​ V> CacheConfiguration<K,​V> Load​(String path, Class<K> keyType, Class<V> valueType)
      Tries to load the configuration file from path.

      The load order is as follows:

      • The classpath
      • As an URL
      • As a file
      Parameters:
      path - a classpath resource, a file path or an URL
      keyType - the key type
      valueType - the value type
      Returns:
      the configuration or null if none was found
    • Load

      static <K,​ V> CacheConfiguration<K,​V> Load​(String path, Charset charset, Class<K> keyType, Class<V> valueType)
      Tries to load the configuration file from path.

      The load order is as follows:

      • The classpath
      • As an URL
      • As a file
      Parameters:
      path - a classpath resource, a file path or an URL
      charset - the charset used to load the configuration
      keyType - the key type
      valueType - the value type
      Returns:
      the configuration or null if none was found
    • Load

      static CacheConfiguration<?,​?> Load​(Path path)
      Tries to load the configuration from path.
      Parameters:
      path - file system path
      Returns:
      the configuration
      Throws:
      CacheConfigurationException - if the configuration couldn't be loaded
    • Load

      static CacheConfiguration<?,​?> Load​(Path path, Charset charset)
      Tries to load the configuration from path.
      Parameters:
      path - file system path
      charset - the charset used to load the configuration
      Returns:
      the configuration
      Throws:
      CacheConfigurationException - if the configuration couldn't be loaded
    • Load

      static CacheConfiguration<?,​?> Load​(File file)
      Tries to load the configuration from the file file.
      Parameters:
      file - file path
      Returns:
      the configuration
      Throws:
      CacheConfigurationException - if the configuration couldn't be loaded
    • Load

      static CacheConfiguration<?,​?> Load​(File file, Charset charset)
      Tries to load the configuration from the file file.
      Parameters:
      file - file path
      charset - the charset used to load the configuration
      Returns:
      the configuration
      Throws:
      CacheConfigurationException - if the configuration couldn't be loaded
    • Load

      static CacheConfiguration<?,​?> Load​(URL url)
      Tries to load the configuration from the URL url.
      Parameters:
      url - URL path
      Returns:
      the configuration
      Throws:
      CacheConfigurationException - if the configuration couldn't be loaded
    • Load

      static CacheConfiguration<?,​?> Load​(URL url, Charset charset)
      Tries to load the configuration from the URL url.
      Parameters:
      url - URL path
      charset - the charset used to load the configuration
      Returns:
      the configuration
      Throws:
      CacheConfigurationException - if the configuration couldn't be loaded
    • Load

      static CacheConfiguration<?,​?> Load​(InputStream inputStream)
      Tries to load the configuration from the InputStream inputStream.
      Parameters:
      inputStream - the stream to read from
      Returns:
      the configuration
      Throws:
      CacheConfigurationException - if the configuration couldn't be loaded
    • Load

      static CacheConfiguration<?,​?> Load​(InputStream inputStream, Charset charset)
      Tries to load the configuration from the InputStream inputStream.
      Parameters:
      inputStream - the stream to read from
      charset - the charset used to load the configuration
      Returns:
      the configuration
      Throws:
      CacheConfigurationException - if the configuration couldn't be loaded
    • Load

      static <K,​ V> CacheConfiguration<K,​V> Load​(Path path, Class<K> keyType, Class<V> valueType)
      Tries to load the configuration from path.
      Parameters:
      path - file system path
      keyType - the key type
      valueType - the value type
      Returns:
      the configuration
      Throws:
      CacheConfigurationException - if the configuration couldn't be loaded
    • Load

      static <K,​ V> CacheConfiguration<K,​V> Load​(Path path, Charset charset, Class<K> keyType, Class<V> valueType)
      Tries to load the configuration from path.
      Parameters:
      path - file system path
      charset - the charset used to load the configuration
      keyType - the key type
      valueType - the value type
      Returns:
      the configuration
      Throws:
      CacheConfigurationException - if the configuration couldn't be loaded
    • Load

      static <K,​ V> CacheConfiguration<K,​V> Load​(File file, Class<K> keyType, Class<V> valueType)
      Tries to load the configuration from the file file.
      Parameters:
      file - file path
      keyType - the key type
      valueType - the value type
      Returns:
      the configuration
      Throws:
      CacheConfigurationException - if the configuration couldn't be loaded
    • Load

      static <K,​ V> CacheConfiguration<K,​V> Load​(File file, Charset charset, Class<K> keyType, Class<V> valueType)
      Tries to load the configuration from the file file.
      Parameters:
      file - file path
      charset - the charset used to load the configuration
      keyType - the key type
      valueType - the value type
      Returns:
      the configuration
      Throws:
      CacheConfigurationException - if the configuration couldn't be loaded
    • Load

      static <K,​ V> CacheConfiguration<K,​V> Load​(URL url, Class<K> keyType, Class<V> valueType)
      Tries to load the configuration from the URL url.
      Parameters:
      url - URL path
      keyType - the key type
      valueType - the value type
      Returns:
      the configuration
      Throws:
      CacheConfigurationException - if the configuration couldn't be loaded
    • Load

      static <K,​ V> CacheConfiguration<K,​V> Load​(URL url, Charset charset, Class<K> keyType, Class<V> valueType)
      Tries to load the configuration from the URL url.
      Parameters:
      url - URL path
      charset - the charset used to load the configuration
      keyType - the key type
      valueType - the value type
      Returns:
      the configuration
      Throws:
      CacheConfigurationException - if the configuration couldn't be loaded
    • Load

      static <K,​ V> CacheConfiguration<K,​V> Load​(InputStream inputStream, Class<K> keyType, Class<V> valueType)
      Tries to load the configuration from the InputStream inputStream.
      Parameters:
      inputStream - the stream to read from
      keyType - the key type
      valueType - the value type
      Returns:
      the configuration
      Throws:
      CacheConfigurationException - if the configuration couldn't be loaded
    • Load

      static <K,​ V> CacheConfiguration<K,​V> Load​(InputStream inputStream, Charset charset, Class<K> keyType, Class<V> valueType)
      Tries to load the configuration from the InputStream inputStream.
      Parameters:
      inputStream - the stream to read from
      charset - the charset used to load the configuration
      keyType - the key type
      valueType - the value type
      Returns:
      the configuration
      Throws:
      CacheConfigurationException - if the configuration couldn't be loaded
    • getEvictionManagerFactory

      javax.cache.configuration.Factory<EvictionManager<K,​V>> getEvictionManagerFactory()
      Gets the Factory for theEvictionManager, if any.
      Returns:
      the Factory for theEvictionManager or null if none has been set.
    • getSerializerFieldPredicate

      Predicate<? super Field> getSerializerFieldPredicate()
      Gets the Serializer Field Predicate, if any.
      Returns:
      the Field Predicate for the Serializer, or null if none has been set
    • Builder

      static <K,​ V> CacheConfiguration.Builder<K,​V> Builder​(Class<K> keyType, Class<V> valueType)
      Parameters:
      keyType - the key type
      valueType - the value type
    • Builder

      static <K,​ V> CacheConfiguration.Builder<K,​V> Builder​(Class<K> keyType, Class<V> valueType, String cacheName, EmbeddedStorageManager storageManager)
      Creates a new CacheConfiguration.Builder for a CacheConfiguration, which uses the storageManager as a backing store.
      Parameters:
      keyType - the key type
      valueType - the value type
      cacheName - the slot name for the data in the EmbeddedStorageManager's root, usually the Cache's name
      storageManager - the EmbeddedStorageManager to use as a backing store
    • Builder

      static <K,​ V> CacheConfiguration.Builder<K,​V> Builder​(Class<K> keyType, Class<V> valueType, URI uri, String cacheName, EmbeddedStorageManager storageManager)
      Creates a new CacheConfiguration.Builder for a CacheConfiguration, which uses the storageManager as a backing store.
      Parameters:
      keyType - the key type
      valueType - the value type
      uri - prefix of the slot name for the data in the EmbeddedStorageManager's root
      cacheName - suffix of slot name for the data in the EmbeddedStorageManager's root
      storageManager - the EmbeddedStorageManager to use as a backing store
    • DefaultExpiryPolicyFactory

      static javax.cache.configuration.Factory<javax.cache.expiry.ExpiryPolicy> DefaultExpiryPolicyFactory()
      Returns the default ExpiryPolicy Factory, which is eternal.
    • DefaultEvictionManagerFactory

      static <K,​ V> javax.cache.configuration.Factory<EvictionManager<K,​V>> DefaultEvictionManagerFactory()
      Returns the default EvictionManager Factory, which doesn't evict at all.
    • DefaultSerializerFieldPredicate

      static Predicate<? super Field> DefaultSerializerFieldPredicate()
      Returns the default Serializer Field Predicate, which excludes transient fields.
    • New

      static <K,​ V> CacheConfiguration<K,​V> New​(javax.cache.configuration.Configuration<K,​V> other)
      Creates a new CacheConfiguration based on a Configuration.