Czytanie z kolejki

Autor: Marcin Kasiński
21.01.2011 13:24:00 +0200

Parametry te są opisane w klasie MQC. Najciekawsze z nich to:

  • MQC.MQGMO_FAIL_IF_QUIESCINGParametr ten oznacza, że jeśli menadżer kolejek w czasie zapisu do kolejki będzie w trakcie zatrzymywania, to do aplikacji zostanie zwrócony błąd
  • MQC.MQGMO_WAITParametr określa, że pobieranie komunikatu z koleki bedzie operacją blokującą. Okres oczekiwania określony jest w parametrem waitInterval klasy MQGetMessageOptions.
  • MQC.MQGMO_NO_WAITParametr określa, że pobieranie komunikatu z koleki nie bedzie operacją blokującą
  • MQC.MQGMO_SYNCPOINT_IF_PERSISTENT
  • MQC.MQGMO_SYNCPOINT
  • MQC.MQGMO_NO_SYNCPOINT
  • MQC.MQGMO_BROWSE_FIRST
  • MQC.MQGMO_BROWSE_NEXT
  • MQC.MQGMO_BROWSE_MSG_UNDER_CURSOR
  • MQC.MQGMO_MSG_UNDER_CURSOR
  • MQC.MQGMO_LOCK
  • MQC.MQGMO_UNLOCK
  • MQC.MQGMO_ACCEPT_TRUNCATED_MSG
  • MQC.MQGMO_CONVERT
  • MQC.MQGMO_LOGICAL_ORDER
  • MQC.MQGMO_COMPLETE_MESSAGE
  • MQC.MQGMO_ALL_MSGS_AVAILABLE
  • MQC.MQGMO_ALL_SEGMENTS_AVAILABLE

Przykład kodu odczytującego komunikat z kolejki może mieć postać:

...


MQGetMessageOptions gmo = new MQGetMessageOptions();


gmo.options = MQC.MQGMO_FAIL_IF_QUIESCING | 
MQC.MQGMO_WAIT | MQC.MQGMO_CONVERT;


//gmo.waitInterval=MQC.MQWI_UNLIMITED;


gmo.waitInterval = 10000;


MQMessage retrievedMessage = new MQMessage();


retrievedMessage.characterSet = this.CCSID;


queueIN.get(retrievedMessage, gmo);


String data = retrievedMessage.readString(
responseMessage.getDataLength());

powrót
Zachęcam do przedstawienia swoich uwag i opinii w polu komentarzy.

Komentarze

Dodaj Komentarz