public abstract class RMISocketFactory extends Object implements RMIClientSocketFactory, RMIServerSocketFactory
RMISocketFactory
のインスタンスは、RMI 呼び出しのクライアントソケットおよびサーバーソケットを取得するために RMI ランタイムが使用します。アプリケーションは、setSocketFactory
メソッドを使って、RMI ランタイムに対して、デフォルトの実装の代わりにソケットファクトリのインスタンスを使うように要求することができます。デフォルトのソケットファクトリの実装では、3 段階でクライアントソケットを作成する方法を取っています。最初に、リモートの VM に対して直接ソケット接続を試みます。その試みが (ファイアウォールのために) 失敗した場合には、RMI のランタイム は、サーバーのポート番号を明示して HTTP を使用します。ファイアウォールがそのような種類の通信を許可しない場合には、サーバー上の cgi-bin スクリプトに対する HTTP が、RMI 呼び出しを POST するために使用されます。
コンストラクタと説明 |
---|
RMISocketFactory()
RMISocketFactory を構築します。 |
修飾子と型 | メソッドと説明 |
---|---|
abstract ServerSocket |
createServerSocket(int port)
指定ポート用のサーバーソケットを作成します。ポート 0 は匿名ポートを示します。
|
abstract Socket |
createSocket(String host, int port)
指定されたホストとポートに接続されるクライアントソケットを作成します。
|
static RMISocketFactory |
getDefaultSocketFactory()
この RMI の実装に使用される、デフォルトのソケットファクトリへの参照を返します。
|
static RMIFailureHandler |
getFailureHandler()
setFailureHandler メソッドによって設定されたソケット作成エラーハンドラを返します。 |
static RMISocketFactory |
getSocketFactory()
setSocketFactory メソッドによって設定されたソケットファクトリを返します。 |
static void |
setFailureHandler(RMIFailureHandler fh)
サーバーソケットの作成が失敗した場合に、RMI のランタイムが呼び出すエラーハンドラを設定します。
|
static void |
setSocketFactory(RMISocketFactory fac)
リモートオブジェクトが特定のクライアントソケットファクトリまたはサーバーソケットファクトリに関連付けられていない場合に、RMI がソケットを取得するグローバルソケットファクトリを設定します。
|
public abstract Socket createSocket(String host, int port) throws IOException
createSocket
、インタフェース: RMIClientSocketFactory
host
- ホスト名port
- ポート番号IOException
- ソケットの作成時に入出力エラーが発生した場合public abstract ServerSocket createServerSocket(int port) throws IOException
createServerSocket
、インタフェース: RMIServerSocketFactory
port
- ポート番号IOException
- サーバーソケットの作成時に入出力エラーが発生した場合public static void setSocketFactory(RMISocketFactory fac) throws IOException
fac
- ソケットファクトリIOException
- RMI ソケットファクトリがすでに設定されている場合SecurityException
- セキュリティーマネージャーが存在し、その checkSetFactory
メソッドでこの操作が許可されていない場合。getSocketFactory()
, SecurityManager.checkSetFactory()
public static RMISocketFactory getSocketFactory()
setSocketFactory
メソッドによって設定されたソケットファクトリを返します。ソケットファクトリが設定されていない場合は null
を返します。setSocketFactory(RMISocketFactory)
public static RMISocketFactory getDefaultSocketFactory()
getSocketFactory
から null
が返された場合に、RMI ランタイムによって使用されます。public static void setFailureHandler(RMIFailureHandler fh)
セキュリティーマネージャーが存在する場合、この操作が許可されるように、このメソッドは最初にセキュリティーマネージャーの checkSetFactory
メソッドを呼び出します。この結果、SecurityException
になることがあります。
fh
- エラーハンドラSecurityException
- セキュリティーマネージャーが存在し、その checkSetFactory
メソッドでこの操作が許可されていない場合。getFailureHandler()
, RMIFailureHandler.failure(Exception)
public static RMIFailureHandler getFailureHandler()
setFailureHandler
メソッドによって設定されたソケット作成エラーハンドラを返します。setFailureHandler(RMIFailureHandler)
バグまたは機能を送信
詳細な API リファレンスおよび開発者ドキュメントについては、Java SE のドキュメントを参照してください。そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright © 1993, 2013, Oracle and/or its affiliates. All rights reserved.