Interface Cache

All Known Implementing Classes:
MemCache

public interface Cache
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    Remove all values from the cache
    void
     
    byte[][]
    getCachedValues(byte[] handle, byte[][] reqTypes, int[] reqIndexes)
    Returns any non-expired handle values that are in the caches storage.
    boolean
    isCachedNotFound(byte[][] values)
    Returns true if this return value of getCachedValues indicates a cached value of HANDLE_NOT_FOUND
    void
    removeHandle(byte[] handle)
    Remove one handle from the cache
    void
    setCachedNotFound(byte[] handle, int ttl)
    Returns true if this handle should have a cached HANDLE_NOT_FOUND.
    void
    setCachedValues(byte[] handle, HandleValue[] newValues, byte[][] newTypeList, int[] newIndexList)
    Store the given handle values after a query for the handle.
    void
    setMaximumHandles(int maxHandles)
    Set the maximum size for the cache by the number of handles.
    void
    setMaximumSize(int maxSize)
    Set the maximum size for the cache by the number of bytes used for storage.
  • Method Details

    • getCachedValues

      byte[][] getCachedValues(byte[] handle, byte[][] reqTypes, int[] reqIndexes) throws Exception
      Returns any non-expired handle values that are in the caches storage. A null return value indicates that the requested values aren't in the cache. Returning the an array of values (including an array of zero length) indicates that the returned values are the only values from the requested set (ie the handle doesn't have any more values from the requested set). Returns a sentinel value if HANDLE_NOT_FOUND has been cached; return value should be checked against isCachedNotFound before using. ***** Speed is important in this method *****
      Throws:
      Exception
    • isCachedNotFound

      boolean isCachedNotFound(byte[][] values)
      Returns true if this return value of getCachedValues indicates a cached value of HANDLE_NOT_FOUND
    • setCachedValues

      void setCachedValues(byte[] handle, HandleValue[] newValues, byte[][] newTypeList, int[] newIndexList) throws Exception
      Store the given handle values after a query for the handle. The query was performed with the given type-list and index-list. ***** Speed is less important in this method *****
      Throws:
      Exception
    • setCachedNotFound

      void setCachedNotFound(byte[] handle, int ttl) throws Exception
      Returns true if this handle should have a cached HANDLE_NOT_FOUND. Pass time-to-live.
      Throws:
      Exception
    • setMaximumHandles

      void setMaximumHandles(int maxHandles)
      Set the maximum size for the cache by the number of handles.
    • setMaximumSize

      void setMaximumSize(int maxSize)
      Set the maximum size for the cache by the number of bytes used for storage.
    • removeHandle

      void removeHandle(byte[] handle) throws Exception
      Remove one handle from the cache
      Throws:
      Exception
    • clear

      void clear() throws Exception
      Remove all values from the cache
      Throws:
      Exception
    • close

      void close() throws Exception
      Throws:
      Exception