Interface Broker

    • Method Detail

      • getAdaptor

        Broker getAdaptor​(Class<?> type)
        Get a Broker from the Broker Stack that is a particular class
        Parameters:
        type -
        Returns:
        a Broker instance.
      • getBrokerId

        org.apache.activemq.command.BrokerId getBrokerId()
        Get the id of the broker
      • getBrokerName

        String getBrokerName()
        Get the name of the broker
      • addBroker

        void addBroker​(Connection connection,
                       org.apache.activemq.command.BrokerInfo info)
        A remote Broker connects
      • removeBroker

        void removeBroker​(Connection connection,
                          org.apache.activemq.command.BrokerInfo info)
        Remove a BrokerInfo
        Parameters:
        connection -
        info -
      • addConnection

        void addConnection​(ConnectionContext context,
                           org.apache.activemq.command.ConnectionInfo info)
                    throws Exception
        A client is establishing a connection with the broker.
        Throws:
        Exception - TODO
      • removeConnection

        void removeConnection​(ConnectionContext context,
                              org.apache.activemq.command.ConnectionInfo info,
                              Throwable error)
                       throws Exception
        A client is disconnecting from the broker.
        Parameters:
        context - the environment the operation is being executed under.
        info -
        error - null if the client requested the disconnect or the error that caused the client to disconnect.
        Throws:
        Exception - TODO
      • addSession

        void addSession​(ConnectionContext context,
                        org.apache.activemq.command.SessionInfo info)
                 throws Exception
        Adds a session.
        Parameters:
        context -
        info -
        Throws:
        Exception - TODO
      • removeSession

        void removeSession​(ConnectionContext context,
                           org.apache.activemq.command.SessionInfo info)
                    throws Exception
        Removes a session.
        Parameters:
        context -
        info -
        Throws:
        Exception - TODO
      • addProducer

        void addProducer​(ConnectionContext context,
                         org.apache.activemq.command.ProducerInfo info)
                  throws Exception
        Adds a producer.
        Specified by:
        addProducer in interface Region
        Parameters:
        context - the environment the operation is being executed under.
        Throws:
        Exception - TODO
      • removeProducer

        void removeProducer​(ConnectionContext context,
                            org.apache.activemq.command.ProducerInfo info)
                     throws Exception
        Removes a producer.
        Specified by:
        removeProducer in interface Region
        Parameters:
        context - the environment the operation is being executed under.
        Throws:
        Exception - TODO
      • getDestinations

        org.apache.activemq.command.ActiveMQDestination[] getDestinations()
                                                                   throws Exception
        Returns:
        all destinations added to the Broker.
        Throws:
        Exception - TODO
      • getDestinationMap

        Map<org.apache.activemq.command.ActiveMQDestination,​Destination> getDestinationMap​(org.apache.activemq.command.ActiveMQDestination destination)
        return a reference destination map of a region based on the destination type
        Parameters:
        destination -
        Returns:
        destination Map
      • getPreparedTransactions

        org.apache.activemq.command.TransactionId[] getPreparedTransactions​(ConnectionContext context)
                                                                     throws Exception
        Gets a list of all the prepared xa transactions.
        Parameters:
        context - transaction ids
        Returns:
        array of TransactionId values
        Throws:
        Exception - TODO
      • beginTransaction

        void beginTransaction​(ConnectionContext context,
                              org.apache.activemq.command.TransactionId xid)
                       throws Exception
        Starts a transaction.
        Parameters:
        context -
        xid -
        Throws:
        Exception - TODO
      • prepareTransaction

        int prepareTransaction​(ConnectionContext context,
                               org.apache.activemq.command.TransactionId xid)
                        throws Exception
        Prepares a transaction. Only valid for xa transactions.
        Parameters:
        context -
        xid -
        Returns:
        id
        Throws:
        Exception - TODO
      • rollbackTransaction

        void rollbackTransaction​(ConnectionContext context,
                                 org.apache.activemq.command.TransactionId xid)
                          throws Exception
        Rollsback a transaction.
        Parameters:
        context -
        xid -
        Throws:
        Exception - TODO
      • commitTransaction

        void commitTransaction​(ConnectionContext context,
                               org.apache.activemq.command.TransactionId xid,
                               boolean onePhase)
                        throws Exception
        Commits a transaction.
        Parameters:
        context -
        xid -
        onePhase -
        Throws:
        Exception - TODO
      • forgetTransaction

        void forgetTransaction​(ConnectionContext context,
                               org.apache.activemq.command.TransactionId transactionId)
                        throws Exception
        Forgets a transaction.
        Parameters:
        context -
        transactionId -
        Throws:
        Exception
      • getPeerBrokerInfos

        org.apache.activemq.command.BrokerInfo[] getPeerBrokerInfos()
        Get the BrokerInfo's of any connected Brokers
        Returns:
        array of peer BrokerInfos
      • preProcessDispatch

        void preProcessDispatch​(org.apache.activemq.command.MessageDispatch messageDispatch)
        Notify the Broker that a dispatch is going to happen
        Parameters:
        messageDispatch -
      • postProcessDispatch

        void postProcessDispatch​(org.apache.activemq.command.MessageDispatch messageDispatch)
        Notify the Broker that a dispatch has happened
        Parameters:
        messageDispatch -
      • isStopped

        boolean isStopped()
        Returns:
        true if the broker has stopped
      • getDurableDestinations

        Set<org.apache.activemq.command.ActiveMQDestination> getDurableDestinations()
        Returns:
        a Set of all durable destinations
      • addDestinationInfo

        void addDestinationInfo​(ConnectionContext context,
                                org.apache.activemq.command.DestinationInfo info)
                         throws Exception
        Add and process a DestinationInfo object
        Parameters:
        context -
        info -
        Throws:
        Exception
      • removeDestinationInfo

        void removeDestinationInfo​(ConnectionContext context,
                                   org.apache.activemq.command.DestinationInfo info)
                            throws Exception
        Remove and process a DestinationInfo object
        Parameters:
        context -
        info -
        Throws:
        Exception
      • isFaultTolerantConfiguration

        boolean isFaultTolerantConfiguration()
        Returns:
        true if fault tolerant
      • getAdminConnectionContext

        ConnectionContext getAdminConnectionContext()
        Returns:
        the connection context used to make administration operations on startup or via JMX MBeans
      • setAdminConnectionContext

        void setAdminConnectionContext​(ConnectionContext adminConnectionContext)
        Sets the default administration connection context used when configuring the broker on startup or via JMX
        Parameters:
        adminConnectionContext -
      • getTempDataStore

        PListStore getTempDataStore()
        Returns:
        the temp data store
      • getVmConnectorURI

        URI getVmConnectorURI()
        Returns:
        the URI that can be used to connect to the local Broker
      • brokerServiceStarted

        void brokerServiceStarted()
        called when the brokerService starts
      • getBrokerService

        BrokerService getBrokerService()
        Returns:
        the BrokerService
      • getRoot

        Broker getRoot()
        Ensure we get the Broker at the top of the Stack
        Returns:
        the broker at the top of the Stack
      • isExpired

        boolean isExpired​(org.apache.activemq.broker.region.MessageReference messageReference)
        Determine if a message has expired -allows default behaviour to be overriden - as the timestamp set by the producer can be out of sync with the broker
        Parameters:
        messageReference -
        Returns:
        true if the message is expired
      • messageExpired

        void messageExpired​(ConnectionContext context,
                            org.apache.activemq.broker.region.MessageReference messageReference,
                            Subscription subscription)
        A Message has Expired
        Parameters:
        context -
        messageReference -
        subscription - (may be null)
      • sendToDeadLetterQueue

        boolean sendToDeadLetterQueue​(ConnectionContext context,
                                      org.apache.activemq.broker.region.MessageReference messageReference,
                                      Subscription subscription,
                                      Throwable poisonCause)
        A message needs to go the a DLQ
        Parameters:
        context -
        messageReference -
        poisonCause - reason for dlq submission, may be null
        Returns:
        true if Message was placed in a DLQ false if discarded.
      • getBrokerSequenceId

        long getBrokerSequenceId()
        Returns:
        the broker sequence id
      • messageConsumed

        void messageConsumed​(ConnectionContext context,
                             org.apache.activemq.broker.region.MessageReference messageReference)
        called when message is consumed
        Parameters:
        context -
        messageReference -
      • messageDelivered

        void messageDelivered​(ConnectionContext context,
                              org.apache.activemq.broker.region.MessageReference messageReference)
        Called when message is delivered to the broker
        Parameters:
        context -
        messageReference -
      • messageDiscarded

        void messageDiscarded​(ConnectionContext context,
                              Subscription sub,
                              org.apache.activemq.broker.region.MessageReference messageReference)
        Called when a message is discarded - e.g. running low on memory This will happen only if the policy is enabled - e.g. non durable topics
        Parameters:
        context -
        sub -
        messageReference -
      • fastProducer

        void fastProducer​(ConnectionContext context,
                          org.apache.activemq.command.ProducerInfo producerInfo,
                          org.apache.activemq.command.ActiveMQDestination destination)
        Called to notify a producer is too fast
        Parameters:
        context -
        producerInfo -
        destination -
      • isFull

        void isFull​(ConnectionContext context,
                    Destination destination,
                    org.apache.activemq.usage.Usage<?> usage)
        Called when a Usage reaches a limit
        Parameters:
        context -
        destination -
        usage -
      • nowMasterBroker

        void nowMasterBroker()
        called when the broker becomes the master in a master/slave configuration
      • getScheduler

        org.apache.activemq.thread.Scheduler getScheduler()
      • networkBridgeStarted

        void networkBridgeStarted​(org.apache.activemq.command.BrokerInfo brokerInfo,
                                  boolean createdByDuplex,
                                  String remoteIp)
      • networkBridgeStopped

        void networkBridgeStopped​(org.apache.activemq.command.BrokerInfo brokerInfo)