com.github.drinkjava2.jdialects.id
Class SnowflakeGenerator

java.lang.Object
  extended by com.github.drinkjava2.jdialects.id.SnowflakeGenerator
All Implemented Interfaces:
IdGenerator

public class SnowflakeGenerator
extends Object
implements IdGenerator

SnowflakeGenerator is a special generator, only mark this column is a snowflake type column, but getNextID() method does not work, because snowflake value should generated by outside program, it depends on real machine setting, in jDialects there is a SnowflakeCreator tool for these outside program to use


Field Summary
static SnowflakeGenerator INSTANCE
           
 
Constructor Summary
SnowflakeGenerator()
           
 
Method Summary
 Boolean dependOnAutoIdGenerator()
          If depends on AutoIdGenerator, for example SortedUUIDGenerator depends on AutoIdGenerator to create start numbers
 GenerationType getGenerationType()
          Return GenerationType
 String getIdGenName()
          Return a unique Id Generator name in this TableModel
 Object getNextID(NormalJdbcTool jdbc, Dialect dialect, Type dataType)
          Get the next ID generated by implementation of IdGenerator
 IdGenerator newCopy()
          Return a newCopy (Deep Clone) instance
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

INSTANCE

public static final SnowflakeGenerator INSTANCE
Constructor Detail

SnowflakeGenerator

public SnowflakeGenerator()
Method Detail

getNextID

public Object getNextID(NormalJdbcTool jdbc,
                        Dialect dialect,
                        Type dataType)
Description copied from interface: IdGenerator
Get the next ID generated by implementation of IdGenerator

Specified by:
getNextID in interface IdGenerator
Parameters:
jdbc - A NormalJdbcTool implementation to access database
dialect - The Dialect
dataType - The Type of a column
Returns:
id generated by IdGenerator

getGenerationType

public GenerationType getGenerationType()
Description copied from interface: IdGenerator
Return GenerationType

Specified by:
getGenerationType in interface IdGenerator

getIdGenName

public String getIdGenName()
Description copied from interface: IdGenerator
Return a unique Id Generator name in this TableModel

Specified by:
getIdGenName in interface IdGenerator

newCopy

public IdGenerator newCopy()
Description copied from interface: IdGenerator
Return a newCopy (Deep Clone) instance

Specified by:
newCopy in interface IdGenerator

dependOnAutoIdGenerator

public Boolean dependOnAutoIdGenerator()
Description copied from interface: IdGenerator
If depends on AutoIdGenerator, for example SortedUUIDGenerator depends on AutoIdGenerator to create start numbers

Specified by:
dependOnAutoIdGenerator in interface IdGenerator


Copyright © 2018. All rights reserved.