public abstract class RebalanceImpl
extends java.lang.Object
Modifier and Type | Field and Description |
---|---|
protected AllocateMessageQueueStrategy |
allocateMessageQueueStrategy |
protected java.lang.String |
consumerGroup |
protected static Logger |
log |
protected MessageModel |
messageModel |
protected MQClientInstance |
mQClientFactory |
protected java.util.concurrent.ConcurrentMap<MessageQueue,ProcessQueue> |
processQueueTable |
protected java.util.concurrent.ConcurrentMap<java.lang.String,SubscriptionData> |
subscriptionInner |
protected java.util.concurrent.ConcurrentMap<java.lang.String,java.util.Set<MessageQueue>> |
topicSubscribeInfoTable |
Constructor and Description |
---|
RebalanceImpl(java.lang.String consumerGroup,
MessageModel messageModel,
AllocateMessageQueueStrategy allocateMessageQueueStrategy,
MQClientInstance mQClientFactory) |
Modifier and Type | Method and Description |
---|---|
abstract long |
computePullFromWhere(MessageQueue mq) |
abstract ConsumeType |
consumeType() |
void |
destroy() |
abstract void |
dispatchPullRequest(java.util.List<PullRequest> pullRequestList) |
void |
doRebalance(boolean isOrder) |
AllocateMessageQueueStrategy |
getAllocateMessageQueueStrategy() |
java.lang.String |
getConsumerGroup() |
MessageModel |
getMessageModel() |
MQClientInstance |
getmQClientFactory() |
java.util.concurrent.ConcurrentMap<MessageQueue,ProcessQueue> |
getProcessQueueTable() |
java.util.concurrent.ConcurrentMap<java.lang.String,SubscriptionData> |
getSubscriptionInner() |
java.util.concurrent.ConcurrentMap<java.lang.String,java.util.Set<MessageQueue>> |
getTopicSubscribeInfoTable() |
boolean |
lock(MessageQueue mq) |
void |
lockAll() |
abstract void |
messageQueueChanged(java.lang.String topic,
java.util.Set<MessageQueue> mqAll,
java.util.Set<MessageQueue> mqDivided) |
abstract void |
removeDirtyOffset(MessageQueue mq) |
void |
removeProcessQueue(MessageQueue mq) |
abstract boolean |
removeUnnecessaryMessageQueue(MessageQueue mq,
ProcessQueue pq) |
void |
setAllocateMessageQueueStrategy(AllocateMessageQueueStrategy allocateMessageQueueStrategy) |
void |
setConsumerGroup(java.lang.String consumerGroup) |
void |
setMessageModel(MessageModel messageModel) |
void |
setmQClientFactory(MQClientInstance mQClientFactory) |
void |
unlock(MessageQueue mq,
boolean oneway) |
void |
unlockAll(boolean oneway) |
protected static final Logger log
protected final java.util.concurrent.ConcurrentMap<MessageQueue,ProcessQueue> processQueueTable
protected final java.util.concurrent.ConcurrentMap<java.lang.String,java.util.Set<MessageQueue>> topicSubscribeInfoTable
protected final java.util.concurrent.ConcurrentMap<java.lang.String,SubscriptionData> subscriptionInner
protected java.lang.String consumerGroup
protected MessageModel messageModel
protected AllocateMessageQueueStrategy allocateMessageQueueStrategy
protected MQClientInstance mQClientFactory
public RebalanceImpl(java.lang.String consumerGroup, MessageModel messageModel, AllocateMessageQueueStrategy allocateMessageQueueStrategy, MQClientInstance mQClientFactory)
public void unlock(MessageQueue mq, boolean oneway)
public void unlockAll(boolean oneway)
public boolean lock(MessageQueue mq)
public void lockAll()
public void doRebalance(boolean isOrder)
public java.util.concurrent.ConcurrentMap<java.lang.String,SubscriptionData> getSubscriptionInner()
public abstract void messageQueueChanged(java.lang.String topic, java.util.Set<MessageQueue> mqAll, java.util.Set<MessageQueue> mqDivided)
public abstract boolean removeUnnecessaryMessageQueue(MessageQueue mq, ProcessQueue pq)
public abstract ConsumeType consumeType()
public abstract void removeDirtyOffset(MessageQueue mq)
public abstract long computePullFromWhere(MessageQueue mq)
public abstract void dispatchPullRequest(java.util.List<PullRequest> pullRequestList)
public void removeProcessQueue(MessageQueue mq)
public java.util.concurrent.ConcurrentMap<MessageQueue,ProcessQueue> getProcessQueueTable()
public java.util.concurrent.ConcurrentMap<java.lang.String,java.util.Set<MessageQueue>> getTopicSubscribeInfoTable()
public java.lang.String getConsumerGroup()
public void setConsumerGroup(java.lang.String consumerGroup)
public MessageModel getMessageModel()
public void setMessageModel(MessageModel messageModel)
public AllocateMessageQueueStrategy getAllocateMessageQueueStrategy()
public void setAllocateMessageQueueStrategy(AllocateMessageQueueStrategy allocateMessageQueueStrategy)
public MQClientInstance getmQClientFactory()
public void setmQClientFactory(MQClientInstance mQClientFactory)
public void destroy()