yangys
2024-05-18 040976de6f9934b99f30268a28e2ecf42260e217
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
package com.qianwen.core.sequence;
 
import com.qianwen.core.sequence.builder.SnowflakeSeqBuilder;
import com.qianwen.core.sequence.properties.SequenceSnowflakeProperties;
import com.qianwen.core.sequence.sequence.Sequence;
import org.springframework.boot.autoconfigure.condition.ConditionalOnBean;
import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
 
@ConditionalOnMissingBean({Sequence.class})
@Configuration
 
public class SequenceAutoConfiguration {
    @ConditionalOnBean({SequenceSnowflakeProperties.class})
    @Bean
    public Sequence snowflakeSequence(SequenceSnowflakeProperties properties) {
        return SnowflakeSeqBuilder.create().datacenterId(properties.getDatacenterId()).workerId(properties.getWorkerId()).build();
    }
}