org.seasar.remoting.rmi.connector.impl
クラス RoundrobinRMIConnectorImpl

java.lang.Object
  拡張org.seasar.remoting.common.connector.impl.URLBasedConnector
      拡張org.seasar.remoting.rmi.connector.impl.RMIConnectorImpl
          拡張org.seasar.remoting.rmi.connector.impl.RoundrobinRMIConnectorImpl
すべての実装インタフェース:
Connector

public class RoundrobinRMIConnectorImpl
extends RMIConnectorImpl

複数のRMIサーバに対してラウンドロビンで呼び出しを行うコネクタの実装クラスです。

作成者:
koichik

フィールドの概要
protected  List adaptorStubs
          RMIアダプタのリスト
protected  Map baseURLs
          ベースURLのリスト
protected  int count
          トータルのリモート呼び出し回数
 
クラス org.seasar.remoting.rmi.connector.impl.RMIConnectorImpl から継承したフィールド
adaptorStub, DEFAULT_PORT
 
クラス org.seasar.remoting.common.connector.impl.URLBasedConnector から継承したフィールド
baseURL
 
コンストラクタの概要
RoundrobinRMIConnectorImpl()
          インスタンスを構築します。
 
メソッドの概要
 void addBaseURLAsString(String baseURL)
          ベースURLを追加します。
protected  RMIAdaptor getAdaptor()
          RMIアダプタを返します。
 void lookup()
          diconファイルで設定されたbaseURLプロパティを使用して、 RMIレジストリからRMIAdaptorのスタブクラスを取得します。
 void removeBaseURLAsString(String baseURL)
          ベースURLを削除します。
protected  void resetAdaptor(RMIAdaptor adaptor)
          RMIアダプタをリセットします。
 void setBaseURLAsString(String baseURL)
          ベースURLを文字列で設定します。
 
クラス org.seasar.remoting.rmi.connector.impl.RMIConnectorImpl から継承したメソッド
invoke, resetAdaptorIfNecessary
 
クラス org.seasar.remoting.common.connector.impl.URLBasedConnector から継承したメソッド
getBaseURL, setBaseURL
 
クラス java.lang.Object から継承したメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

フィールドの詳細

count

protected int count
トータルのリモート呼び出し回数


baseURLs

protected Map baseURLs
ベースURLのリスト


adaptorStubs

protected List adaptorStubs
RMIアダプタのリスト

コンストラクタの詳細

RoundrobinRMIConnectorImpl

public RoundrobinRMIConnectorImpl()
インスタンスを構築します。

メソッドの詳細

setBaseURLAsString

public void setBaseURLAsString(String baseURL)
                        throws MalformedURLException
クラス RMIConnectorImpl の記述:
ベースURLを文字列で設定します。

オーバーライド:
クラス RMIConnectorImpl 内の setBaseURLAsString
パラメータ:
baseURL - ベースURLの文字列です
例外:
MalformedURLException - URLが不正な場合にスローされます

addBaseURLAsString

public void addBaseURLAsString(String baseURL)
                        throws MalformedURLException
ベースURLを追加します。

パラメータ:
baseURL - ベースURLの文字列です
例外:
MalformedURLException - URLが不正な場合にスローされます

removeBaseURLAsString

public void removeBaseURLAsString(String baseURL)
ベースURLを削除します。

パラメータ:
baseURL - ベースURLの文字列です

lookup

public void lookup()
            throws RemoteException,
                   MalformedURLException,
                   NotBoundException
クラス RMIConnectorImpl の記述:
diconファイルで設定されたbaseURLプロパティを使用して、 RMIレジストリからRMIAdaptorのスタブクラスを取得します。

オーバーライド:
クラス RMIConnectorImpl 内の lookup
例外:
RemoteException - レジストリへの問い合わせ時にスローされるRMIの例外
MalformedURLException - baseURLがrmiプロトコルではない場合の例外
NotBoundException - RMIレジストリにRMIAdaptorが未登録の場合の例外

getAdaptor

protected RMIAdaptor getAdaptor()
                         throws RemoteException,
                                MalformedURLException,
                                NotBoundException
クラス RMIConnectorImpl の記述:
RMIアダプタを返します。

RMIアダプタを取得済みの場合はそれを返します。 RMIアダプタが未取得の場合、またはリセットされた場合は新たにRMIアダプタをルックアップして返します。

オーバーライド:
クラス RMIConnectorImpl 内の getAdaptor
戻り値:
RMIアダプタ
例外:
MalformedURLException - baseURLがrmiプロトコルではない場合の例外
RemoteException - レジストリへの問い合わせ時にスローされるRMIの例外
NotBoundException - RMIレジストリにRMIAdaptorが未登録の場合の例外

resetAdaptor

protected void resetAdaptor(RMIAdaptor adaptor)
クラス RMIConnectorImpl の記述:
RMIアダプタをリセットします。

コネクション障害が発生した場合などに利用不能となったRMIアダプタを破棄するために呼び出されます。

オーバーライド:
クラス RMIConnectorImpl 内の resetAdaptor
パラメータ:
adaptor - 利用不能となったRMIアダプタ


Copyright © 2005-2010 The Seasar Foundation. All Rights Reserved.