TSCObject(Java)

TSCObjectはシステム提供クラスです。

TSCObjectは,OTMでの(サーバ)オブジェクトの基本クラスおよびインタフェースです。

ユーザはTSCObjectを継承させて,クライアント側にサービスを提供するクラスを定義します。また,サービスを提供するオブジェクトとして,その派生クラスのインスタンスを生成します。次にTSCObjectの特徴を示します。

TSCObjectが提供するサービスのインタフェース名称

TSCObjectが提供するインタフェースの種類は,TSCAcceptorのインタフェース名称の列で表されます。

TSCObjectが単数のインタフェースを提供する場合,提供するインタフェースの種類は,単数のインタフェース名称で表されます。TSCObjectが複数のインタフェースを提供する場合,例えば,ユーザ定義IDLインタフェースで継承を利用した場合は,複数のインタフェース名称が列で表されます。

TSCObjectの呼び出し時のTSCContextの取得

TSCProxyObjectを使用してクライアント側からTSCObjectのメソッドを呼び出すときに,ユーザは引数以外のデータをTSCContextとして送信できます。クライアント側で引数以外のデータをTSCContextとして送信すると,サーバ側ではTSCObjectのサービス提供メソッドが呼び出されている間に_TSCContextを呼び出すことによって,クライアント側で指定したTSCContextを取得できます。

TSCObjectの呼び出し時のTSCThreadの取得

TSCObjectの呼び出し時のTSCThreadの取得は,TSCThreadFactoryを引数としてTSCRootAcceptorを生成する場合を前提にします。この場合,サーバ側でTSCObjectのサービス提供メソッドが呼び出されている間に_TSCThreadを呼び出すことによって,実行制御を持つスレッドに割り当てられているTSCThreadを取得できます。

TSCObjectの呼び出し時のTSCアクセプタ名称の取得

サーバ側でTSCObjectのサービス提供メソッドが呼び出されている間に_TSCAcceptorNameを呼び出すことによって,サービス提供メソッドの呼び出し元であるTSCAcceptorのTSCアクセプタ名称を取得できます。

形式

package JP.co.Hitachi.soft.TPBroker.TSC;

public class TSCObject
{

 //インタフェース名称
 public String[] _TSCInterfaceName();

 //TSCコンテキスト
 public TSCContext _TSCContext();

 //TSCユーザスレッド
 public TSCThread _TSCThread();

 //TSCアクセプタ名称
 public String _TSCAcceptorName();

};

メソッド

●public String[] _TSCInterfaceName()

項目型・意味
戻り値インタフェース名称列

インタフェース名称の列を取得します。

なお,このメソッドを複数のスレッド上から同時に呼び出すことはできません。

●public TSCContext _TSCContext()

項目型・意味
戻り値呼び出し元で指定されたTSCContext

TSCContextを取得します。クライアント側から呼び出すときに指定したものと同じ内容のTSCContextを取得できます。

なお,このメソッドを複数のスレッド上から同時に呼び出すことはできません。

●public TSCThread _TSCThread()

項目型・意味
戻り値TSCユーザスレッド

このオブジェクトに割り当てられているスレッドに対応するTSCユーザスレッドを返します。

戻り値のTSCThreadのメモリ領域の管理責任はTSCObjectクラスにあるので,解放しないでください。

なお,このメソッドを複数のスレッド上から同時に呼び出すことはできません。

●public String _TSCAcceptorName()

項目型・意味
戻り値TSCアクセプタ名称

TSCObjectを保持しているTSCAcceptorのTSCアクセプタ名称を取得します。

戻り値のTSCアクセプタ名称のメモリ領域の管理責任はTSCAcceptorクラスにあるので,ユーザは削除しないでください。

なお,このメソッドを複数のスレッド上から同時に呼び出すことはできません。

TSCObjectの派生クラスのインスタンスの生成

TSCObjectの派生クラスは,newオペレータで生成します。

マルチスレッド環境でのメソッド呼び出し規則

マルチスレッド環境で,TSCObjectクラスのインスタンスのメソッドを呼び出す規則を次に示します。

メソッド複数のスレッド上からの同時呼び出し
_TSCInterfaceNameできません
_TSCContextできません
_TSCThreadできません
_TSCAcceptorNameできません。
クライアント側からのオブジェクト呼び出しできません。
注※
このメソッドはOTMが呼び出します。