Interface ExternalCacheAdapter

All Known Implementing Classes:
ESIInvalidatorServlet

public interface ExternalCacheAdapter
This is the service provider's interface (SPI) for plugging in an external cache (eg, the AFPA cache, a web server cache, a proxy server cache or a sprayer cache). Each implementation of this interface encapsulates the particular protocol supported by an external cache. The CacheCoordinator calls this interface to manage pages in external caches. It is always called locally.

Restrictions on JSP fragments cached externally are the following:

  • It must be a top-level fragment (ie, an externally requested page).
  • It must not have any security access restrictions. This restriction can be relaxed if the external cache supports some form of access control.
  • It must not need access statistics gathered. This restriction can be relaxed if the external cache supports some form of statistics gathering.
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    This method invalidates all pages from the external cache.
    void
    This method invalidates dependency ids that are in the external cache.
    void
    This method invalidates pages that are in the external cache.
    void
    postInvoke(ServletCacheRequest sreq, jakarta.servlet.http.HttpServletResponse sresp)
    This method is invoked after processing a cache hit or miss of an externally cacheable element
    void
    preInvoke(ServletCacheRequest sreq, jakarta.servlet.http.HttpServletResponse sresp)
    This method is invoked before processing a cache hit or miss of an externally cacheable element
    void
    setAddress(String address)
    This method sets the TCP/IP address of the cache adapter
    void
    writePages(Iterator externalCacheEntries)
    This method writes pages to the external cache.
  • Method Details

    • setAddress

      void setAddress(String address)
      This method sets the TCP/IP address of the cache adapter
      Parameters:
      address - Address of the cache adapter
    • writePages

      void writePages(Iterator externalCacheEntries)
      This method writes pages to the external cache.
      Parameters:
      externalCacheEntries - The Enumeration of ExternalCacheEntry objects for the pages that are to be cached.
    • invalidatePages

      void invalidatePages(Iterator urls)
      This method invalidates pages that are in the external cache.
      Parameters:
      urls - The List of URLs for the pages that have previously been written to the external cache and need invalidation.
    • invalidateIds

      void invalidateIds(Iterator ids)
      This method invalidates dependency ids that are in the external cache.
      Parameters:
      ids - The Enumeration of dependency ids that must be invalidated
    • preInvoke

      void preInvoke(ServletCacheRequest sreq, jakarta.servlet.http.HttpServletResponse sresp)
      This method is invoked before processing a cache hit or miss of an externally cacheable element
      Parameters:
      sreq - The request object being used for this invocation
      sresp - The response object being used for this invocation
    • postInvoke

      void postInvoke(ServletCacheRequest sreq, jakarta.servlet.http.HttpServletResponse sresp)
      This method is invoked after processing a cache hit or miss of an externally cacheable element
      Parameters:
      sreq - The request object being used for this invocation
      sresp - The response object being used for this invocation
    • clear

      void clear()
      This method invalidates all pages from the external cache.