Save This Page
Home » activemq-parent-5.3.1-source-release » org.apache » activemq » broker » util » [javadoc | source]
org.apache.activemq.broker.util
public class: TimeStampingBrokerPlugin [javadoc | source]
java.lang.Object
   org.apache.activemq.broker.MutableBrokerFilter
      org.apache.activemq.broker.BrokerPluginSupport
         org.apache.activemq.broker.util.TimeStampingBrokerPlugin

All Implemented Interfaces:
    BrokerPlugin, Broker

A Broker interceptor which updates a JMS Client's timestamp on the message with a broker timestamp. Useful when the clocks on client machines are known to not be correct and you can only trust the time set on the broker machines. Enabling this plugin will break JMS compliance since the timestamp that the producer sees on the messages after as send() will be different from the timestamp the consumer will observe when he receives the message. This plugin is not enabled in the default ActiveMQ configuration. 2 new attributes have been added which will allow the administrator some override control over the expiration time for incoming messages: Attribute 'zeroExpirationOverride' can be used to apply an expiration time to incoming messages with no expiration defined (messages that would never expire) Attribute 'ttlCeiling' can be used to apply a limit to the expiration time
Field Summary
 long zeroExpirationOverride    variable which (when non-zero) is used to override the expiration date for messages that arrive with no expiration date set (in Milliseconds). 
 long ttlCeiling    variable which (when non-zero) is used to limit the expiration date (in Milliseconds). 
 boolean futureOnly    If true, the plugin will not update timestamp to past values False by default 
Fields inherited from org.apache.activemq.broker.MutableBrokerFilter:
next
Method from org.apache.activemq.broker.util.TimeStampingBrokerPlugin Summary:
send,   setFutureOnly,   setTtlCeiling,   setZeroExpirationOverride
Methods from org.apache.activemq.broker.BrokerPluginSupport:
installPlugin
Methods from org.apache.activemq.broker.MutableBrokerFilter:
acknowledge,   addBroker,   addConnection,   addConsumer,   addDestination,   addDestinationInfo,   addProducer,   addSession,   beginTransaction,   brokerServiceStarted,   commitTransaction,   fastProducer,   forgetTransaction,   gc,   getAdaptor,   getAdminConnectionContext,   getBrokerId,   getBrokerName,   getBrokerSequenceId,   getBrokerService,   getClients,   getDestinationMap,   getDestinations,   getDestinations,   getDurableDestinations,   getNext,   getPeerBrokerInfos,   getPreparedTransactions,   getRoot,   getTempDataStore,   getVmConnectorURI,   isExpired,   isFaultTolerantConfiguration,   isFull,   isStopped,   messageConsumed,   messageDelivered,   messageDiscarded,   messageExpired,   messagePull,   nowMasterBroker,   postProcessDispatch,   preProcessDispatch,   prepareTransaction,   processDispatchNotification,   removeBroker,   removeConnection,   removeConsumer,   removeDestination,   removeDestinationInfo,   removeProducer,   removeSession,   removeSubscription,   rollbackTransaction,   send,   sendToDeadLetterQueue,   setAdminConnectionContext,   setNext,   slowConsumer,   start,   stop
Methods from java.lang.Object:
clone,   equals,   finalize,   getClass,   hashCode,   notify,   notifyAll,   toString,   wait,   wait,   wait
Method from org.apache.activemq.broker.util.TimeStampingBrokerPlugin Detail:
 public  void send(ProducerBrokerExchange producerExchange,
    Message message) throws Exception 
 public  void setFutureOnly(boolean futureOnly) 
 public  void setTtlCeiling(long ttlCeiling) 
    setter method for ttlCeiling
 public  void setZeroExpirationOverride(long ttl) 
    setter method for zeroExpirationOverride