本文整理了Java中org.apache.activemq.command.Message.getRegionDestination()
方法的一些代码示例,展示了Message.getRegionDestination()
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Message.getRegionDestination()
方法的具体详情如下:
包路径:org.apache.activemq.command.Message
类名称:Message
方法名:getRegionDestination
暂无
代码示例来源:origin: apache/activemq
@Override
public Message.MessageDestination getRegionDestination() {
return message.getRegionDestination();
}
代码示例来源:origin: apache/activemq
@Override
public void addMessageFirst(MessageReference node) throws Exception {
// for keep durable subs active, need to deal with redispatch
if (node != null) {
Message msg = node.getMessage();
if (!msg.isPersistent()) {
nonPersistent.addMessageFirst(node);
} else {
Destination dest = (Destination) msg.getRegionDestination();
TopicStorePrefetch tsp = topics.get(dest);
if (tsp != null) {
tsp.addMessageFirst(node);
}
}
}
}
代码示例来源:origin: apache/activemq
if (getBrokerService().isEnableStatistics()) {
long totalTime = endTime - message.getBrokerInTime();
((Destination) message.getRegionDestination()).getDestinationStatistics().getProcessTime().addTime(totalTime);
if (((BaseDestination) message.getRegionDestination()).isPersistJMSRedelivered() && !message.isRedelivered()) {
final int originalValue = message.getRedeliveryCounter();
message.incrementRedeliveryCounter();
try {
if (message.isPersistent()) {
((BaseDestination) message.getRegionDestination()).getMessageStore().updateMessage(message);
代码示例来源:origin: apache/activemq
protected ActiveMQDestination createDestination(Message message,
String prefix,
String suffix,
boolean useQueue,
Subscription subscription ) {
String name = null;
Destination regionDestination = (Destination) message.getRegionDestination();
if (regionDestination != null
&& regionDestination.getActiveMQDestination() != null
&& regionDestination.getActiveMQDestination().getPhysicalName() != null
&& !regionDestination.getActiveMQDestination().getPhysicalName().isEmpty()){
name = prefix + regionDestination.getActiveMQDestination().getPhysicalName();
} else {
name = prefix + message.getDestination().getPhysicalName();
}
if (destinationPerDurableSubscriber && subscription instanceof DurableTopicSubscription) {
name += "." + ((DurableTopicSubscription)subscription).getSubscriptionKey();
}
if (suffix != null && !suffix.isEmpty()) {
name += suffix;
}
if (useQueue) {
return new ActiveMQQueue(name);
} else {
return new ActiveMQTopic(name);
}
}
代码示例来源:origin: apache/activemq
@Override
public synchronized boolean tryAddMessageLast(MessageReference node, long wait) throws Exception {
if (node != null) {
Message msg = node.getMessage();
if (isStarted()) {
if (!msg.isPersistent()) {
nonPersistent.tryAddMessageLast(node, wait);
}
}
if (msg.isPersistent()) {
Destination dest = (Destination) msg.getRegionDestination();
TopicStorePrefetch tsp = topics.get(dest);
if (tsp != null) {
tsp.addMessageLast(node);
if (prioritizedMessages && immediatePriorityDispatch && tsp.isPaging()) {
if (msg.getPriority() > tsp.getLastRecoveredPriority()) {
tsp.recoverMessage(node.getMessage(), true);
LOG.trace("cached high priority ({} message: {}, current paged batch priority: {}, cache size: {}", new Object[]{ msg.getPriority(), msg.getMessageId(), tsp.getLastRecoveredPriority(), tsp.batchList.size()});
}
}
}
}
}
return true;
}
代码示例来源: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
@Override
public boolean sendToDeadLetterQueue(ConnectionContext context, MessageReference messageReference,
Subscription subscription, Throwable poisonCause) {
boolean wasDLQd = super.sendToDeadLetterQueue(context, messageReference, subscription, poisonCause);
if (wasDLQd) {
try {
if (!messageReference.isAdvisory()) {
BaseDestination baseDestination = (BaseDestination) messageReference.getMessage().getRegionDestination();
ActiveMQTopic topic = AdvisorySupport.getMessageDLQdAdvisoryTopic(baseDestination.getActiveMQDestination());
Message payload = messageReference.getMessage().copy();
if (!baseDestination.isIncludeBodyForAdvisory()) {
payload.clearBody();
}
fireAdvisory(context, topic, payload);
}
} catch (Exception e) {
handleFireFailure("add to DLQ", e);
}
}
return wasDLQd;
}
代码示例来源:origin: apache/activemq
@Override
public void messageExpired(ConnectionContext context, MessageReference messageReference, Subscription subscription) {
super.messageExpired(context, messageReference, subscription);
try {
if (!messageReference.isAdvisory()) {
BaseDestination baseDestination = (BaseDestination) messageReference.getMessage().getRegionDestination();
ActiveMQTopic topic = AdvisorySupport.getExpiredMessageTopic(baseDestination.getActiveMQDestination());
Message payload = messageReference.getMessage().copy();
if (!baseDestination.isIncludeBodyForAdvisory()) {
payload.clearBody();
}
ActiveMQMessage advisoryMessage = new ActiveMQMessage();
advisoryMessage.setStringProperty(AdvisorySupport.MSG_PROPERTY_MESSAGE_ID, payload.getMessageId().toString());
fireAdvisory(context, topic, payload, null, advisoryMessage);
}
} catch (Exception e) {
handleFireFailure("expired", e);
}
}
代码示例来源:origin: apache/activemq
if (!node.isExpired()) {
try {
regionDestination = (Destination) node.getMessage().getRegionDestination();
if (isDiskListEmpty()) {
if (hasSpace() || this.store == null) {
代码示例来源:origin: apache/activemq
@Override
public void messageConsumed(ConnectionContext context, MessageReference messageReference) {
super.messageConsumed(context, messageReference);
try {
if (!messageReference.isAdvisory()) {
BaseDestination baseDestination = (BaseDestination) messageReference.getMessage().getRegionDestination();
ActiveMQTopic topic = AdvisorySupport.getMessageConsumedAdvisoryTopic(baseDestination.getActiveMQDestination());
Message payload = messageReference.getMessage().copy();
if (!baseDestination.isIncludeBodyForAdvisory()) {
payload.clearBody();
}
ActiveMQMessage advisoryMessage = new ActiveMQMessage();
advisoryMessage.setStringProperty(AdvisorySupport.MSG_PROPERTY_MESSAGE_ID, payload.getMessageId().toString());
advisoryMessage.setStringProperty(AdvisorySupport.MSG_PROPERTY_DESTINATION, baseDestination.getActiveMQDestination().getQualifiedName());
fireAdvisory(context, topic, payload, null, advisoryMessage);
}
} catch (Exception e) {
handleFireFailure("consumed", e);
}
}
代码示例来源:origin: apache/activemq
if (!node.isExpired()) {
try {
regionDestination = (Destination) node.getMessage().getRegionDestination();
if (isDiskListEmpty()) {
if (hasSpace()) {
代码示例来源:origin: apache/activemq
@Override
public void messageDelivered(ConnectionContext context, MessageReference messageReference) {
super.messageDelivered(context, messageReference);
try {
if (!messageReference.isAdvisory()) {
BaseDestination baseDestination = (BaseDestination) messageReference.getMessage().getRegionDestination();
ActiveMQTopic topic = AdvisorySupport.getMessageDeliveredAdvisoryTopic(baseDestination.getActiveMQDestination());
Message payload = messageReference.getMessage().copy();
if (!baseDestination.isIncludeBodyForAdvisory()) {
payload.clearBody();
}
ActiveMQMessage advisoryMessage = new ActiveMQMessage();
advisoryMessage.setStringProperty(AdvisorySupport.MSG_PROPERTY_MESSAGE_ID, payload.getMessageId().toString());
advisoryMessage.setStringProperty(AdvisorySupport.MSG_PROPERTY_DESTINATION, baseDestination.getActiveMQDestination().getQualifiedName());
fireAdvisory(context, topic, payload, null, advisoryMessage);
}
} catch (Exception e) {
handleFireFailure("delivered", e);
}
}
代码示例来源:origin: apache/activemq
@Override
public void messageDiscarded(ConnectionContext context, Subscription sub, MessageReference messageReference) {
super.messageDiscarded(context, sub, messageReference);
try {
if (!messageReference.isAdvisory()) {
BaseDestination baseDestination = (BaseDestination) messageReference.getMessage().getRegionDestination();
ActiveMQTopic topic = AdvisorySupport.getMessageDiscardedAdvisoryTopic(baseDestination.getActiveMQDestination());
Message payload = messageReference.getMessage().copy();
if (!baseDestination.isIncludeBodyForAdvisory()) {
payload.clearBody();
}
ActiveMQMessage advisoryMessage = new ActiveMQMessage();
if (sub instanceof TopicSubscription) {
advisoryMessage.setIntProperty(AdvisorySupport.MSG_PROPERTY_DISCARDED_COUNT, ((TopicSubscription) sub).discarded());
}
advisoryMessage.setStringProperty(AdvisorySupport.MSG_PROPERTY_MESSAGE_ID, payload.getMessageId().toString());
advisoryMessage.setStringProperty(AdvisorySupport.MSG_PROPERTY_CONSUMER_ID, sub.getConsumerInfo().getConsumerId().toString());
advisoryMessage.setStringProperty(AdvisorySupport.MSG_PROPERTY_DESTINATION, baseDestination.getActiveMQDestination().getQualifiedName());
fireAdvisory(context, topic, payload, null, advisoryMessage);
}
} catch (Exception e) {
handleFireFailure("discarded", e);
}
}
代码示例来源:origin: org.apache.activemq/activemq-broker
@Override
public Message.MessageDestination getRegionDestination() {
return message.getRegionDestination();
}
代码示例来源:origin: org.apache.activemq/activemq-all
@Override
public Message.MessageDestination getRegionDestination() {
return message.getRegionDestination();
}
代码示例来源:origin: org.apache.activemq/activemq-osgi
@Override
public Message.MessageDestination getRegionDestination() {
return message.getRegionDestination();
}
代码示例来源:origin: pierre/meteo
public Destination getRegionDestination() {
return message.getRegionDestination();
}
代码示例来源:origin: org.apache.activemq/activemq-broker
@Override
public void addMessageFirst(MessageReference node) throws Exception {
// for keep durable subs active, need to deal with redispatch
if (node != null) {
Message msg = node.getMessage();
if (!msg.isPersistent()) {
nonPersistent.addMessageFirst(node);
} else {
Destination dest = (Destination) msg.getRegionDestination();
TopicStorePrefetch tsp = topics.get(dest);
if (tsp != null) {
tsp.addMessageFirst(node);
}
}
}
}
代码示例来源:origin: org.apache.activemq/activemq-all
@Override
public void addMessageFirst(MessageReference node) throws Exception {
// for keep durable subs active, need to deal with redispatch
if (node != null) {
Message msg = node.getMessage();
if (!msg.isPersistent()) {
nonPersistent.addMessageFirst(node);
} else {
Destination dest = (Destination) msg.getRegionDestination();
TopicStorePrefetch tsp = topics.get(dest);
if (tsp != null) {
tsp.addMessageFirst(node);
}
}
}
}
代码示例来源:origin: pierre/meteo
@Override
public void preProcessDispatch(MessageDispatch messageDispatch) {
Message message = messageDispatch.getMessage();
if (message != null) {
long endTime = System.currentTimeMillis();
message.setBrokerOutTime(endTime);
if (getBrokerService().isEnableStatistics()) {
long totalTime = endTime - message.getBrokerInTime();
message.getRegionDestination().getDestinationStatistics().getProcessTime().addTime(totalTime);
}
}
}
内容来源于网络,如有侵权,请联系作者删除!