All Downloads are FREE. Search and download functionalities are using the official Maven repository.

sf.tools.snowflake.SnowflakeIDAutoGen Maven / Gradle / Ivy

The newest version!
package sf.tools.snowflake;

import java.util.Map;


/**
 * ID生成器
 */
public class SnowflakeIDAutoGen {

    SnowflakeIDWorker defaultWork = new SnowflakeIDWorker(0, 0);
    Map map = null;

    public SnowflakeIDAutoGen() {

    }

    public SnowflakeIDAutoGen(Map map) {
        this.map = map;

    }

    /**
     * 生成id
     * @param params
     * @return
     */
    public Long nextID(String params) {
        if (params == null || params.length() == 0) {
            return defaultWork.nextId();
        } else {
            SnowflakeIDWorker worker = map.get(params);
            if (worker == null) {
                throw new NullPointerException("params " + params + " can not found id worker");
            }
            return worker.nextId();
        }
    }

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy