8.3.5 hrmchgque(転送キューの属性変更)
- 〈この項の構成〉
(1) 形式
hrmchgque 〔-n 最大メッセージ数〕 〔-c キャッシュメッセージ数〕 〔-e メッセージ有効期間〕 〔-a あて先名〕 〔-v 転送先キュー名|-y〕 〔-i {normal|compatible}〕 〔-j {exactly_once|in_order}〕 〔-g 通信層のグループ有効期間〕 〔-s 通信層のメッセージ有効期間〕 〔-x 表示名〕 〔-S システム名〕 キュー名
(2) 機能
作成済みの転送キューの属性を変更します。
(3) オプション
- -n 最大メッセージ数
-
〜<数字>((1〜65535))
転送キューに格納するメッセージの最大数を指定します。
- -c キャッシュメッセージ数
-
〜<数字>((0〜65535))
キャッシュに格納するメッセージの数を指定します。
- -e メッセージ有効期間
-
〜<数字>((1〜2592000))(単位:秒)
転送キューに格納するメッセージの有効期間を指定します。
有効期間を指定するときのメッセージの処理については,「2.3.5 メッセージの有効期間」を参照してください。
- -a あて先名
-
〜<1〜32文字の文字列>
メッセージを転送するあて先のあて先名を指定します。hrmmkaddrコマンドで,事前にあて先名を登録する必要があります。登録されていないあて先名を指定するとエラーが発生します。
- -v 転送先キュー名
-
〜<1〜20文字の識別子>
メッセージを転送する場合,転送したメッセージを登録する転送キューのキュー名を指定します。転送キューの詳細については,「8.3.20 hrmmkque(転送キューの作成)」を参照してください。
- -y
-
-vオプションを省略して,-aオプションで指定したあて先名に対応するあて先アドレスだけを送信アドレスとする場合に指定します。転送キューの詳細については,「8.3.20 hrmmkque(転送キューの作成)」を参照してください。
- -i {normal|compatible}
-
作成するキューの転送モードを指定します。
-
normal:通常モード
-
compatible:互換モード
転送先のReliable Messagingのバージョンが01-03以降の場合はnormalを指定します。バージョンが01-02以前の場合はcompatibleを指定します。
normalを指定して作成した転送キューを使用して,01-02以前のReliable Messagingにメッセージを転送した場合,ペイロードが空のメッセージとして受信されることがありますので,注意してください。
-
- -j {exactly_once|in_order}
-
転送に使用するQoS(通信品質)の種別を指定します。
-
exactly_once:配送保証および重複防止
-
in_order:順序保証
このオプションをin_orderに変更する場合,キューモードは永続キューだけ有効となります。それ以外を指定した場合はエラーが発生します。
-
- -g 通信層のグループ有効期間
-
〜<数字>((10〜2592000))(単位:秒)
通信層のグループの有効期間を指定します。
転送キューの詳細については,「8.3.20 hrmmkque(転送キューの作成)」を参照してください。
- -s 通信層のメッセージ有効期間
-
〜<数字>((10〜2592000))(単位:秒)
通信層のメッセージの有効期間を指定します。
転送キューの詳細については,「8.3.20 hrmmkque(転送キューの作成)」を参照してください。
- -x 表示名
-
〜<1〜64文字の英数字および_(アンダースコア)>
キューの表示名を指定します。表示名とは,アプリケーションがJNDIネーミングサービスからキューを取得するときの,キューの論理名のことです。
指定を省略した場合はコマンド引数で指定したキュー名と同じ名称を指定したものとみなされます。
指定した表示名と同じ名称を持つキューがすでに存在している場合,エラーとなります。詳細は「8.3.5(5) 注意事項」を参照してください。
- -S システム名
-
〜<先頭が英字の1〜3文字の大文字英字または数字>
コマンドの操作対象となるシステム名(RMSystemNameプロパティ指定値)を指定します。
指定を省略した場合は,HRM_SYSTEM_NAME環境変数に指定したシステム名が設定されます。HRM_SYSTEM_NAME環境変数にもシステム名が指定されていないときはエラーが発生します。
(4) コマンド引数
- キュー名
-
〜<1〜20文字の識別子>
属性を変更する転送キューの名前を指定します。
指定した転送キューがない場合はエラーが発生します。
(5) 注意事項
-
各オプションを省略する場合,その属性は変更されません。キュー名だけを指定した場合,属性は変更されないでそのままコマンド処理が終了します。
-
最大メッセージ数,キャッシュメッセージ数,メッセージ有効期間,あて先名,キューの転送モード,QoS,通信層のグループ有効期間,および通信層のメッセージ有効期間を変更できるのは,転送キューにメッセージがない場合だけです。メッセージがある場合はエラーが発生します。
-
転送先キュー名または-yオプションの指定内容は,次のうちどちらかの状態のときだけ変更できます。
-
キューにメッセージがない状態
-
キューに現存するメッセージが転送される前の状態
転送済みのメッセージが存在する場合はエラーが発生します。
-
-
Reliable Messaging初回開始時の管理状態の場合,または管理状態からの再開始後に実行状態に移行していない管理状態の場合だけ実行できます。それ以外の場合はエラーが発生します。ただし,Reliable Messaging起動直後の管理状態でも,相手システムが起動中の場合,エラーが発生するおそれがあります。
-
キュー定義ファイルを使用していない場合,変更前の表示名でJNDIネーミングサービスに登録されていたオブジェクトは削除され,-xオプションで指定した変更後の表示名でJNDIネーミングサービスに登録されます。このコマンド実行時に,アプリケーションがJNDIネーミングサービスから該当するキューに対応する値(javax.jms.Queue型のオブジェクト)を取得しているかどうかは,このコマンドの実行結果に影響しません。