freemarker.cache (FreeMarker 2.3.23 API)
Date: 2015-07-05

# Package freemarker.cache

Template loading and caching.

See: Description

- Interface Summary
  Interface | Description
  --- | ---
  CacheStorage | Cache storage abstracts away the storage aspects of a cache - associating an object with a key, retrieval and removal via the key.
  CacheStorageWithGetSize | A cache storage that has a `getSize()` method for returning the current number of cache entries.
  ConcurrentCacheStorage | An optional interface for cache storage that knows whether it can be concurrently accessible without synchronization.
  StatefulTemplateLoader | Interface that can be implemented by template loaders that maintain some sort of internal state (i.e.
  TemplateLoader | FreeMarker loads template "files" through objects that implement this interface, thus the templates need not be real files, and can come from any kind of data source (like classpath, servlet context, database, etc).

- Class Summary
  Class | Description
  --- | ---
  ClassTemplateLoader | A `TemplateLoader` that can load templates from the "classpath".
  FileTemplateLoader | A `TemplateLoader` that uses files inside a specified directory as the source of templates.
  MruCacheStorage | A cache storage that implements a two-level Most Recently Used cache.
  MultiTemplateLoader | A `TemplateLoader` that uses a set of other loaders to load the templates.
  NullCacheStorage | A cache storage that doesn't store anything.
  SoftCacheStorage | Soft cache storage is a cache storage that uses `SoftReference` objects to hold the objects it was passed, therefore allows the garbage collector to purge the cache when it determines that it wants to free up memory.
  StringTemplateLoader | A `TemplateLoader` that uses a Map with Strings as its source of templates.
  StrongCacheStorage | Strong cache storage is a cache storage that simply wraps a `Map`.
  TemplateCache | Performs caching and on-demand loading of the templates.
  TemplateCache.MaybeMissingTemplate | Used for the return value of `TemplateCache.getTemplate(String, Locale, Object, String, boolean)`.
  TemplateLookupContext | Used as the parameter of `TemplateLookupStrategy.lookup(TemplateLookupContext)`.
  TemplateLookupResult | The return value of `TemplateLookupStrategy.lookup(TemplateLookupContext)` and similar lookup methods.
  TemplateLookupStrategy | Finds the `TemplateLoader`-level (storage-level) template source for the template name witch which the template was requested (as in `Configuration.getTemplate(String)`).
  TemplateNameFormat | Symbolized template name format.
  URLTemplateLoader | This is an abstract template loader that can load templates whose location can be described by an URL.
  WebappTemplateLoader | A `TemplateLoader` that uses streams reachable through `ServletContext.getResource(String)` as its source of templates.

## Package freemarker.cache Description

Template loading and caching. Beside the actual template cache, it contains loaders that can load template files from the file system, from the classpath, or from a web application context. If you have specific needs, you can plug custom template loaders into the system by implementing the template loader interface.