本文整理了Java中org.apache.activemq.command.Message.setRegionDestination()
方法的一些代码示例,展示了Message.setRegionDestination()
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Message.setRegionDestination()
方法的具体详情如下:
包路径:org.apache.activemq.command.Message
类名称:Message
方法名:setRegionDestination
暂无
代码示例来源:origin: apache/activemq
Message loadMessage(MessageId messageId) throws IOException {
Message msg = null;
if (store != null) { // can be null for a temp q
msg = store.getMessage(messageId);
if (msg != null) {
msg.setRegionDestination(this);
}
}
return msg;
}
代码示例来源:origin: apache/activemq
@Override
public boolean recoverMessage(Message message) throws Exception {
message.setRegionDestination(Topic.this);
try {
msgContext.setMessageReference(message);
if (subscription.matches(message, msgContext)) {
subscription.add(message);
}
} catch (IOException e) {
LOG.error("Failed to recover this message {}", message, e);
}
return true;
}
代码示例来源:origin: apache/activemq
@Override
public synchronized LinkedList<MessageReference> pageInList(int maxItems) {
LinkedList<MessageReference> result = new LinkedList<MessageReference>();
int count = 0;
for (Iterator<MessageReference> i = memoryList.iterator(); i.hasNext() && count < maxItems;) {
MessageReference ref = i.next();
ref.incrementReferenceCount();
result.add(ref);
count++;
}
if (count < maxItems && !isDiskListEmpty()) {
for (Iterator<MessageReference> i = new DiskIterator(); i.hasNext() && count < maxItems;) {
Message message = (Message) i.next();
message.setRegionDestination(regionDestination);
message.setMemoryUsage(this.getSystemUsage().getMemoryUsage());
message.incrementReferenceCount();
result.add(message);
count++;
}
}
return result;
}
代码示例来源:origin: apache/activemq
@Override
public boolean recoverMessage(Message message) {
recoveredAccumulator++;
if ((recoveredAccumulator % 10000) == 0) {
LOG.info("cursor for {} has recovered {} messages. {}% complete", new Object[]{ getActiveMQDestination().getQualifiedName(), recoveredAccumulator, new Integer((int) (recoveredAccumulator * 100 / totalMessageCount))});
}
// Message could have expired while it was being
// loaded..
message.setRegionDestination(Queue.this);
if (message.isExpired() && broker.isExpired(message)) {
toExpire.add(message);
return true;
}
if (hasSpace()) {
messagesLock.writeLock().lock();
try {
try {
messages.addMessageLast(message);
} catch (Exception e) {
LOG.error("Failed to add message to cursor", e);
}
} finally {
messagesLock.writeLock().unlock();
}
destinationStatistics.getMessages().increment();
return true;
}
return false;
}
代码示例来源:origin: apache/activemq
@Override
public void duplicateFromStore(Message message, Subscription subscription) {
ConnectionContext connectionContext = createConnectionContext();
getLog().warn("{}{}, redirecting {} for dlq processing", DUPLICATE_FROM_STORE_MSG_PREFIX, destination, message.getMessageId());
Throwable cause = new Throwable(DUPLICATE_FROM_STORE_MSG_PREFIX + destination);
message.setRegionDestination(this);
broker.getRoot().sendToDeadLetterQueue(connectionContext, message, null, cause);
MessageAck messageAck = new MessageAck(message, MessageAck.POSION_ACK_TYPE, 1);
messageAck.setPoisonCause(cause);
try {
acknowledge(connectionContext, subscription, messageAck, message);
} catch (IOException e) {
getLog().error("Failed to acknowledge duplicate message {} from {} with {}", message.getMessageId(), destination, messageAck);
}
}
代码示例来源:origin: apache/activemq
for (DurableTopicSubscription sub : durableSubscribers.values()) {
if (!sub.isActive()) {
message.setRegionDestination(this);
messageExpired(connectionContext, sub, message);
代码示例来源:origin: apache/activemq
/**
* @return the next pending message
*/
@Override
public synchronized MessageReference next() {
MessageReference reference = iter.next();
last = reference;
if (!isDiskListEmpty()) {
// got from disk
reference.getMessage().setRegionDestination(regionDestination);
reference.getMessage().setMemoryUsage(this.getSystemUsage().getMemoryUsage());
}
reference.incrementReferenceCount();
return reference;
}
代码示例来源:origin: apache/activemq
private boolean isDestinationDLQ(Message message) {
DeadLetterStrategy deadLetterStrategy;
Message tmp;
Destination regionDestination = (Destination) message.getRegionDestination();
if (message != null && regionDestination != null) {
deadLetterStrategy = regionDestination.getDeadLetterStrategy();
if (deadLetterStrategy != null && message.getOriginalDestination() != null) {
// Cheap copy, since we only need two fields
tmp = new ActiveMQMessage();
tmp.setDestination(message.getOriginalDestination());
tmp.setRegionDestination(regionDestination);
// Determine if we are headed for a DLQ
ActiveMQDestination deadLetterDestination = deadLetterStrategy.getDeadLetterQueueFor(tmp, null);
if (deadLetterDestination.equals(message.getDestination())) {
return true;
}
}
}
return false;
}
}
代码示例来源:origin: apache/activemq
public synchronized boolean recoverMessage(Message message, boolean cached) throws Exception {
boolean recovered = false;
message.setRegionDestination(regionDestination);
if (recordUniqueId(message.getMessageId())) {
if (!cached) {
代码示例来源:origin: apache/activemq
regionDest = getBaseDestination((Destination) regionBroker.getDestinations(newDestination).toArray()[0]);
copy.setRegionDestination(regionDest);
sub.addRecoveredMessage(context, newDestination.isQueue() ? new IndirectMessageReference(copy) : copy);
代码示例来源:origin: apache/activemq
&& !context.isInRecoveryMode();
message.setRegionDestination(this);
代码示例来源:origin: apache/activemq
message.setRegionDestination(this);
ProducerState state = producerExchange.getProducerState();
if (state == null) {
代码示例来源:origin: org.apache.activemq/activemq-broker
Message loadMessage(MessageId messageId) throws IOException {
Message msg = null;
if (store != null) { // can be null for a temp q
msg = store.getMessage(messageId);
if (msg != null) {
msg.setRegionDestination(this);
}
}
return msg;
}
代码示例来源:origin: org.apache.activemq/activemq-all
Message loadMessage(MessageId messageId) throws IOException {
Message msg = null;
if (store != null) { // can be null for a temp q
msg = store.getMessage(messageId);
if (msg != null) {
msg.setRegionDestination(this);
}
}
return msg;
}
代码示例来源:origin: pierre/meteo
Message loadMessage(MessageId messageId) throws IOException {
Message msg = null;
if (store != null) { // can be null for a temp q
msg = store.getMessage(messageId);
if (msg != null) {
msg.setRegionDestination(this);
}
}
return msg;
}
代码示例来源:origin: org.apache.activemq/activemq-osgi
Message loadMessage(MessageId messageId) throws IOException {
Message msg = null;
if (store != null) { // can be null for a temp q
msg = store.getMessage(messageId);
if (msg != null) {
msg.setRegionDestination(this);
}
}
return msg;
}
代码示例来源:origin: org.apache.activemq/activemq-broker
@Override
public boolean recoverMessage(Message message) throws Exception {
message.setRegionDestination(Topic.this);
try {
msgContext.setMessageReference(message);
if (subscription.matches(message, msgContext)) {
subscription.add(message);
}
} catch (IOException e) {
LOG.error("Failed to recover this message {}", message, e);
}
return true;
}
代码示例来源:origin: pierre/meteo
public boolean recoverMessage(Message message) throws Exception {
message.setRegionDestination(Topic.this);
try {
msgContext.setMessageReference(message);
if (subscription.matches(message, msgContext)) {
subscription.add(message);
}
} catch (IOException e) {
LOG.error("Failed to recover this message " + message);
}
return true;
}
代码示例来源:origin: org.apache.activemq/activemq-all
@Override
public boolean recoverMessage(Message message) throws Exception {
message.setRegionDestination(Topic.this);
try {
msgContext.setMessageReference(message);
if (subscription.matches(message, msgContext)) {
subscription.add(message);
}
} catch (IOException e) {
LOG.error("Failed to recover this message {}", message, e);
}
return true;
}
代码示例来源:origin: org.apache.activemq/activemq-osgi
@Override
public boolean recoverMessage(Message message) throws Exception {
message.setRegionDestination(Topic.this);
try {
msgContext.setMessageReference(message);
if (subscription.matches(message, msgContext)) {
subscription.add(message);
}
} catch (IOException e) {
LOG.error("Failed to recover this message {}", message, e);
}
return true;
}
内容来源于网络,如有侵权,请联系作者删除!