Class FixedSizedSubscriptionRecoveryPolicy
- java.lang.Object
-
- org.apache.activemq.broker.region.policy.FixedSizedSubscriptionRecoveryPolicy
-
- All Implemented Interfaces:
SubscriptionRecoveryPolicy,org.apache.activemq.Service
public class FixedSizedSubscriptionRecoveryPolicy extends Object implements SubscriptionRecoveryPolicy
This implementation ofSubscriptionRecoveryPolicywill keep a fixed amount of memory available in RAM for message history which is evicted in time order.
-
-
Constructor Summary
Constructors Constructor Description FixedSizedSubscriptionRecoveryPolicy()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description booleanadd(ConnectionContext context, org.apache.activemq.broker.region.MessageReference message)A message was sent to the destination.org.apache.activemq.command.Message[]browse(org.apache.activemq.command.ActiveMQDestination destination)SubscriptionRecoveryPolicycopy()Used to copy the policy object.protected MessageListcreateMessageList()MessageListgetBuffer()intgetMaximumSize()booleanisUseSharedBuffer()voidrecover(ConnectionContext context, Topic topic, SubscriptionRecovery sub)Let a subscription recover message held by the policy.voidsetBroker(Broker broker)voidsetBuffer(MessageList buffer)voidsetMaximumSize(int maximumSize)Sets the maximum amount of RAM in bytes that this buffer can hold in RAMvoidsetUseSharedBuffer(boolean useSharedBuffer)voidstart()voidstop()
-
-
-
Method Detail
-
copy
public SubscriptionRecoveryPolicy copy()
Description copied from interface:SubscriptionRecoveryPolicyUsed to copy the policy object.- Specified by:
copyin interfaceSubscriptionRecoveryPolicy- Returns:
- the copy
-
add
public boolean add(ConnectionContext context, org.apache.activemq.broker.region.MessageReference message) throws Exception
Description copied from interface:SubscriptionRecoveryPolicyA message was sent to the destination.- Specified by:
addin interfaceSubscriptionRecoveryPolicy- Returns:
- true if successful
- Throws:
Exception
-
recover
public void recover(ConnectionContext context, Topic topic, SubscriptionRecovery sub) throws Exception
Description copied from interface:SubscriptionRecoveryPolicyLet a subscription recover message held by the policy.- Specified by:
recoverin interfaceSubscriptionRecoveryPolicy- Throws:
Exception
-
start
public void start() throws Exception- Specified by:
startin interfaceorg.apache.activemq.Service- Throws:
Exception
-
stop
public void stop() throws Exception- Specified by:
stopin interfaceorg.apache.activemq.Service- Throws:
Exception
-
getBuffer
public MessageList getBuffer()
-
setBuffer
public void setBuffer(MessageList buffer)
-
getMaximumSize
public int getMaximumSize()
-
setMaximumSize
public void setMaximumSize(int maximumSize)
Sets the maximum amount of RAM in bytes that this buffer can hold in RAM
-
isUseSharedBuffer
public boolean isUseSharedBuffer()
-
setUseSharedBuffer
public void setUseSharedBuffer(boolean useSharedBuffer)
-
browse
public org.apache.activemq.command.Message[] browse(org.apache.activemq.command.ActiveMQDestination destination) throws Exception- Specified by:
browsein interfaceSubscriptionRecoveryPolicy- Returns:
- messages
- Throws:
Exception
-
setBroker
public void setBroker(Broker broker)
- Specified by:
setBrokerin interfaceSubscriptionRecoveryPolicy
-
createMessageList
protected MessageList createMessageList()
-
-