com.taobao.metamorphosis.client.extension.producer
类 OrderedMessagePartitionSelector

java.lang.Object
  继承者 com.taobao.metamorphosis.client.extension.producer.ConfigPartitionsSupport
      继承者 com.taobao.metamorphosis.client.extension.producer.OrderedMessagePartitionSelector
所有已实现的接口:
ConfigPartitionsAware, PartitionSelector

public abstract class OrderedMessagePartitionSelector
extends ConfigPartitionsSupport

 支持获取某topic分区总数,当前可用分区数跟配置分区不对应时 将抛出一个特殊的异常
 AvailablePartitionNumException, 以便发送消息时可识别这个失败原因,从而做相应处理.
 
 需要按照消息内容(例如某个id)散列到固定分区并要求有序的场景中使用
 

从以下版本开始:
2011-8-2 下午4:41:35
作者:
无花

构造方法摘要
OrderedMessagePartitionSelector()
           
 
方法摘要
protected abstract  Partition choosePartition(String topic, List<Partition> partitions, Message message)
           
 Partition getPartition(String topic, List<Partition> partitions, Message message)
          根据topic、message从partitions列表中选择分区
 
从类 com.taobao.metamorphosis.client.extension.producer.ConfigPartitionsSupport 继承的方法
getConfigPartitions, setConfigPartitions
 
从类 java.lang.Object 继承的方法
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

构造方法详细信息

OrderedMessagePartitionSelector

public OrderedMessagePartitionSelector()
方法详细信息

getPartition

public Partition getPartition(String topic,
                              List<Partition> partitions,
                              Message message)
                       throws MetaClientException
从接口 PartitionSelector 复制的描述
根据topic、message从partitions列表中选择分区

参数:
topic - topic
partitions - 分区列表
message - 消息
返回:
抛出:
MetaClientException - 此方法抛出的任何异常都应当包装为MetaClientException

choosePartition

protected abstract Partition choosePartition(String topic,
                                             List<Partition> partitions,
                                             Message message)


Copyright © 2010–2013. All rights reserved.