メッセージキューイングアクセス機能 TP1/Message Queue - Access 使用の手引
ImqObjectクラス(C++)
このクラスは,キューマネジャおよびキューの属性をカプセル化します。
このクラスは抽象クラスです。このクラスのオブジェクトが破棄されると,このクラスは自動的にクローズされ,そのImqQueueManager接続は切断されます。
インクルードファイル
このクラスを使用するときは,imqobj.hppファイルをインクルードしてください。
オブジェクト属性
● alternate user id
最大MQ_USER_ID_LENGTH文字です。初期値はヌル文字です。
MQOD構造体の,AlternateUserIdフィールドに相当します。
● close options
初期値はMQCO_NONEです。この属性は,暗黙の再オープン操作時には無視されます。この操作では,必ず値MQCO_NONEが使用されるためです。
● connection reference
ローカルのキューマネジャへの必要な接続を提供するImqQueueManagerオブジェクトへの参照です。ImqQueueManagerオブジェクトの場合,参照はオブジェクト自身です。初期値はヌル文字です。
● description
キューマネジャ,キュー,またはプロセスの記述名(最大64文字)です。属性は読み取り専用です。
● name
キューマネジャ,キュー,または該当するプロセスの名前(最大48文字)です。初期値はヌル文字です。これは,結果として生じた動的キューの名前に対するopenのあとのモデルキュー変更の名前です。空のキューマネジャ名の代わりに,必ず実際のキューマネジャ名が返されます。
MQOD構造体,MQOR構造体の,ObjectNameフィールド,またはObjectQMgrNameフィールドに相当します。
● next managed object
特定の順序でなく,このクラスの次のオブジェクトで,このオブジェクトと同じconnection referenceを持つものです。初期値は0です。
● open options
初期値はMQOO_INQUIREです。適切な値を設定する方法には,次の2通りがあります。
openメソッドを使用する場合は,最初にopen optionsが適切かどうか確認する必要があります。ただし,必ずしもopenメソッドを使用する必要はありません。TP1/Message Queue - Accessは,引き続き1の場合と同じ動作を示しますが,2の状況では効率の低下にはなりません。
0は有効な値ではないため,オブジェクトをオープンしてみる前に,適切な値を設定する必要があります。setOpenOptions(open options)のあとにopen( )を使用するか,openFor(open options)を使用して実行します。
● open status
オブジェクトがオープンである(TRUE)か,クローズされている(FALSE)かを示します。属性は読み取り専用です。初期値はFALSEです。
● previous managed object
特定の順序ではなく,このクラスの直前のオブジェクトで,このオブジェクトと同じconnection referenceを持つものです。初期値は0です。
コンストラクタ
● ImqObject( );
デフォルトのコンストラクタです。
● ImqObject( const ImqObject & object );
コピーコンストラクタです。open statusはFALSEとなります。
メソッド
● void operator = ( const ImqObject & object );
必要に応じてクローズを実行し,objectからインスタンスデータをコピーします。open statusはFALSEとなります。
● ImqString alternateUserId( ) const ;
alternate user idのコピーを返します。
● ImqBoolean setAlternateUserId( const char * id );
alternate user idを設定します。alternate user idを設定できるのは,open statusがFALSEである場合だけです。正常に実行された場合はTRUEを返します。
● ImqBoolean close( );
open statusをFALSEに設定します。正常に実行された場合はTRUEを返します。
MQCLOSE命令に相当します。
● MQLONG closeOptions( ) const ;
close optionsを返します。
● void setCloseOptions( const MQLONG options );
close optionsを設定します。
● ImqQueueManager * connectionReference( ) const ;
connection referenceを返します。
● void setConnectionReference( ImqQueueManager & manager );
connection referenceを設定します。
● void setConnectionReference( ImqQueueManager * manager = 0 );
connection referenceを設定します。
● virtual ImqBoolean description( ImqString & description ) = 0 ;
descriptionのコピーを提供します。正常に実行された場合はTRUEを返します。
MQINQ命令の,MQCA_Q_MGR_DESCセレクタ,MQCA_Q_DESCセレクタ,およびMQCA_PROCESS_DESCセレクタに相当します。
● ImqString description( );
考えられるエラーを指示しないで,descriptionのコピーを返します。
MQINQ命令の,MQCA_Q_MGR_DESCセレクタ,MQCA_Q_DESCセレクタ,およびMQCA_PROCESS_DESCセレクタに相当します。
● ImqObject * nextManagedObject( ) const ;
next managed object を返します。
● virtual ImqBoolean name( ImqString & name );
nameのコピーを提供します。正常に実行された場合はTRUEを返します。
MQINQ命令の,MQCA_Q_MGR_NAMEセレクタ,MQCA_Q_NAMEセレクタ,およびMQCA_PROCESS_NAMEセレクタに相当します。
● ImqString name( );
考えられるエラーを指示しないで,nameのコピーを返します。
MQINQ命令の,MQCA_Q_MGR_NAMEセレクタ,MQCA_Q_NAMEセレクタ,およびMQCA_PROCESS_NAMEセレクタに相当します。
● ImqBoolean setName( const char * name = 0 );
nameを設定します。nameを設定できるのは,open statusがFALSEである場合だけです。また,ImqQueueManagerの場合は,connection statusがFALSEである場合です。正常に実行された場合はTRUEを返します。
● ImqBoolean open( );
open optionsとnameを使用して必要に応じてオブジェクトをオープンすることによって,open statusをTRUEに変更します。ImqQueueManager connection statusを必ずTRUEにする必要がある場合には,connection reference情報とImqQueueManager connectメソッドを使用します。open statusを返します。
MQOPEN命令に相当します。
● ImqBoolean openFor( const MQLONG required-options = 0 );
required-optionsが組み込まれたopen optionsを指定した状態で,オブジェクトがオープンされるようにします。
open optionsのどれかが変更され,オブジェクトがすでにオープンになっている場合は,open optionsを調整するためにオブジェクトは一時的にクローズされ,再オープンされます。
正常に実行された場合はTRUEを返します。正常に実行されたということは,オブジェクトが適切なオプションでオープンになっていることを示します。
MQOPEN命令に相当します。
● MQLONG openOptions( ) const ;
open optionsを返します。
● ImqBoolean setOpenOptions( const MQLONG options );
open optionsを設定します。open optionsを設定できるのは,open statusがFALSEである場合だけです。正常に実行された場合はTRUEを返します。
● ImqBoolean openStatus( ) const ;
open statusを返します。
● ImqObject * previousManagedObject( ) const ;
previous managed objectを返します。
メソッド(protected)
● MQHCONN connectionHandle( ) const ;
connection referenceと関連づけられたMQHCONNを返します。この値は,connection referenceがない場合,またはImqQueueManagerが接続されていない場合は0です。
● ImqBoolean inquire( const MQLONG int-attr, MQLONG & value );
整数値を返します。この索引はMQIA_*値です。エラーがあった場合,値はMQIAV_UNDEFINEDに設定されます。
● ImqBoolean inquire( const MQLONG char-attr, char * & buffer, const size_t length );
文字ストリングを返します。この索引はMQCA_*値です。
● virtual void openInformationDisperse( );
MQOPEN命令の直後にMQOD構造体の可変部分から情報を分散させます。
● virtual ImqBoolean openInformationPrepare( );
MQOPEN命令の直前にMQOD構造体の可変部分の情報を準備します。正常に実行された場合はTRUEを返します。
● ImqBoolean set( const MQLONG int-attr, const MQLONG value );
TP1/Message Queue - Access整数属性を設定します。
● ImqBoolean set( const MQLONG char-attr, const char * buffer, const size_t required-length );
TP1/Message Queue - Access文字属性を設定します。
● void setNextManagedObject( const ImqObject * object = 0 );
next managed objectを設定します。
● void setPreviousManagedObject( const ImqObject * object = 0 );
previous managed objectを設定します。
オブジェクト属性(protected)
● MQHOBJ ohobj
TP1/Message Queue - Accessオブジェクトハンドルです。open statusがTRUEである場合にだけ有効です。
● MQOD omqod
組み込みMQOD構造体です。
その他の関連クラス
理由コード
理由コードの詳細については,「付録A 理由コード」,またはマニュアル「TP1/Message Queue プログラム作成リファレンス」を参照してください。
All Rights Reserved. Copyright (C) 2006, 2007, Hitachi, Ltd.
(C) Copyright International Business Machines Corporation 1994, 1999. All rights reserved.