|
|||||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | ||||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | ||||||||||
java.lang.Objectorg.seasar.remoting.common.connector.impl.URLBasedConnector
org.seasar.remoting.common.connector.impl.TargetSpecificURLBasedConnector
ターゲットとなるオブジェクトごとに個別のURLを使用してリモートメソッド呼び出しを行うコネクタの抽象基底クラスです。
このコネクタはリモートオブジェクトの名前をスーパークラスのプロパティに設定されたベースURLからの相対URLとしてターゲットとなるリモートオブジェクトのURLを解決します。
このため,ベースURLがスラッシュ( / )で終了していない場合、予期しない結果になるかもしれないことに注意してください。
例を示します。
ベースURLが次のように設定されているとします。
http://host/context/services/
リモートオブジェクトが次の名前であるとします。
FooリモートオブジェクトのURLは次のようになります。
http://host/context/services/Foo
ベースURLが次のようにスラッシュ( / )で終了していない場合は結果が異なります。
http://host/context/services
リモートオブジェクトが次の名前であるとします。
FooリモートオブジェクトのURLは次のようになります。
http://host/context/Foo
| 入れ子クラスの概要 | |
protected static class |
TargetSpecificURLBasedConnector.LRUMap
LRUマップ エントリ数に上限があり、それを超えてエントリが追加された場合にはもっとも使用されていないエントリが取り除かれるマップの実装です。 |
| フィールドの概要 | |
protected TargetSpecificURLBasedConnector.LRUMap |
cachedURLs
|
protected static int |
DEFAULT_MAX_CACHED_URLS
リモートオブジェクトのURLをキャッシュする上限のデフォルト値 |
| クラス org.seasar.remoting.common.connector.impl.URLBasedConnector から継承したフィールド |
baseURL |
| コンストラクタの概要 | |
TargetSpecificURLBasedConnector()
|
|
| メソッドの概要 | |
protected URL |
getTargetURL(String remoteName)
ターゲットとなるリモートオブジェクトのURLを返します。 |
Object |
invoke(String remoteName,
Method method,
Object[] args)
ターゲットとなるリモートオブジェクトのURLを解決し、サブクラス固有の方法でメソッド呼び出しを実行します。 |
protected abstract Object |
invoke(URL targetURL,
Method method,
Object[] args)
サブクラス固有の方法でリモートメソッドの呼び出しを実行し、その結果を返します。 |
void |
setMaxCachedURLs(int maxCachedURLs)
リモートオブジェクトのURLをキャッシュする上限を設定します。 |
| クラス org.seasar.remoting.common.connector.impl.URLBasedConnector から継承したメソッド |
getBaseURL, setBaseURL |
| クラス java.lang.Object から継承したメソッド |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| フィールドの詳細 |
protected static final int DEFAULT_MAX_CACHED_URLS
protected TargetSpecificURLBasedConnector.LRUMap cachedURLs
| コンストラクタの詳細 |
public TargetSpecificURLBasedConnector()
| メソッドの詳細 |
public void setMaxCachedURLs(int maxCachedURLs)
maxCachedURLs - リモートオブジェクトのURLをキャッシュする上限です
public Object invoke(String remoteName,
Method method,
Object[] args)
throws Throwable
remoteName - リモートオブジェクトの名前method - 呼び出すメソッドargs - リモートオブジェクトのメソッド呼び出しに渡される引数値を格納するオブジェクト配列
Throwable - リモートオブジェクトに対するメソッド呼び出しからスローされた例外です
protected URL getTargetURL(String remoteName)
throws MalformedURLException
remoteName - ターゲットとなるリモートオブジェクトの名前
MalformedURLException - ベースURLとリモートオブジェクトの名前からURLを作成できなかった場合にスローされます
protected abstract Object invoke(URL targetURL,
Method method,
Object[] args)
throws Throwable
targetURL - ターゲットとなるリモートオブジェクトのURLmethod - 呼び出すメソッドargs - リモートオブジェクトのメソッド呼び出しに渡される引数値を格納するオブジェクト配列
Throwable - リモートオブジェクトに対するメソッド呼び出しからスローされた例外です
|
|||||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | ||||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | ||||||||||