public BridgeMsg receiveMessage() throws BridgeException {
try {
/* get MQ message */
MQMessage mqMsg = new MQMessage();
MQGetMessageOptions opt = new MQGetMessageOptions();
opt.options = MQC.MQGMO_SYNCPOINT | MQC.MQGMO_ALL_SEGMENTS_AVAILABLE | MQC.MQGMO_COMPLETE_MSG | MQC.MQGMO_WAIT;
opt.waitInterval = 4000; // this value should be smaller than what ChannelInstance.close allows for normal shutdown
log.debug("queue.get() start");
for (;;) {
synchronized (stopping) {