|
JavaTM Platform Standard Ed. 6 |
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
java.lang.Object org.omg.CORBA.Context
public abstract class Context
Request
オペレーションで、この呼び出しとともに送出される前にコンテキスト文字列を解決する必要のあるコンテキストオブジェクトの指定で使用されるオブジェクトです。 解決されたコンテキスト文字列は、要求の呼び出しとともに送られます。Context オブジェクトは、NamedValue
オブジェクトの形式でプロパティーのリストを格納します。それらのプロパティーは、クライアント、環境、または要求の状況についての情報を表すもので、通常、パラメータとして渡すのが難しいプロパティーです。
Context
オブジェクトは、まず ORB
メソッドの get_default_context
を呼び出し、次にデフォルトのコンテキストで create_child
メソッドを呼び出すことによって作成されます。
Context
オブジェクトの各プロパティーは、NamedValue
オブジェクトによって表されます。プロパティー名は NamedValue
オブジェクトの name
フィールドに格納され、その名前に関連した値は NamedValue
オブジェクトの value
フィールドに割り当てられた Any
オブジェクトに格納されます。
Context
のプロパティーは、サーバーの環境に送られる (および暗黙的にその一部となる) クライアントまたはアプリケーションの環境の一部を表すことができます (ウィンドウ識別子やユーザー設定情報など)。サーバーが呼び出されると (つまりプロパティーが送られたあと)、サーバーは get_values
メソッドを使用して、その Context
オブジェクトにそのプロパティーについて問い合わせることができます。
オペレーションの宣言に context 節が定義されている場合、スタブおよびスケルトンはそのコンテキスト用として付加的な引数を持ちます。オペレーションの呼び出しが発生すると、ORB は IDL のオペレーション定義で名付けられて、クライアントの Context
オブジェクトにあるプロパティーが、呼び出されたメソッドへの Context
オブジェクトパラメータで提供されるようにします。
Context
プロパティー名 (文字列) は、通常、OMG IDL 識別子またはピリオドで区切られた一連の OMG IDL 識別子の形式となります。コンテキストプロパティー名のパターンは、プロパティー名、または 1 つの「*」が末尾に付くプロパティー名のどちらかです。末尾に「*」が付かないプロパティー名パターンは、そのプロパティー名自体の文字列とだけ一致します。<名前>*」形式のプロパティー名のパターンは、<名前> で始まり 0 以上の文字が続くどのプロパティー名とも一致します。
プロパティー名のパターンは、オペレーション定義の context 節で、または Context.get_values
メソッドのパラメータとして使用されます。
Context
オブジェクトは、特定のデフォルトの動作を行うためにお互いに連鎖させることができます。create_child
メソッドで作成された Context
オブジェクトは、その親 (それを作成した Context
オブジェクト) に連鎖されます。 つまりその親は、プロパティー名の検索で子のあとに検索されます。
ある Context
オブジェクトで定義されたプロパティーは、その 1 つ上のレベルで定義されたそのプロパティーをオーバーライドします。プロパティーの検索で使用される範囲は、get_values
メソッドを呼び出すときに開始範囲を指定し、CTX_RESTRICT_SCOPE
フラグを使用することにより制限できます。
Context
オブジェクトは、開始検索範囲を指定する目的で名付けることができます。
コンストラクタの概要 | |
---|---|
Context()
|
メソッドの概要 | |
---|---|
abstract String |
context_name()
この Context オブジェクトの名前を取得します。 |
abstract Context |
create_child(String child_ctx_name)
文字列で名前を指定して、この Context オブジェクトを親とする Context オブジェクトを生成します。 |
abstract void |
delete_values(String propname)
name フィールドが、指定されたプロパティー名と一致する NamedValue オブジェクトを、この Context オブジェクトから削除します。 |
abstract NVList |
get_values(String start_scope,
int op_flags,
String pattern)
name フィールドが、指定された名前、または指定された名前パターンと一致する NamedValue オブジェクトを取得します。 |
abstract Context |
parent()
この Context オブジェクトの親を取得します。 |
abstract void |
set_one_value(String propname,
Any propvalue)
NamedValue オブジェクトを生成し、そのオブジェクトをこの Context オブジェクトに追加します。 |
abstract void |
set_values(NVList values)
この Context オブジェクトの 1 つ以上のプロパティー値を設定します。 |
クラス java.lang.Object から継承されたメソッド |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
コンストラクタの詳細 |
---|
public Context()
メソッドの詳細 |
---|
public abstract String context_name()
Context
オブジェクトの名前を取得します。
Context
オブジェクトの名前public abstract Context parent()
Context
オブジェクトの親を取得します。
Context
オブジェクトの
親である Context
オブジェクトpublic abstract Context create_child(String child_ctx_name)
Context
オブジェクトを親とする Context
オブジェクトを生成します。
新しい Context
オブジェクトは、その親である Context
オブジェクトに連鎖されます。つまり、一致するプロパティー名の検索で、一致するプロパティー名がこのコンテキストで見つからない場合、その親で検索が継続されます。親でも一致するプロパティー名が見つからない場合は、さらにその親 (存在する場合) へと、検索は次々に継続されます。
child_ctx_name
- 新しい Context
オブジェクトの名前として
設定される String
オブジェクト
Context
オブジェクトpublic abstract void set_one_value(String propname, Any propvalue)
NamedValue
オブジェクトを生成し、そのオブジェクトをこの Context
オブジェクトに追加します。新しい NamedValue
オブジェクトの name
フィールドは、指定された文字列に設定され、value
フィールドは、指定された Any
オブジェクトに設定され、flags
フィールドは 0 に設定されます。
propname
- 設定されるプロパティーの名前propvalue
- プロパティーの値が設定される
Any
オブジェクト。この
Any
オブジェクトの value
フィールドは、
指定された propname と関連する値を
格納する。
kind
フィールドは
TCKind.tk_string
に設定されなければならないpublic abstract void set_values(NVList values)
Context
オブジェクトの 1 つ以上のプロパティー値を設定します。このメソッドに指定された NVList
は、1 つ以上の NamedValue
オブジェクトを格納します。各 NamedValue
オブジェクトでは、name
フィールドはプロパティー名を持ち、flags
フィールドは 0 に設定されます。NamedValue
オブジェクトの value
フィールドは Any
オブジェクトを格納し、その Any
オブジェクトはプロパティーの値を格納します。値は常に文字列であるため、Any
オブジェクトでは、その TypeCode
の kind
フィールドを TCKind.tk_string
に設定する必要があります。
values
- プロパティー名、およびそれに関連する
設定値を格納する NVListget_values(java.lang.String, int, java.lang.String)
,
NamedValue
,
Any
public abstract void delete_values(String propname)
name
フィールドが、指定されたプロパティー名と一致する NamedValue
オブジェクトを、この Context
オブジェクトから削除します。propname に指定された String
オブジェクトの末尾にワイルドカード文字 (*) がある場合、name
フィールドが一致するすべての NamedValue
オブジェクトが削除されます。検索範囲は、常にこの Context
オブジェクトに制限されます。
一致するプロパティーが見つからない場合は、例外が返されます。
propname
- 削除されるプロパティーの名前public abstract NVList get_values(String start_scope, int op_flags, String pattern)
name
フィールドが、指定された名前、または指定された名前パターンと一致する NamedValue
オブジェクトを取得します。このメソッドでは、ワイルドカード検索が行えます。 つまり、一致するプロパティーが複数ある場合は、複数の値が返されます。プロパティーが指定されたレベルで見つからない場合、一致するプロパティーが見つかるまで、あるいは連鎖内のすべての Context
オブジェクトが検索されるまで、コンテキストオブジェクトツリーの上方向に検索が続けられます。
一致するプロパティーが見つからない場合は、エラーが返され、プロパティーリストは返されません。
start_scope
- 指定されたプロパティーの検索を開始する
コンテキストオブジェクトレベルを示す
String
オブジェクト
(_USER、_GROUP、_SYSTEM など)。有効な
範囲名は実装に固有。範囲名が
省略されると、検索は
指定されたコンテキストオブジェクトで
開始される。指定された範囲名が
見つからない場合は例外が返されるop_flags
- オペレーションフラグ。指定できる
唯一のフラグは CTX_RESTRICT_SCOPE
。
このフラグが指定されると、検索は
指定された start_scope
、すなわち、
この Context
オブジェクトに制限されるpattern
- 値が取得される
プロパティー名。pattern
は
名前、または末尾に
ワイルドカード文字 (*) を持つ名前
NamedValue
オブジェクトの形式) を
格納している NVList
set_values(org.omg.CORBA.NVList)
,
NamedValue
|
JavaTM Platform Standard Ed. 6 |
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。