メッセージキューイングアクセス機能 TP1/Message Queue - Access 使用の手引
ImqMessageクラス(C++)
このクラスは,MQMD構造体をカプセル化し,メッセージデータを構築および再構築します。
インクルードファイル
このクラスを使用するときは,imqmsg.hppファイルをインクルードしてください。
オブジェクト属性
● application id data
メッセージに関連づけられたID情報です。初期値は空白です。
MQMD構造体の,ApplIdentityDataフィールドに相当します。
● application origin data
メッセージに関連づけられた起点情報です。初期値は空白です。
MQMD構造体の,ApplOriginDataフィールドに相当します。
● backout count
メッセージが試験的に取り出され,次にロールバックされた回数です。属性は読み取り専用です。初期値は0です。
MQMD構造体の,BackoutCountフィールドに相当します。
● character set
コード化文字セットIDです。初期値はMQCCSI_Q_MGRです。
MQMD構造体の,CodedCharSetIdフィールドに相当します。
● encoding
メッセージデータのマシン符号化です。初期値はMQENC_NATIVEです。
MQMD構造体の,Encodingフィールドに相当します。
● expiry
TP1/Message Queue - Accessが未検索メッセージを破棄する前に保存する期間を制御する時間,依存の数量です。初期値はMQEI_UNLIMITEDです。
MQMD構造体の,Expiryフィールドに相当します。
● format
バッファ内のデータのレイアウトを記述する形式(テンプレート)の名前です。9文字以上の名前は,8文字に切り捨てられます。名前は,8文字の長さまで空白で埋められます。初期値はMQFMT_NONEです。
MQMD構造体の,Formatフィールドに相当します。
● message flags
分割制御情報です。初期値はMQMF_SEGMENTATION_INHIBITEDです。
MQMD構造体の,MsgFlagsフィールドに相当します。
● message type
メッセージの広範囲なカテゴリ化です。初期値はMQMT_DATAGRAMです。
MQMD構造体の,MsgTypeフィールドに相当します。
● offset
オフセット情報です。初期値は0です。
MQMD構造体の,Offsetフィールドに相当します。
● original length
分割されたメッセージの元の長さです。初期値はMQOL_UNDEFINEDです。
MQMD構造体の,OriginalLengthフィールドに相当します。
● persistence
該当するメッセージが重大であり,持続記憶域を使用して,常にバックアップを取っておく必要があることを示します。このオプションを利用すると,パフォーマンスが低下します。初期値はMQPER_PERSISTENCE_AS_Q_DEFです。
MQMD構造体の,Persistenceフィールドに相当します。
● priority
伝送および送達の相対優先順位です。同じ優先順位のメッセージは,通常,提供されたのと同じ順序で送達されます。ただし,これが確実に実行されるようにするには,満たさなければならない基準が幾つかあります。初期値はMQPRI_PRIORITY_AS_Q_DEFです。
MQMD構造体の,Priorityフィールドに相当します。
● put application name
メッセージを書き込むアプリケーションの名前です。初期値はヌル文字です。
MQMD構造体の,PutApplNameフィールドに相当します。
● put application type
メッセージを書き込むアプリケーションのタイプです。初期値はMQAT_NO_CONTEXTです。
MQMD構造体の,PutApplTypeフィールドに相当します。
● put date
メッセージが書き込まれた日付です。初期値は空白です。
MQMD構造体の,PutDateフィールドに相当します。
● put time
メッセージが書き込まれた時刻です。初期値は空白です。
MQMD構造体の,PutTimeフィールドに相当します。
● reply-to queue manager name
応答メッセージが送られるキューマネジャの名前です。初期値はヌル文字です。
MQMD構造体の,ReplyToQMgrフィールドに相当します。
● reply-to queue name
応答が送られるキューマネジャの名前です。初期値はヌル文字です。
MQMD構造体の,ReplyToQフィールドに相当します。
● report
メッセージと関連づけられているフィードバック情報です。初期値はMQRO_NONEです。
MQMD構造体の,Reportフィールドに相当します。
● sequence number
グループ内のメッセージを識別するシーケンス情報です。初期値は1です。
MQMD構造体の,MsgSeqNumberフィールドに相当します。
● total message length
メッセージを最後に読み取ろうとしたときに有効だったバイト数です。属性は読み取り専用で,初期値は0です。
最後のメッセージに切り捨てが発生した場合,または切り捨てが発生したために読み取りが行われなかった場合,この値はImqCacheクラスのmessage lengthより大きくなります。
● user id
メッセージと関連づけられているユーザIDです。初期値はヌル文字です。
MQMD構造体の,UserIdentifierフィールドに相当します。
コンストラクタ
● ImqMessage( );
デフォルトのコンストラクタです。
● ImqMessage( const ImqMessage & msg );
コピーコンストラクタです。詳細については,「メソッド」のoperatorの説明を参照してください。
メソッド
● void operator = ( const ImqMessage & msg );
msgからMQMD構造体,およびメッセージデータをコピーします。このオブジェクトのユーザによってバッファが提供されている場合は,コピーされるデータの量は使用できるバッファサイズまでに制限されます。そうでない場合は,システムは,必ず十分なサイズのバッファがコピーされたデータに使用できるようにします。
● ImqString applicationIdData( ) const ;
application id dataのコピーを返します。
● void setApplicationIdData( const char * data = 0 );
application id dataを設定します。
● ImqString applicationOriginData( ) const ;
application origin dataのコピーを返します。
● void setApplicationOriginData( const char * data = 0 );
application origin dataを設定します。
● MQLONG backoutCount( ) const ;
backout countを返します。
● MQLONG characterSet( ) const ;
character setを返します。
● void setCharacterSet( const MQLONG ccsid = MQCCSI_Q_MGR );
character setを設定します。
● MQLONG encoding( ) const ;
encodingを返します。
● void setEncoding( const MQLONG encoding = MQENC_NATIVE );
encodingを設定します。
● MQLONG expiry( ) const ;
expiryを返します。
● void setExpiry( const MQLONG expiry );
expiryを設定します。
● ImqString format( ) const ;
空白を含め,formatのコピーを返します。
● ImqBoolean formatIs( const char * format-to-test ) const ;
formatがformat-to-testと同じであれば,TRUEを返します。
● void setFormat( const char * name = 0 );
formatを設定し,空白で8文字までを埋めます。
● MQLONG messageFlags() const ;
message flagsを返します。
● void setMessageFlags( const MQLONG flags);
message flagsを設定します。
● MQLONG messageType( ) const ;
message typeを返します。
● void setMessageType( const MQLONG type );
message typeを設定します。
● MQLONG offset() const ;
offsetを返します。
● void setOffset( const MQLONG offset);
offsetを設定します。
● MQLONG originalLength() const ;
original lengthを返します。
● void setOriginalLength( const MQLONG length);
original lengthを設定します。
● MQLONG persistence( ) const ;
persistenceを返します。
● void setPersistence( const MQLONG persistence );
persistenceを設定します。
● MQLONG priority( ) const ;
priorityを返します。
● void setPriority( const MQLONG priority );
priorityを設定します。
● ImqString putApplicationName( ) const ;
put application nameのコピーを返します。
● void setPutApplicationName( const char * name = 0 );
put application nameを設定します。
● MQLONG putApplicationType( ) const ;
put application typeを返します。
● void setPutApplicationType( const MQLONG type = MQAT_NO_CONTEXT );
put application typeを設定します。
● ImqString putDate( ) const ;
put dateのコピーを返します。
● void setPutDate( const char * date = 0 );
put dateを設定します。
● ImqString putTime( ) const ;
put timeのコピーを返します。
● void setPutTime( const char * time = 0 );
put timeを設定します。
● ImqBoolean readItem( ImqItem & item );
ImqItem pasteInメソッドを使用して,メッセージバッファからitemオブジェクトへ読み込みます。正常に実行された場合はTRUEを返します。
● ImqString replyToQueueManagerName( ) const ;
reply-to queue manager nameのコピーを返します。
● void setReplyToQueueManagerName( const char * name = 0 );
reply-to queue manager nameを設定します。
● ImqString replyToQueueName( ) const ;
reply-to queue nameのコピーを返します。
● void setReplyToQueueName( const char * name = 0 );
reply-to queue nameを設定します。
● MQLONG report( ) const ;
reportを返します。
● void setReport( const MQLONG report );
reportを設定します。
● MQLONG sequenceNumber() const ;
sequence numberを返します。
● void setSequenceNumber( const MQLONG number);
sequence numberを設定します。
● size_t totalMessageLength( ) const ;
total message lengthを返します。
● ImqString userId( ) const ;
user idのコピーを返します。
● void setUserId( const char * id = 0 );
user idを設定します。
● ImqBoolean writeItem( ImqItem & item );
ImqItem copyOutメソッドを使用して,itemオブジェクトからメッセージバッファへ書き込みます。書き込みは,挿入,置換,または付加の形態をとる場合がありますが,これはitemオブジェクトのクラスによって決まります。正常に実行された場合はTRUEを返します。
オブジェクト属性(protected)
● MQMD omqmd
MQMD構造体です。
その他の関連クラス
理由コード
理由コードの詳細については,「付録A 理由コード」を参照してください。
All Rights Reserved. Copyright (C) 2006, 2007, Hitachi, Ltd.
(C) Copyright International Business Machines Corporation 1994, 1999. All rights reserved.