nsICacheEntryInfo
Last changed in Gecko 2.0 (Firefox 4 / Thunderbird 3.3 / SeaMonkey 2.1)Method overview
void close(); |
void doom(); |
void doomAndFailPendingRequests(in nsresult status); |
string getMetaDataElement(in string key); |
void markValid(); |
nsIInputStream openInputStream(in unsigned long offset); |
nsIOutputStream openOutputStream(in unsigned long offset); |
void setDataSize(in unsigned long size); |
void setExpirationTime(in PRUint32 expirationTime); |
void setMetaDataElement(in string key, in string value); |
void visitMetaData(in nsICacheMetaDataVisitor visitor); |
Attributes
Attribute | Type | Description |
accessGranted | nsCacheAccessMode | Get the access granted to this descriptor. See nsICache for the definitions of the access modes and a thorough description of their corresponding meanings. Read only. |
cacheElement | nsISupports | Get or set the cache data element. This will fail if the cache entry is stream based. The cache entry holds a strong reference to this object. The object will be released when the cache entry is destroyed. |
file | nsIFile | Get the disk file associated with the cache entry. Read only. |
predictedDataSize | PRInt64 | Stores the Content-Length specified in the HTTP header for this entry. Checked before we write to the cache entry, to prevent ever taking up space in the cache for an entry that we know up front is going to have to be evicted anyway. See bugĀ 588507. |
securityInfo | nsISupports | Get or set security info on the cache entry for this descriptor. This fails if the storage policy is not STORE_IN_MEMORY . |
storagePolicy | nsCacheStoragePolicy | Get or set the storage policy of the cache entry. See nsICache for the definitions of the storage policies. |
Methods
close()
This method explicitly closes the descriptor (optional).
void close();
Parameters
None.
doom()
This method dooms the cache entry this descriptor references in order to slate it for removal. Once doomed a cache entry cannot be undoomed.
A descriptor with WRITE access can doom the cache entry and choose to fail pending requests. This means that pending requests will not get a cache descriptor. This is meant as a tool for clients that wish to instruct pending requests to skip the cache.
void doom();
Parameters
None.
doomAndFailPendingRequests()
This method with the WRITE
access can doom the cache entry and choose to fail pending requests. This means that pending requests will not get a cache descriptor. This is meant as a tool for clients that wish to instruct pending requests to skip the cache.
void doomAndFailPendingRequests( in nsresult status );
Parameters
status
- The access status.
getMetaDataElement()
This method retrieves the meta data. Meta data is a table of key/value string pairs. The strings do not have to conform to any particular charset, but they must be null
terminated.
string getMetaDataElement( in string key );
Parameters
key
- The key for retrieving the meta data.
Return value
Returns the string value containing the meta data for the provided key.
markValid()
This method means that a writer must validate this cache object before any readers are given a descriptor to the object.
void markValid();
Parameters
None.
openInputStream()
This method opens blocking input stream to cache data. This will fail if the cache entry is not stream based. Use the stream transport service to asynchronously read this stream on a background thread. The returned stream may implement nsISeekableStream
.
nsIInputStream openInputStream( in unsigned long offset );
Parameters
offset
- Read starting from this offset into the cached data. An offset beyond the end of the stream has undefined consequences.
Return value
Returns blocking, unbuffered input stream.
openOutputStream()
This method opens blocking output stream to cache data. This will fail if the cache entry is not stream based. Use the stream transport service to asynchronously write to this stream on a background thread. The returned stream may implement nsISeekableStream
.
If opening an output stream to existing cached data, the data will be truncated to the specified offset.
nsIOutputStream openOutputStream( in unsigned long offset );
Parameters
offset
- Write starting from this offset into the cached data. An offset beyond the end of the stream has undefined consequences.
Return value
Returns blocking, unbuffered output stream.
setDataSize()
This method sets the cache entry data size. This will fail if the cache entry is stream based.
void setDataSize( in unsigned long size );
Parameters
size
- The cache entry data size.
setExpirationTime()
This method sets the time at which the cache entry should be considered invalid (in seconds since the Epoch).
void setExpirationTime( in PRUint32 expirationTime );
Parameters
expirationTime
- The time for cache entry expiration (in seconds).
setMetaDataElement()
This method sets the meta data. Meta data is a table of key/value string pairs. The strings do not have to conform to any particular charset, but they must be null
terminated.
void setMetaDataElement( in string key, in string value );
Parameters
key
- The key for setting the meta data.
value
- The value for setting the meta data.
visitMetaData()
This method means that the visitor will be called with key/value pair for each meta data element.
void visitMetaData( in nsICacheMetaDataVisitor visitor );
Parameters
visitor
- The visitor to be called.