|
||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
PersistenceService
provides methods for storing data
locally on the client system, even for applications that are running
in the untrusted execution environment. The service is somewhat
similar to that which the cookie mechanism provides to HTML-based
applications.
Each entry in the persistence data store is named with a URL. This provides a similar hierarchical structure as a traditional file system.
An application is only allowed to access data stored with a URL that
is based on its codebase. For example, given the codebase
http://www.mysite.com/apps/App1/
, the application
would be allowed to access the data at the associated URLs:
http://www.mysite.com/apps/App1/
http://www.mysite.com/apps/
http://www.mysite.com/
This scheme allows sharing of data between different applications from
the same host. For example, if another application is located at
http://www.mysite.com/apps/App2/
, then they can share data
between them in the http://www.mysite.com/
and
http://www.mysite.com/apps/
directories.
A JNLP client should track the amount of storage that a given
application uses. A PersistenceService
implementation
provides methods to get the current storage usage and limits and to
request more storage. Storage is allocated on a per file basis, but a
JNLP Client will typically grant or deny the request based on the total
storage is use by an application.
Data stored using this mechanism is intended to be a local copy of data stored on a remote server. The individual entries can be tagged as either cached, meaning the server has an up-to-date copy, dirty, meaning the server does not have an up-to-date copy, or temporary, meaning that the file can always be recreated.
Field Summary | |
static int |
CACHED
|
static int |
DIRTY
|
static int |
TEMPORARY
|
Method Summary | |
long |
create(java.net.URL url,
long maxsize)
Creates a new persistent storage entry on the client side named with the given URL. |
void |
delete(java.net.URL url)
Removes the stream associated with the given URL from the client-side date persistence store. |
FileContents |
get(java.net.URL url)
Returns a FileContents object representing the contents
of this file. |
java.lang.String[] |
getNames(java.net.URL url)
Returns an array of Strings containing the names of all the entries for a given URL. |
int |
getTag(java.net.URL url)
Returns an int corresponding to the current value
of the tag for the persistent data store entry associated with the
given URL. |
void |
setTag(java.net.URL url,
int tag)
Tags the persistent data store entry associated with the given URL with the given tag value. |
Field Detail |
public static final int CACHED
public static final int TEMPORARY
public static final int DIRTY
Method Detail |
public long create(java.net.URL url, long maxsize) throws java.net.MalformedURLException, java.io.IOException
url
- the URL representing the name of the entry in the
persistent data store.maxsize
- maximum size of storage that can be written to this
entry.public FileContents get(java.net.URL url) throws java.net.MalformedURLException, java.io.IOException, java.io.FileNotFoundException
FileContents
object representing the contents
of this file.url
- the URL representing the persistent data store entry.public void delete(java.net.URL url) throws java.net.MalformedURLException, java.io.IOException
url
- the URL representing the entry to delete from
the persistent data store.public java.lang.String[] getNames(java.net.URL url) throws java.net.MalformedURLException, java.io.IOException
url
- the URL representing the root directory to search for
entry names.String
array containing the entries
names.public int getTag(java.net.URL url) throws java.net.MalformedURLException, java.io.IOException
int
corresponding to the current value
of the tag for the persistent data store entry associated with the
given URL.url
- the URL representing the persistent data store entry
for which the tag value is requested.int
containing one of the following
tag values:
public void setTag(java.net.URL url, int tag) throws java.net.MalformedURLException, java.io.IOException
url
- the URL representing the persistent data store entry
for which to set the tag value.tag
- the tag value to set.
|
||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |