本文整理汇总了Java中backtype.storm.transactional.TransactionalSpoutCoordinator类的典型用法代码示例。如果您正苦于以下问题:Java TransactionalSpoutCoordinator类的具体用法?Java TransactionalSpoutCoordinator怎么用?Java TransactionalSpoutCoordinator使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
TransactionalSpoutCoordinator类属于backtype.storm.transactional包,在下文中一共展示了TransactionalSpoutCoordinator类的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Java代码示例。
示例1: getState
import backtype.storm.transactional.TransactionalSpoutCoordinator; //导入依赖的package包/类
public Object getState(BigInteger txid, StateInitializer init) {
if (!_curr.containsKey(txid)) {
SortedMap<BigInteger, Object> prevMap = _curr.headMap(txid);
SortedMap<BigInteger, Object> afterMap = _curr.tailMap(txid);
BigInteger prev = null;
if (!prevMap.isEmpty())
prev = prevMap.lastKey();
if (_strictOrder) {
if (prev == null && !txid.equals(TransactionalSpoutCoordinator.INIT_TXID)) {
throw new IllegalStateException("Trying to initialize transaction for which there should be a previous state");
}
if (prev != null && !prev.equals(txid.subtract(BigInteger.ONE))) {
throw new IllegalStateException("Expecting previous txid state to be the previous transaction");
}
if (!afterMap.isEmpty()) {
throw new IllegalStateException("Expecting tx state to be initialized in strict order but there are txids after that have state");
}
}
Object data;
if (afterMap.isEmpty()) {
Object prevData;
if (prev != null) {
prevData = _curr.get(prev);
} else {
prevData = null;
}
data = init.init(txid, prevData);
} else {
data = null;
}
_curr.put(txid, data);
_state.setData(txPath(txid), data);
}
return _curr.get(txid);
}
开发者ID:kkllwww007,项目名称:jstrom,代码行数:39,代码来源:RotatingTransactionalState.java
示例2: getState
import backtype.storm.transactional.TransactionalSpoutCoordinator; //导入依赖的package包/类
public Object getState(BigInteger txid, StateInitializer init) {
if(!_curr.containsKey(txid)) {
SortedMap<BigInteger, Object> prevMap = _curr.headMap(txid);
SortedMap<BigInteger, Object> afterMap = _curr.tailMap(txid);
BigInteger prev = null;
if(!prevMap.isEmpty()) prev = prevMap.lastKey();
if(_strictOrder) {
if(prev==null && !txid.equals(TransactionalSpoutCoordinator.INIT_TXID)) {
throw new IllegalStateException("Trying to initialize transaction for which there should be a previous state");
}
if(prev!=null && !prev.equals(txid.subtract(BigInteger.ONE))) {
throw new IllegalStateException("Expecting previous txid state to be the previous transaction");
}
if(!afterMap.isEmpty()) {
throw new IllegalStateException("Expecting tx state to be initialized in strict order but there are txids after that have state");
}
}
Object data;
if(afterMap.isEmpty()) {
Object prevData;
if(prev!=null) {
prevData = _curr.get(prev);
} else {
prevData = null;
}
data = init.init(txid, prevData);
} else {
data = null;
}
_curr.put(txid, data);
_state.setData(txPath(txid), data);
}
return _curr.get(txid);
}
开发者ID:metamx,项目名称:incubator-storm,代码行数:39,代码来源:RotatingTransactionalState.java
示例3: getState
import backtype.storm.transactional.TransactionalSpoutCoordinator; //导入依赖的package包/类
public Object getState(BigInteger txid, StateInitializer init) {
if (!_curr.containsKey(txid)) {
SortedMap<BigInteger, Object> prevMap = _curr.headMap(txid);
SortedMap<BigInteger, Object> afterMap = _curr.tailMap(txid);
BigInteger prev = null;
if (!prevMap.isEmpty())
prev = prevMap.lastKey();
if (_strictOrder) {
if (prev == null && !txid.equals(TransactionalSpoutCoordinator.INIT_TXID)) {
throw new IllegalStateException(
"Trying to initialize transaction for which there should be a previous state");
}
if (prev != null && !prev.equals(txid.subtract(BigInteger.ONE))) {
throw new IllegalStateException("Expecting previous txid state to be the previous transaction");
}
if (!afterMap.isEmpty()) {
throw new IllegalStateException(
"Expecting tx state to be initialized in strict order but there are txids after that have state");
}
}
Object data;
if (afterMap.isEmpty()) {
Object prevData;
if (prev != null) {
prevData = _curr.get(prev);
} else {
prevData = null;
}
data = init.init(txid, prevData);
} else {
data = null;
}
_curr.put(txid, data);
_state.setData(txPath(txid), data);
}
return _curr.get(txid);
}
开发者ID:alibaba,项目名称:jstorm,代码行数:41,代码来源:RotatingTransactionalState.java
示例4: getState
import backtype.storm.transactional.TransactionalSpoutCoordinator; //导入依赖的package包/类
public Object getState(BigInteger txid, StateInitializer init) {
if (!_curr.containsKey(txid)) {
SortedMap<BigInteger, Object> prevMap = _curr.headMap(txid);
SortedMap<BigInteger, Object> afterMap = _curr.tailMap(txid);
BigInteger prev = null;
if (!prevMap.isEmpty())
prev = prevMap.lastKey();
if (_strictOrder) {
if (prev == null
&& !txid.equals(TransactionalSpoutCoordinator.INIT_TXID)) {
throw new IllegalStateException(
"Trying to initialize transaction for which there should be a previous state");
}
if (prev != null && !prev.equals(txid.subtract(BigInteger.ONE))) {
throw new IllegalStateException(
"Expecting previous txid state to be the previous transaction");
}
if (!afterMap.isEmpty()) {
throw new IllegalStateException(
"Expecting tx state to be initialized in strict order but there are txids after that have state");
}
}
Object data;
if (afterMap.isEmpty()) {
Object prevData;
if (prev != null) {
prevData = _curr.get(prev);
} else {
prevData = null;
}
data = init.init(txid, prevData);
} else {
data = null;
}
_curr.put(txid, data);
_state.setData(txPath(txid), data);
}
return _curr.get(txid);
}
开发者ID:zhangjunfang,项目名称:jstorm-0.9.6.3-,代码行数:43,代码来源:RotatingTransactionalState.java
注:本文中的backtype.storm.transactional.TransactionalSpoutCoordinator类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论