Class QueryBasedSubscriptionRecoveryPolicy
- java.lang.Object
-
- org.apache.activemq.broker.region.policy.QueryBasedSubscriptionRecoveryPolicy
-
- All Implemented Interfaces:
SubscriptionRecoveryPolicy
,Service
public class QueryBasedSubscriptionRecoveryPolicy extends Object implements SubscriptionRecoveryPolicy
This implementation ofSubscriptionRecoveryPolicy
will perform a user specific query mechanism to load any messages they may have missed.
-
-
Constructor Summary
Constructors Constructor Description QueryBasedSubscriptionRecoveryPolicy()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
add(ConnectionContext context, MessageReference message)
A message was sent to the destination.Message[]
browse(ActiveMQDestination dest)
protected void
configure(ActiveMQMessage msg)
SubscriptionRecoveryPolicy
copy()
Used to copy the policy object.protected ProducerId
createProducerId()
protected void
dispatchInitialMessage(Message message, Destination regionDestination, ConnectionContext context, SubscriptionRecovery sub)
MessageQuery
getQuery()
void
recover(ConnectionContext context, Topic topic, SubscriptionRecovery sub)
Let a subscription recover message held by the policy.void
setBroker(Broker broker)
void
setQuery(MessageQuery query)
Sets the query strategy to load initial messagesvoid
start()
void
stop()
-
-
-
Method Detail
-
copy
public SubscriptionRecoveryPolicy copy()
Description copied from interface:SubscriptionRecoveryPolicy
Used to copy the policy object.- Specified by:
copy
in interfaceSubscriptionRecoveryPolicy
- Returns:
- the copy
-
add
public boolean add(ConnectionContext context, MessageReference message) throws Exception
Description copied from interface:SubscriptionRecoveryPolicy
A message was sent to the destination.- Specified by:
add
in interfaceSubscriptionRecoveryPolicy
- Returns:
- true if successful
- Throws:
Exception
-
recover
public void recover(ConnectionContext context, Topic topic, SubscriptionRecovery sub) throws Exception
Description copied from interface:SubscriptionRecoveryPolicy
Let a subscription recover message held by the policy.- Specified by:
recover
in interfaceSubscriptionRecoveryPolicy
- Throws:
Exception
-
start
public void start() throws Exception
-
getQuery
public MessageQuery getQuery()
-
setQuery
public void setQuery(MessageQuery query)
Sets the query strategy to load initial messages
-
browse
public Message[] browse(ActiveMQDestination dest) throws Exception
- Specified by:
browse
in interfaceSubscriptionRecoveryPolicy
- Returns:
- messages
- Throws:
Exception
-
setBroker
public void setBroker(Broker broker)
- Specified by:
setBroker
in interfaceSubscriptionRecoveryPolicy
-
dispatchInitialMessage
protected void dispatchInitialMessage(Message message, Destination regionDestination, ConnectionContext context, SubscriptionRecovery sub)
-
configure
protected void configure(ActiveMQMessage msg) throws JMSException
- Throws:
JMSException
-
createProducerId
protected ProducerId createProducerId()
-
-