public interface PersistenceService
PersistenceService
は、信頼されていない実行環境で実行されているアプリケーションに対しても、クライアントシステム上にローカルにデータを格納するためのメソッドを提供します。このサービスは、クッキーメカニズムが HTML ベースのアプリケーションに提供するサービスに若干似ています。
持続的データストアの各エントリには、URL を使って名前が付けられます。これにより、従来のファイルシステムと同様の階層構造が提供されます。
アプリケーションは、コードベースに基づく URL を使う場合だけ、格納されたデータにアクセスが許可されます。たとえば、http://www.mysite.com/apps/App1/
コードベースが与えられた場合、アプリケーションは次に示す関連付けられた URL でデータにアクセスすることが許可されます。
http://www.mysite.com/apps/App1/
http://www.mysite.com/apps/
http://www.mysite.com/
このスキームは、同じホストから異なるアプリケーション間でデータを共有できるようにします。たとえば、別のアプリケーションが http://www.mysite.com/apps/App2/
にある場合、これらのアプリケーションは http://www.mysite.com/
ディレクトリと http://www.mysite.com/apps/
ディレクトリでデータを共有できます。
JNLP クライアントは、特定のアプリケーションが使用する記憶領域の容量を追跡する必要があります。PersistenceService
実装は、現在の記憶領域の使用率と限界を取得し、さらに記憶領域を要求するメソッドを提供します。記憶領域は、ファイル単位に割り当てられますが、JNLP クライアントは一般にアプリケーションで使用される合計記憶領域に基づいて付与または要求を拒否するようになります。
このメカニズムを使って格納されたデータは、リモートサーバーに格納されたデータのローカルコピーであることを目的としています。各エントリには、サーバーが最新のコピーを持っていることを意味する cached、サーバーが最新のコピーを持たないことを意味する dirty、ファイルを常に再作成できることを意味する temporary というタグを付けることができます。
修飾子と型 | メソッドと説明 |
---|---|
long |
create(java.net.URL url, long maxsize)
指定された URL を使って名前が付けられたクライアントサイドの新しい持続的記憶領域エントリを作成します。
|
void |
delete(java.net.URL url)
クライアントのデータの持続的データストアから、指定された URL に関連付けられたストリームを削除します。
|
FileContents |
get(java.net.URL url)
このファイルの内容を表す
FileContents オブジェクトを返します。 |
java.lang.String[] |
getNames(java.net.URL url)
指定された URL のすべてのエントリの名前を含む Strings の配列を返します。
|
int |
getTag(java.net.URL url)
指定された URL に関連付けられた持続的データストアエントリのタグの現在の値に対応する
int を返します。 |
void |
setTag(java.net.URL url, int tag)
指定された URL に関連付けられた持続的データストアに、指定されたタグ値を使ってタグを付けます。
|
static final int CACHED
static final int TEMPORARY
static final int DIRTY
long create(java.net.URL url, long maxsize) throws java.net.MalformedURLException, java.io.IOException
url
- 持続的データストアのエントリの名前を表す URL。maxsize
- このエントリに書き込むことができる記憶領域の最大サイズ。java.net.MalformedURLException
- アプリケーションが指定された URL により表された持続的データストアへのアクセスを拒否された場合。java.io.IOException
- I/O 例外が発生した場合、またはエントリがすでに存在する場合。FileContents get(java.net.URL url) throws java.net.MalformedURLException, java.io.IOException, java.io.FileNotFoundException
FileContents
オブジェクトを返します。url
- 持続的データストアのエントリを表す URL。java.io.IOException
- 入出力エラーが発生した場合。java.net.MalformedURLException
- アプリケーションが指定された URL により表された持続的データストアへのアクセスを拒否された場合。java.io.FileNotFoundException
- 指定された URL の持続的データストアが見つからない場合。void delete(java.net.URL url) throws java.net.MalformedURLException, java.io.IOException
url
- 持続的データストアから削除するエントリを表す URL。java.net.MalformedURLException
- アプリケーションが指定された URL により表された持続的データストアへのアクセスを拒否された場合。java.io.IOException
- 入出力例外が発生した場合。java.lang.String[] getNames(java.net.URL url) throws java.net.MalformedURLException, java.io.IOException
url
- エントリ名を検索するためのルートディレクトリを表す URL。String
配列。java.net.MalformedURLException
- アプリケーションが指定された URL により表された持続的データストアへのアクセスを拒否された場合。java.io.IOException
- 入出力例外が発生した場合。int getTag(java.net.URL url) throws java.net.MalformedURLException, java.io.IOException
int
を返します。void setTag(java.net.URL url, int tag) throws java.net.MalformedURLException, java.io.IOException
url
- タグの値を設定する持続的データストアのエントリを表す URL。tag
- 設定するタグの値。java.net.MalformedURLException
- アプリケーションが指定された URL により表された持続的データストアへのアクセスを拒否された場合。java.io.IOException
- 入出力例外が発生した場合。Copyright © 1998, 2013, Oracle and/or its affiliates. All rights reserved.