info.sswap.api.servlet
Class ContentCache

java.lang.Object
  extended by info.sswap.api.servlet.ContentCache

public class ContentCache
extends java.lang.Object

Caches arbitrary user/service content (e.g., resources referenced in an RRG) The underlying cache implementation is currently provided by EHCache

Author:
Blazej Bulka

Method Summary
static ContentCache get()
          Accessor for the singleton instance
 info.sswap.api.servlet.ContentCache.Entry get(java.lang.String token)
          Gets an entry for a (possibly future) RRG.
 boolean isActive()
           
 void shutdown()
           
 void store(java.lang.String token, byte[] content, java.lang.String contentType)
          Stores a computed RRG, indicating that the computation of an RRG was successful, and allowing its future retrieval by the client.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Method Detail

get

public static ContentCache get()
Accessor for the singleton instance

Returns:
the singleton instance

store

public void store(java.lang.String token,
                  byte[] content,
                  java.lang.String contentType)
Stores a computed RRG, indicating that the computation of an RRG was successful, and allowing its future retrieval by the client. This call overwrites any previous contents for that token in the cache. (If there is a previous entry in the cache, it should only contain polling interval -- it is safe to overwrite such an entry, since there should be no polling anymore; storing the computed RRG is a terminal state for an RRG computation).

Parameters:
token - the token identifying the RRG that has been computed
content - the "content" (data) to be stored
contentType - "type" of content, such as a MIME type

get

public info.sswap.api.servlet.ContentCache.Entry get(java.lang.String token)
Gets an entry for a (possibly future) RRG. The entry may contain RRG (if the computation has finished successfully), an error message (if the computation failed), or none of the them (in such a case, the entry is a mere indicator that the token is a valid token, and the computation is still being performed; in such a case, the useful information is in suggestedPollingInterval)

Parameters:
token - the token for which the entry should be obtained
Returns:
the entry or null (if there is no entry for this token)

isActive

public boolean isActive()

shutdown

public void shutdown()


Copyright (c) 2011, iPlant Collaborative, University of Arizona, Cold Spring Harbor Laboratories, University of Texas at Austin.