All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.infinispan.api.sync.SyncCaches Maven / Gradle / Ivy

The newest version!
package org.infinispan.api.sync;

import org.infinispan.api.configuration.CacheConfiguration;

/**
 * @since 14.0
 **/
public interface SyncCaches {
   /**
    * Obtains an existing cache
    *
    * @param name the name of the cache
    * @param   the type of the key
    * @param   the type of the value
    * @return
    */
    SyncCache get(String name);

   /**
    * @param name               the name of the cache
    * @param cacheConfiguration
    * @param                 the type of the key
    * @param                 the type of the value
    * @return
    */
    SyncCache create(String name, CacheConfiguration cacheConfiguration);

   /**
    * Creates a cache using the supplied template name
    *
    * @param name     the name of the cache
    * @param template the name of an existing template
    * @param       the type of the key
    * @param       the type of the value
    * @return
    */
    SyncCache create(String name, String template);

   /**
    * Removes a cache
    *
    * @param name the name of the cache to be removed
    */
   void remove(String name);

   /**
    * Retrieves the names of all available caches
    *
    * @return
    */
   Iterable names();

   /**
    * Creates a cache template
    *
    * @param name               the name of the template
    * @param cacheConfiguration the configuration of the template
    */
   void createTemplate(String name, CacheConfiguration cacheConfiguration);

   /**
    * Removes a cache template
    *
    * @param name the name of the template to be removed
    */
   void removeTemplate(String name);

   /**
    * Returns the names of all available templates
    *
    * @return
    */
   Iterable templateNames();
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy