| インタフェース | 説明 |
|---|---|
| BindingIterator |
BindingIteratorインタフェースを使うと、クライアントはnext_oneまたはnext_nを使ってバインディングを次々に返すことができます。
|
| BindingIteratorOperations |
BindingIteratorインタフェースを使うと、クライアントはnext_oneまたはnext_nを使ってバインディングを次々に返すことができます。
|
| NamingContext |
ネーミング・コンテキストは、それぞれが一意の名前を持つ一連のネーム・バインディングを格納するオブジェクトです。
|
| NamingContextExt |
NamingContextExtは、それぞれの名前が固有でInteroperable Naming Serviceの一部である名前バインディングのセットを格納するNamingContextの拡張です。 |
| NamingContextExtOperations |
NamingContextExtは、それぞれの名前が固有でInteroperable Naming Serviceの一部である名前バインディングのセットを格納するNamingContextの拡張です。 |
| NamingContextOperations |
ネーミング・コンテキストは、それぞれが一意の名前を持つ一連のネーム・バインディングを格納するオブジェクトです。
|
| クラス | 説明 |
|---|---|
| _BindingIteratorImplBase | |
| _BindingIteratorStub |
BindingIteratorインタフェースを使うと、クライアントはnext_oneまたはnext_nを使ってバインディングを次々に返すことができます。
|
| NamingContextExtStub |
NamingContextExtは、それぞれの名前が固有でInteroperable Naming Serviceの一部である名前バインディングのセットを格納するNamingContextの拡張です。 |
| _NamingContextImplBase | |
| _NamingContextStub |
ネーミング・コンテキストは、それぞれが一意の名前を持つ一連のネーム・バインディングを格納するオブジェクトです。
|
| Binding |
org/omg/CosNaming/Binding.java。
|
| BindingHelper |
org/omg/CosNaming/BindingHelper.java。
|
| BindingHolder |
org/omg/CosNaming/BindingHolder.java。
|
| BindingIteratorHelper |
BindingIteratorインタフェースを使うと、クライアントはnext_oneまたはnext_nを使ってバインディングを次々に返すことができます。
|
| BindingIteratorHolder |
BindingIteratorインタフェースを使うと、クライアントはnext_oneまたはnext_nを使ってバインディングを次々に返すことができます。
|
| BindingIteratorPOA |
BindingIteratorインタフェースを使うと、クライアントはnext_oneまたはnext_nを使ってバインディングを次々に返すことができます。
|
| BindingListHelper |
バインディングのリストです。
|
| BindingListHolder |
バインディングのリストです。
|
| BindingType |
指定されたバインディングが、オブジェクト用(つまりネーミング・コンテキストでない)かネーミング・コンテキスト用かを指定します。
|
| BindingTypeHelper |
指定されたバインディングが、オブジェクト用(つまりネーミング・コンテキストでない)かネーミング・コンテキスト用かを指定します。
|
| BindingTypeHolder |
指定されたバインディングが、オブジェクト用(つまりネーミング・コンテキストでない)かネーミング・コンテキスト用かを指定します。
|
| IstringHelper |
org/omg/CosNaming/IstringHelper.java。
|
| NameComponent |
org/omg/CosNaming/NameComponent.java。
|
| NameComponentHelper |
org/omg/CosNaming/NameComponentHelper.java。
|
| NameComponentHolder |
org/omg/CosNaming/NameComponentHolder.java。
|
| NameHelper |
名前は、名前コンポーネントのシーケンスです。
|
| NameHolder |
名前は、名前コンポーネントのシーケンスです。
|
| NamingContextExtHelper |
NamingContextExtは、それぞれの名前が固有でInteroperable Naming Serviceの一部である名前バインディングのセットを格納するNamingContextの拡張です。 |
| NamingContextExtHolder |
NamingContextExtは、それぞれの名前が固有でInteroperable Naming Serviceの一部である名前バインディングのセットを格納するNamingContextの拡張です。 |
| NamingContextExtPOA |
NamingContextExtは、それぞれの名前が固有でInteroperable Naming Serviceの一部である名前バインディングのセットを格納するNamingContextの拡張です。 |
| NamingContextHelper |
ネーミング・コンテキストは、それぞれが一意の名前を持つ一連のネーム・バインディングを格納するオブジェクトです。
|
| NamingContextHolder |
ネーミング・コンテキストは、それぞれが一意の名前を持つ一連のネーム・バインディングを格納するオブジェクトです。
|
| NamingContextPOA |
ネーミング・コンテキストは、それぞれが一意の名前を持つ一連のネーム・バインディングを格納するオブジェクトです。
|
このパッケージ、およびこのパッケージに含まれているすべてのクラスおよびインタフェースは、OMG IDLで記述されたモジュールであるファイルnameservice.idlで、idljツールを実行することにより生成されています。
Java(TM) Platform, Standard Edition 6 ORBが準拠する公式の仕様のサポート・セクションの正確なリストは、「Java(TM) SE 6での正式なCORBAサポート仕様」を参照してください。
インタフェースは次の2つです。
この2つのインタフェースは、名前とオブジェクト参照のバインドとアンバインド、バインドされたオブジェクト参照の取得、およびバインディングをリストから次々に返すための手段を提供します。NamingContextインタフェースは、ネーム・サービスの主要な機能を提供し、BindingIteratorインタフェースは、名前とオブジェクト参照のバインディングをリストから次々に返すための手段を提供します。
NamingContextインタフェースおよびBindingIteratorインタフェースによって使用されます。補助クラスについてのコメントを次に示します。
NamingContextおよびBindingIteratorによって使用されるクラスpublic final class NameComponent -- 名前の基本単位です。名前は、ネーミング・コンテキストでオブジェクト参照にバインドされます。
名前は、1つまたは複数のNameComponentオブジェクトから成る配列です。1つのNameComponentを持つ名前を単純名と呼び、複数のNameComponentオブジェクトを持つ名前を複合名と呼びます。
NameComponentオブジェクトは2つのフィールドから構成されています。
id -- 識別子として使用されるString
kind -- 記述の目的で使用されるString。これは、構文に影響を与えることなくオブジェクトを記述できるという点で重要。たとえば、Cプログラミング言語では、ソース・コード・ファイルであることを示すために、ファイル名に「.c」拡張子を付加する構文規則が用いられる。NameComponentオブジェクトでは、ファイル拡張子などの構文規則を使用せず、kindフィールドを使用してオブジェクトの型を記述できる。kindフィールドの値の例としては、"c_source"、"object_code"、"executable"、"postscript"、""などの文字列がある。kindフィールドが空の文字列であることもある。
名前では、最後以外の各NameComponentオブジェクトはNamingContextオブジェクトを表します。最後のNameComponentオブジェクトはバインドされているオブジェクト参照を表します。これは、最後の名前がファイル名で、その前のすべての名前がディレクトリ名を表すパス名の形式と似ています。
public final class Binding -- 名前をオブジェクト参照またはネーミング・コンテキストに関連したオブジェクト。Bindingオブジェクトには次の2つのフィールドがある。
binding_name - バウンド名を表す1つまたは複数のNameComponentオブジェクトの配列
binding_type - 名前とオブジェクト参照のバインディングか、名前とネーミング・コンテキストのバインディングかを示すBindingTypeオブジェクト
NamingContextインタフェースには、名前とオブジェクト参照または名前とネーミング・コンテキストのバインドやアンバインド、バインディングのリストの取得、バインディングの解決(名前を指定すると、resolveメソッドがその名前にバインドされているオブジェクト参照を返す)のためのメソッドがあります。
public final class BindingType -- 指定されたBindingオブジェクトが、名前と(ネーミング・コンテキストではなく)オブジェクト参照のバインドか、あるいは名前とネーミング・コンテキストのバインドかを指定するオブジェクト。
BindingTypeクラスは、2つのメソッドと4つの定数からなります。それらの定数のうちの2つはBindingTypeオブジェクトで、残りの2つはintです。
BindingTypeオブジェクトは、Bindingクラスのコンストラクタに渡したり、パラメータまたは戻り値として使用したりすることができます。BindingTypeオブジェクトには、次のものがあります。
public static final BindingType nobject -- オブジェクト参照とのバインディングであることを示す
public static final BindingType ncontext -- ネーミング・コンテキストとのバインディングであることを示す
int定数は、BindingTypeオブジェクトを作成するfrom_intメソッドに指定したり、valueメソッドの戻り値として使用したりすることができます。このような定数には次のものがあります。
public static final int _nobject
public static final int _ncontext
from_intメソッドに_nobjectまたは_ncontext以外何も指定されなかった場合は、org.omg.CORBA.BAD_PARAM例外がスローされます。
使用例を次に示します。
BindingType btObject = from_int(_nobject);
BindingType btContext = from_int(_ncontext);
変数btObjectは、オブジェクト参照とのバインディングを表すために初期化されたBindingTypeオブジェクトを参照します。変数btContextは、NamingContexオブジェクトとのバインディングを表すために初期化されたBindingTypeオブジェクトを参照します。
valueメソッドは_nobjectまたは_ncontextを返します。したがって次のコードでは、変数btには_nobjectまたは_ncontextが格納されます。
int bt = BindingType.value();
valueフィールドに代入できます。これにより、OUTパラメータまたはINOUTパラメータの機能を果たすことができます。
org.omg.CosNamingパッケージでは、次のホルダー・クラスが生成されます。
NamingContextHolder
BindingIteratorHolder
BindingHolder
BindingListHolder
BindingTypeHolder
NameComponentHolder
NameHolder
org.omg.CORBAパッケージでは、Javaの基本型のそれぞれについて、ホルダー・クラス(IntHolder、ShortHolder、StringHolderなど)があります。
また、Nameクラスがない場合でもNameHolderクラスがあります。同様に、BindingListクラスがない場合でもBindingListHolderがあります。これは、OMG IDLインタフェースでは、NameおよびBindingListがtypedefであるためです。IDLのtypedefからJavaの構造体へのマッピングはできませんが、typedefがシーケンス用または配列用である場合はホルダー・クラスが生成されます。Javaプログラミング言語にマッピングされた場合は、NameはNameComponentオブジェクトの配列になり、BindingListはBindingオブジェクトの配列になります。すべてのホルダー・クラスには少なくとも2つのコンストラクタと1つのフィールドがあります。
valueフィールド -- OUTパラメータまたはINOUTパラメータとして使用される型のインスタンス。たとえば、NamingContextHolderのvalueフィールドはNamingContextオブジェクトになる。
BindingHolderオブジェクトのvalueフィールドはnullに設定される。これは、その値がオブジェクトのデフォルト値であるため。この他のデフォルト値としては、booleanのfalse、numeric型およびchar型の0、オブジェクト参照のnullなどがある。
valueフィールドが初期化されたホルダー・オブジェクトを新しく生成するコンストラクタ
ユーザー定義型(Javaクラス)のホルダー・クラスには、このほかに3つのメソッドがありますが、アプリケーション開発者が直接これらのメソッドを使うことはありません。
ヘルパー・クラスには、アプリケーション・プログラマが使用するメソッドが1つだけあります。narrowメソッドです。IDLインタフェースからマッピングされたJavaインタフェースのみが、narrowメソッドのあるヘルパー・クラスを持ちます。このため、CosNamingパッケージでは、NamingContextHelperクラスとBindingIteratorHelperクラスのみにnarrowメソッドがあります。
public static NamingContext narrow(org.omg.CORBA.Object obj) -- 指定されたCORBAオブジェクトをNamingContextオブジェクトに変換する
public static BindingIterator narrow(org.omg.CORBA.Object obj) -- 指定されたCORBAオブジェクトをBindingIteratorオブジェクトに変換する
org.omg.CosNaming.NamingContextPackageorg.omg.CosNamingパッケージで使用される例外と、NotFound例外の理由を提供するNotFoundReasonクラスのHelperクラスおよびHolderクラスを提供します。
次の例外のHelperクラスおよびHolderクラスがあります。
AlreadyBound
CannotProceed
InvalidName
NotEmpty
NotFound
CosNamingパッケージの実装は、OMG COSNaming仕様に従っています。つまり、Sunのネーム・サービスのAPIは、OMGが提供するネーム・サービスのガイドラインに従って実装されます。したがって、サード・パーティのベンダーがOMG準拠のネーム・サービスを実装していれば、SunのCosNamingの実装とサード・パーティのベンダーの実装との間での切替えが可能です。ただし、例外文字列の相違など、ネーム・サービスを実装するベンダーによって多少の違いがあることを理解しておく必要があります。
COSNaming実装にSunのRMI-IIOP ORBを接続することも可能です。次のステップに従います。
/tmp/servicesと名付けて、そのファイルにNameService,<Stringified IOR of the Root Naming Context>を入れます。
これによって、NameServiceと、使いたいCosNaming実装のRoot Naming Contextとが関連付けられます。
java -classpath $(CLASSPATH)
com.sun.corba.ee.internal.CosNaming.BootstrapServer -InitialServicesFile
"/tmp/services" [-ORBInitialPort port]
コマンドの最後の角括弧は、ポート番号の指定がオプションであることを示します。
アプリケーションがorg.omg.CORBA.ORB.resolve_initial_referencesメソッドを呼び出すと、CORBAプロセスがBootstrap Serverに接続してRoot Naming Contextを取得します。
CosNaming APIの概要および使用例については、次を参照してください。
Java IDLの概要については、次を参照してください。
バグまたは機能を送信
詳細なAPIリファレンスおよび開発者ドキュメントについては、Java SEのドキュメントを参照してください。そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright© 1993, 2014, Oracle and/or its affiliates. All rights reserved.