|
||||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
java.lang.Objectorg.omg.PortableServer.Servant
RTC.PortPOA
jp.go.aist.rtm.RTC.port.PortBase
public abstract class PortBase
Portサーバントのベース実装となるクラスです。
Portは、UMLにおけるポートの概念をほぼ継承しており、ほぼ同等のものとみなすことができます。 RTコンポーネントのコンセプトにおいては、Portはコンポーネントに付属するものであり、 コンポーネントが他のコンポーネントと相互作用を行う接点であり、 通常は幾つかのインターフェースと関連付けられます。
コンポーネントはPortを通して外部に対してインターフェースを提供または要求 することができ、Portはその接続を管理する役割を担っています。
Portの具象クラスは、通常はRTコンポーネントインスタンス生成時に同時に生成され、 提供・要求インターフェースを登録した後、RTコンポーネントに登録され、 外部からアクセス可能なPortとして機能することを想定しています。
Portは、CORBAインターフェースとして以下のオペレーションを提供します。
上記のオペレーションのうち、get_port_profile(), get_connector_profiles(), get_connector_profile(), connect(), disconnect(), disconnect_all()は、 サブクラスにおいて特に振る舞いを変更する必要がないため、オーバーライドすることは推奨されません。
notify_connect(), notify_disconnect()については、サブクラスが提供・要求するインターフェースの 種類に応じて、振る舞いを変更する必要が生ずるかもしれませんが、これらを直接オーバーライドすることは 推奨されず、後述のnotify_connect(), notify_disconnect()の項にも記述されている通りに、 これらのメソッドに関連したprotectedメソッドをオーバーライドすることにより振る舞いを変更することが 推奨されます。
コンストラクタの概要 | |
---|---|
PortBase()
デフォルトコンストラクタです。 |
|
PortBase(java.lang.String name)
本コンストラクタでは、オブジェクトの初期化処理を行うと同時に、 自身をCORBAオブジェクトとして活性化します。 |
メソッドの概要 | |
---|---|
Port |
_this()
当該PortのCORBAオブジェクト参照を取得します。 |
ReturnCode_t |
connect(ConnectorProfileHolder connector_profile)
ポート間の接続を行います。 |
ReturnCode_t |
disconnect_all()
当該ポートに関連したすべての接続を解除します。 |
ReturnCode_t |
disconnect(java.lang.String connector_id)
ポートの接続を解除します。 |
ConnectorProfile |
get_connector_profile(java.lang.String connector_id)
指定されたコネクタIDに対応する接続プロファイルを取得します。 |
ConnectorProfile[] |
get_connector_profiles()
ConnectorProfileリストを取得します。 |
PortProfile |
get_port_profile()
PortProfileを取得します。 |
Port |
getPortRef()
当該ポートのPortProfileが保持している、当該ポート自身のCORBAオブジェクト参照を取得します。 |
PortProfile |
getProfile()
当該ポートが保持しているPortProfileオブジェクトを取得します。 |
ReturnCode_t |
notify_connect(ConnectorProfileHolder connector_profile)
ポートの接続通知を行います。 |
ReturnCode_t |
notify_disconnect(java.lang.String connector_id)
ポートの接続解除通知を行います。 |
void |
setName(java.lang.String name)
ポート名を設定します。 |
void |
setOwner(RTObject owner)
当該ポートのオーナーRTObjectを設定します。 |
void |
setPortRef(Port port_ref)
指定されたポートCORBAオブジェクト参照を設定します。 |
クラス RTC.PortPOA から継承されたメソッド |
---|
_all_interfaces, _invoke, _this |
クラス org.omg.PortableServer.Servant から継承されたメソッド |
---|
_default_POA, _get_delegate, _get_interface_def, _is_a, _non_existent, _object_id, _orb, _poa, _set_delegate, _this_object, _this_object |
クラス java.lang.Object から継承されたメソッド |
---|
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
コンストラクタの詳細 |
---|
public PortBase(java.lang.String name)
本コンストラクタでは、オブジェクトの初期化処理を行うと同時に、 自身をCORBAオブジェクトとして活性化します。さらに、自分自身のPortProfileの port_refメンバに、自身のCORBAオブジェクト参照を格納します。
name
- ポート名public PortBase()
デフォルトコンストラクタです。ポート名には空文字列が割り当てられます。
メソッドの詳細 |
---|
public Port _this()
当該PortのCORBAオブジェクト参照を取得します。
PortPOA
内の _this
public PortProfile get_port_profile()
PortProfileを取得します。なお、PortProfileは次のメンバを持っています。
public ConnectorProfile[] get_connector_profiles()
ConnectorProfileリストを取得します。 ConnectorProfileはポート間の接続プロファイル情報を保持するクラスであり、 接続時にポート間で情報交換を行い、関連するすべてのポートで同一の値が保持されます。
ConnectorProfileは以下のメンバを保持しています。
public ConnectorProfile get_connector_profile(java.lang.String connector_id)
指定されたコネクタIDに対応する接続プロファイルを取得します。
connector_id
- コネクタID
public ReturnCode_t connect(ConnectorProfileHolder connector_profile)
ポート間の接続を行います。指定された接続プロファイルにしたがってポート間の接続を確立します。
アプリケーションプログラム側は、幾つかのコンポーネントが持つ複数のポート間を接続したい場合、 適切な値を設定した接続プロファイルを引数として渡すことにより、関連するポート間の接続を確立できます。
本メソッドの呼び出しにあたっては、ConnectorProfileオブジェクトのメンバのうち、 次のものについて値を設定しておかねばなりません。
connector_profile
- 接続プロファイル
public ReturnCode_t notify_connect(ConnectorProfileHolder connector_profile)
ポートの接続通知を行います。本メソッドは、ポート間で接続が行われる際に、 ポート間で内部的に呼び出されます。
connector_profile
- 接続プロファイル
public ReturnCode_t disconnect(java.lang.String connector_id)
ポートの接続を解除します。このメソッドは、接続確立時に接続に対して与えられるコネクタIDに 対応するピア・ポートとの接続を解除します。
connector_id
- コネクタID
public ReturnCode_t notify_disconnect(java.lang.String connector_id)
ポートの接続解除通知を行います。本メソッドは、ポート間の接続解除が行われる際に、 ポート間で内部的に呼び出されます。
connector_id
- コネクタID
public ReturnCode_t disconnect_all()
当該ポートに関連したすべての接続を解除します。
public void setName(java.lang.String name)
ポート名を設定します。指定されたポート名は、PortProfileのnameメンバに設定されます。
name
- ポート名public final PortProfile getProfile()
当該ポートが保持しているPortProfileオブジェクトを取得します。
public void setPortRef(Port port_ref)
指定されたポートCORBAオブジェクト参照を設定します。
本メソッドは、当該ポート自身のCORBAオブジェクト参照を設定するために用います。 当該ポートのCORBAオブジェクト参照以外は設定しないでください。
port_ref
- 当該ポートのCORBAオブジェクト参照public Port getPortRef()
当該ポートのPortProfileが保持している、当該ポート自身のCORBAオブジェクト参照を取得します。
当該ポートのCORBAオブジェクト参照
- public void setOwner(RTObject owner)
当該ポートのオーナーRTObjectを設定します。 指定されたRTObjectオブジェクトが、PortProfileのownerメンバに設定されます。
owner
- 当該ポートを所有するRTObjectのCORBAオブジェクト参照
|
||||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |