API gcloud-java pubsub: как установить флаг "Немедленно вернуться"
Использование API-интерфейса gcloud-java pubsub 0.2.6 - как я могу установить флаг "Немедленно возвращать" в значение ИСТИНА при получении подписки?
2 ответа
Для возврата по умолчанию флаг "немедленно вернуться" по умолчанию установлен в API-интерфейсе gcloud-java pubsub. В настоящее время нет возможности установить флаг, хотя эта конкретная библиотека находится в альфа-режиме, так что это может измениться.
(Предостережение: я являюсь частью gcloud-java
команда)
gcloud-java
предоставляет три способа извлечения сообщений:
Future<Iterator<ReceivedMessage>> pullAsync(String subscription, int maxMessages);
Iterator<ReceivedMessage> pull(String subscription, int maxMessages);
MessageConsumer pullAsync(String subscription, MessageProcessor callback, PullOption... options);
Первые два метода по умолчанию устанавливают для флага "немедленно вернуться" значение true.
Напротив, последний метод, который обрабатывает непрерывное извлечение от имени пользователя, всегда устанавливает флаг "немедленно вернуть" в значение false. Пример использования может быть следующим
MessageProcessor messageProcessor = new MessageProcessor() {
@Override
public void process(Message message) throws Exception {
// handle message
}
};
MessageConsumer consumer = pubsub.pullAsync(subscription, messageProcessor);
// close the consumer to stop pulling
consumer.close();