debugMsg.append(", createOrAttach: ").append(options.getCreateOrAttach())
.append(", messageBound: ").append(options.getMessageBound());
}
logger.debug(debugMsg.toString());
}
PubSubData pubSubData = new PubSubData(topic, null, subscriberId, operationType, options, null, null);
synchronized (pubSubData) {
PubSubCallback pubSubCallback = new PubSubCallback(pubSubData);
asyncSubUnsub(topic, subscriberId, pubSubCallback, null, operationType, options);
try {
while (!pubSubData.isDone)
pubSubData.wait();
} catch (InterruptedException e) {
throw new ServiceDownException("Interrupted Exception while waiting for async subUnsub call");
}
// Check from the PubSubCallback if it was successful or not.
if (!pubSubCallback.getIsCallSuccessful()) {