List of usage examples for com.google.common.collect Range upperEndpoint
public C upperEndpoint()
From source file:org.apache.kylin.metadata.realization.SQLDigestUtil.java
private static TupleFilter createFilterForRealtime(TupleFilter originFilter, TblColRef partitionColRef, Range<Long> tsRange) { DataType type = partitionColRef.getColumnDesc().getType(); String startTimeStr, endTimeStr; CompareTupleFilter startFilter = null, endFilter = null; if (tsRange.hasLowerBound()) { startTimeStr = formatTimeStr(type, tsRange.lowerEndpoint()); if (tsRange.lowerBoundType() == BoundType.CLOSED) { startFilter = new CompareTupleFilter(TupleFilter.FilterOperatorEnum.GTE); } else {//from w w w. j a v a 2 s . co m startFilter = new CompareTupleFilter(TupleFilter.FilterOperatorEnum.GT); } ColumnTupleFilter columnTupleFilter = new ColumnTupleFilter(partitionColRef); ConstantTupleFilter constantTupleFilter = new ConstantTupleFilter(startTimeStr); startFilter.addChild(columnTupleFilter); startFilter.addChild(constantTupleFilter); } if (tsRange.hasUpperBound()) { endTimeStr = formatTimeStr(type, tsRange.upperEndpoint()); if (tsRange.upperBoundType() == BoundType.CLOSED) { endFilter = new CompareTupleFilter(TupleFilter.FilterOperatorEnum.LTE); } else { endFilter = new CompareTupleFilter(TupleFilter.FilterOperatorEnum.LT); } ColumnTupleFilter columnTupleFilter = new ColumnTupleFilter(partitionColRef); ConstantTupleFilter constantTupleFilter = new ConstantTupleFilter(endTimeStr); endFilter.addChild(columnTupleFilter); endFilter.addChild(constantTupleFilter); } if (originFilter == null) { if (endFilter == null) { return startFilter; } if (startFilter == null) { return endFilter; } } LogicalTupleFilter logicalTupleFilter = new LogicalTupleFilter(TupleFilter.FilterOperatorEnum.AND); if (originFilter != null) { logicalTupleFilter.addChild(originFilter); } if (startFilter != null) { logicalTupleFilter.addChild(startFilter); } if (endFilter != null) { logicalTupleFilter.addChild(endFilter); } return logicalTupleFilter; }
From source file:com.dangdang.ddframe.rdb.integrate.fixture.SingleKeyDynamicModuloTableShardingAlgorithm.java
@Override public Collection<String> doBetweenSharding(final Collection<String> availableTargetNames, final ShardingValue<Integer> shardingValue) { Collection<String> result = new LinkedHashSet<>(availableTargetNames.size()); Range<Integer> range = shardingValue.getValueRange(); for (Integer i = range.lowerEndpoint(); i <= range.upperEndpoint(); i++) { result.add(tablePrefix + i % 10); }//from ww w. j av a 2s. c o m return result; }
From source file:com.dangdang.ddframe.rdb.sharding.example.jdbc.algorithm.SingleKeyModuloTableShardingAlgorithm.java
@Override public Collection<String> doBetweenSharding(final Collection<String> availableTargetNames, final ShardingValue<Long> shardingValue) { Collection<String> result = new LinkedHashSet<>(availableTargetNames.size()); Range<Long> range = shardingValue.getValueRange(); for (Long i = range.lowerEndpoint(); i <= range.upperEndpoint(); i++) { for (String each : availableTargetNames) { if (each.endsWith(i % 2 + "")) { result.add(each);//from www .j a v a 2s . c o m } } } return result; }
From source file:com.dangdang.ddframe.rdb.sharding.example.jdbc.algorithm.ModuloTableShardingAlgorithm.java
@Override public Collection<String> doBetweenSharding(final Collection<String> tableNames, final ShardingValue<Integer> shardingValue) { Collection<String> result = new LinkedHashSet<>(tableNames.size()); Range<Integer> range = shardingValue.getValueRange(); for (Integer i = range.lowerEndpoint(); i <= range.upperEndpoint(); i++) { for (String each : tableNames) { if (each.endsWith(i % 2 + "")) { result.add(each);//www . ja v a 2 s . c o m } } } return result; }
From source file:com.dangdang.ddframe.rdb.integrate.fixture.SingleKeyModuloTableShardingAlgorithm.java
@Override public Collection<String> doBetweenSharding(final Collection<String> availableTargetNames, final ShardingValue<Integer> shardingValue) { Collection<String> result = new LinkedHashSet<>(availableTargetNames.size()); Range<Integer> range = shardingValue.getValueRange(); for (Integer i = range.lowerEndpoint(); i <= range.upperEndpoint(); i++) { for (String each : availableTargetNames) { if (each.endsWith(i % 10 + "")) { result.add(each);/* ww w. j a v a2s. co m*/ } } } return result; }
From source file:com.dangdang.ddframe.rdb.transaction.soft.ModuloDatabaseShardingAlgorithm.java
@Override public Collection<String> doBetweenSharding(final Collection<String> dataSourceNames, final ShardingValue<Integer> shardingValue) { Collection<String> result = new LinkedHashSet<>(dataSourceNames.size()); Range<Integer> range = shardingValue.getValueRange(); for (Integer i = range.lowerEndpoint(); i <= range.upperEndpoint(); i++) { for (String each : dataSourceNames) { if (each.endsWith(i % 2 + "")) { result.add(each);/*from w w w . j ava2 s . c o m*/ } } } return result; }
From source file:com.dangdang.ddframe.rdb.sharding.spring.algorithm.SingleKeyModuloTableShardingAlgorithm.java
@Override public Collection<String> doBetweenSharding(final Collection<String> availableTargetNames, final ShardingValue<Integer> shardingValue) { Collection<String> result = new LinkedHashSet<>(availableTargetNames.size()); Range<Integer> range = shardingValue.getValueRange(); for (Integer i = range.lowerEndpoint(); i <= range.upperEndpoint(); i++) { for (String each : availableTargetNames) { if (each.endsWith(i % 4 + "")) { result.add(each);// w w w .ja v a 2s . c om } } } return result; }
From source file:com.lite.dal.algorithm.SingleKeyModuloTableShardingAlgorithm.java
@Override public Collection<String> doBetweenSharding(final Collection<String> availableTargetNames, final ShardingValue<Integer> shardingValue) { Collection<String> result = new LinkedHashSet<>(availableTargetNames.size()); Range<Integer> range = shardingValue.getValueRange(); for (Integer i = range.lowerEndpoint(); i <= range.upperEndpoint(); i++) { for (String each : availableTargetNames) { if (each.endsWith(i % 2 + "")) { result.add(each);/*from ww w . jav a 2s.c o m*/ } } } return result; }
From source file:net.sf.mzmine.util.components.RangeComponent.java
public void setRangeValue(Range<Double> value) { minTxtField.setValue(value.lowerEndpoint()); maxTxtField.setValue(value.upperEndpoint()); }
From source file:com.dangdang.ddframe.rdb.sharding.example.jpa.algorithm.SingleKeyModuloTableShardingAlgorithm.java
@Override public Collection<String> doBetweenSharding(final Collection<String> availableTargetNames, final ShardingValue<Long> shardingValue) { Collection<String> result = new LinkedHashSet<>(availableTargetNames.size()); Range<Long> range = shardingValue.getValueRange(); for (Long value = range.lowerEndpoint(); value <= range.upperEndpoint(); value++) { for (String each : availableTargetNames) { if (each.endsWith(value % 2 + "")) { result.add(each);// w w w.j av a 2 s .c om } } } return result; }