package org.springframework.roo.addon.cache.providers; /** * Provides a contract to follow by intermediate memory providers. * * @author Sergio Clares * @since 2.0 */ public interface CacheProvider { public static final String CACHE_TYPE_PROPERTY_KEY = "spring.cache.type"; /** * Returns the name of the current intermediate memory provider. * * @return the String with the name of the provider. */ String getName(); /** * Check if provider is installed in the project by searching its dependency within * all the application modules. * * @return true if the provider is installed in the project. */ boolean isInstalled(); /** * Installs the cache provider in the project. * * @param the String with the profile for which the provider properties should * be added, if any. */ void setup(String profile); }