Class AbstractCosIdIntervalShardingAlgorithm<T extends Comparable<?>>
- java.lang.Object
-
- org.apache.shardingsphere.sharding.cosid.algorithm.sharding.interval.AbstractCosIdIntervalShardingAlgorithm<T>
-
- Type Parameters:
T- type of sharding value
- All Implemented Interfaces:
org.apache.shardingsphere.infra.util.spi.type.typed.algorithm.ShardingSphereAlgorithm,org.apache.shardingsphere.infra.util.spi.type.typed.TypedSPI,StandardShardingAlgorithm<T>,ShardingAlgorithm
- Direct Known Subclasses:
CosIdIntervalShardingAlgorithm,CosIdSnowflakeIntervalShardingAlgorithm
public abstract class AbstractCosIdIntervalShardingAlgorithm<T extends Comparable<?>> extends Object implements StandardShardingAlgorithm<T>
Abstract interval range sharding algorithm with CosId.
-
-
Field Summary
Fields Modifier and Type Field Description static StringDATE_TIME_LOWER_KEYstatic StringDATE_TIME_UPPER_KEYstatic DateTimeFormatterDEFAULT_DATE_TIME_FORMATTERstatic StringDEFAULT_DATE_TIME_PATTERNstatic StringINTERVAL_AMOUNT_KEYstatic StringINTERVAL_UNIT_KEYstatic StringSHARDING_SUFFIX_FORMAT_KEY
-
Constructor Summary
Constructors Constructor Description AbstractCosIdIntervalShardingAlgorithm()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected abstract me.ahoo.cosid.sharding.LocalDateTimeConvertorcreateLocalDateTimeConvertor(Properties props)StringdoSharding(Collection<String> availableTargetNames, PreciseShardingValue<T> shardingValue)Collection<String>doSharding(Collection<String> availableTargetNames, RangeShardingValue<T> shardingValue)voidinit(Properties props)-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.apache.shardingsphere.sharding.spi.ShardingAlgorithm
getAlgorithmStructure
-
-
-
-
Field Detail
-
DEFAULT_DATE_TIME_PATTERN
public static final String DEFAULT_DATE_TIME_PATTERN
- See Also:
- Constant Field Values
-
DEFAULT_DATE_TIME_FORMATTER
public static final DateTimeFormatter DEFAULT_DATE_TIME_FORMATTER
-
DATE_TIME_LOWER_KEY
public static final String DATE_TIME_LOWER_KEY
- See Also:
- Constant Field Values
-
DATE_TIME_UPPER_KEY
public static final String DATE_TIME_UPPER_KEY
- See Also:
- Constant Field Values
-
SHARDING_SUFFIX_FORMAT_KEY
public static final String SHARDING_SUFFIX_FORMAT_KEY
- See Also:
- Constant Field Values
-
INTERVAL_UNIT_KEY
public static final String INTERVAL_UNIT_KEY
- See Also:
- Constant Field Values
-
INTERVAL_AMOUNT_KEY
public static final String INTERVAL_AMOUNT_KEY
- See Also:
- Constant Field Values
-
-
Method Detail
-
init
public void init(Properties props)
- Specified by:
initin interfaceorg.apache.shardingsphere.infra.util.spi.type.typed.TypedSPI
-
createLocalDateTimeConvertor
protected abstract me.ahoo.cosid.sharding.LocalDateTimeConvertor createLocalDateTimeConvertor(Properties props)
-
doSharding
public String doSharding(Collection<String> availableTargetNames, PreciseShardingValue<T> shardingValue)
- Specified by:
doShardingin interfaceStandardShardingAlgorithm<T extends Comparable<?>>
-
doSharding
public Collection<String> doSharding(Collection<String> availableTargetNames, RangeShardingValue<T> shardingValue)
- Specified by:
doShardingin interfaceStandardShardingAlgorithm<T extends Comparable<?>>
-
-