    001package org.opengion.fukurou.queue;
    002
    003import javax.jms.MessageListener;
    004
    005/**
    006 * キュー受信クラス用インタフェース
    007 * キュー受信処理のインタフェースです。
    008 * MQとSQSのメッセージ受信に対応しています。
    009 *
    010 * @og.group メッセージ連携
    011 *
    012 * @og.rev 5.10.15.2 (2019/09/20) 新規作成
    013 *
    014 * @version 5
    015 * @author oota
    016 * @since JDK7
    017 */
    018public interface QueueReceive {
    019
    020        /**
    021         * 接続処理
    022         * メッセージキューサーバに接続します。
    023         *
    024         *  @param jmsServer jsmサーバ
    025         *  @param sqsAccessKey sqs用awsアクセスキー
    026         *  @param sqsSecretKey sqs用awsシークレットキー
    027         */
    028        public void connect(final String jmsServer, final String sqsAccessKey, final String sqsSecretKey);
    029
    030        /**
    031         * 受信処理
    032         * 受信処理を行います。
    033         *
    034         * @param queueName キュー名
    035         */
    036        public QueueInfo receive(final String queueName);
    037
    038        /**
    039         * リスナーの設定
    040         * 指定キュー名に対して、
    041         * メッセージキュー受信時に処理を行う、
    042         * メッセージリスナーを設定します。
    043         *
    044         * @param queueName キュー名
    045         * @param listener メッセージリスナー
    046         */
    047        public void setListener(final String queueName, MessageListener listener);
    048
    049        /**
    050         * リスナーの終了
    051         * リスナーの終了処理を行います。
    052         */
    053        public void closeListener();
    054
    055        /**
    056         * クローズ処理
    057         * MQ:受信リスナーの解除。
    058         * SQS:クローズ処理はありません。
    059         */
    060        public void close();
    061
    062        /**
    063         * バッチフラグの設定
    064         * バッチ処理として行う用の、
    065         * バッチフラグを設定します。
    066         *
    067         * @param batchFlg バッチフラグ
    068         */
    069        public void setBatchFlg(final Boolean batchFlg);
    070}