Skip to content

Commit 8f7bea4

Browse files
committed
todo add beanDefinitionRegistrar to scanner Leaf GenerateId
1 parent 04940ab commit 8f7bea4

File tree

13 files changed

+102
-107
lines changed

13 files changed

+102
-107
lines changed

leaf-demo/src/main/java/com/example/demo/domain/Demo.java

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
package com.example.demo.domain;
22

3-
import com.codingapi.leaf.framework.Leaf;
43
import com.codingapi.leaf.framework.LeafUtils;
54
import lombok.Getter;
65
import lombok.Setter;
@@ -11,7 +10,6 @@
1110
*/
1211
@Setter
1312
@Getter
14-
@Leaf
1513
public class Demo {
1614

1715
private long id;
@@ -25,6 +23,6 @@ public Demo() {
2523

2624

2725
private void generatedId(){
28-
this.id = LeafUtils.getInstance().segmentGetId(Demo.class);
26+
this.id = LeafUtils.getInstance().generateId(Demo.class);
2927
}
3028
}

leaf-demo/src/main/java/com/example/demo/domain/Example.java

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
package com.example.demo.domain;
22

3-
import com.codingapi.leaf.framework.Leaf;
43
import com.codingapi.leaf.framework.LeafUtils;
54
import lombok.Getter;
65
import lombok.Setter;
@@ -11,7 +10,6 @@
1110
*/
1211
@Setter
1312
@Getter
14-
@Leaf
1513
public class Example {
1614

1715
private long id;
@@ -25,6 +23,6 @@ public Example() {
2523

2624

2725
private void generatedId(){
28-
this.id = LeafUtils.getInstance().segmentGetId(Example.class);
26+
this.id = LeafUtils.getInstance().generateId(Example.class);
2927
}
3028
}
Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1 @@
1-
laiease.leaf-properties.leaf-url=http://127.0.0.1:8080/
2-
3-
laiease.leaf-properties.classes=com.example.demo.domain.Demo,com.example.demo.domain.Example
1+
codingapi.leaf-properties.leaf-url=http://127.0.0.1:8080/
Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
package com.sankuai.inf.leaf.server.controller;
2+
3+
import com.sankuai.inf.leaf.server.Constants;
4+
import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
5+
import org.springframework.context.annotation.Configuration;
6+
import org.springframework.web.bind.annotation.GetMapping;
7+
import org.springframework.web.bind.annotation.RestController;
8+
9+
@Configuration
10+
public class LeafController {
11+
12+
@ConditionalOnProperty(name = Constants.LEAF_SEGMENT_ENABLE,havingValue = "true")
13+
@RestController
14+
static class SegmentController{
15+
16+
@GetMapping("api/type")
17+
public String type(){
18+
return "SEGMENT";
19+
}
20+
}
21+
22+
23+
@ConditionalOnProperty(name = Constants.LEAF_SNOWFLAKE_ENABLE,havingValue = "true")
24+
@RestController
25+
static class SnowflakeController{
26+
27+
@GetMapping("api/type")
28+
public String type(){
29+
return "SNOWFLAKE";
30+
}
31+
}
32+
33+
}

leaf-server/src/main/java/com/sankuai/inf/leaf/server/controller/LeafSegmentController.java

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,6 @@
88
import com.sankuai.inf.leaf.server.exception.NoKeyException;
99
import com.sankuai.inf.leaf.server.segment.model.LeafAlloc;
1010
import com.sankuai.inf.leaf.server.service.SegmentService;
11-
import com.sankuai.inf.leaf.server.service.SnowflakeService;
1211
import lombok.AllArgsConstructor;
1312
import lombok.extern.slf4j.Slf4j;
1413
import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;

springboot-starter-leaf/src/main/java/com/codingapi/leaf/framework/AutoConfigurationImportSelector.java

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,15 +2,20 @@
22

33
import lombok.extern.slf4j.Slf4j;
44
import org.springframework.beans.factory.support.BeanDefinitionRegistry;
5+
import org.springframework.context.annotation.Configuration;
56
import org.springframework.context.annotation.ImportBeanDefinitionRegistrar;
67
import org.springframework.core.type.AnnotationMetadata;
78

89
@Slf4j
10+
@Configuration
911
public class AutoConfigurationImportSelector implements ImportBeanDefinitionRegistrar {
1012

11-
1213
@Override
1314
public void registerBeanDefinitions(AnnotationMetadata importingClassMetadata, BeanDefinitionRegistry registry) {
14-
log.info("importingClassMetadata:{}",importingClassMetadata);
15+
log.info("importingClassMetadata:{}",importingClassMetadata);
16+
17+
//todo scanner classes
18+
LeafUtils.getInstance().initClass(null);
1519
}
20+
1621
}

springboot-starter-leaf/src/main/java/com/codingapi/leaf/framework/GeneratedValue.java

Lines changed: 0 additions & 14 deletions
This file was deleted.

springboot-starter-leaf/src/main/java/com/codingapi/leaf/framework/Leaf.java

Lines changed: 0 additions & 10 deletions
This file was deleted.

springboot-starter-leaf/src/main/java/com/codingapi/leaf/framework/LeafClient.java

Lines changed: 8 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@
1010

1111
import java.util.HashMap;
1212
import java.util.Map;
13+
import java.util.Set;
1314

1415
/**
1516
* @author lorne
@@ -41,6 +42,13 @@ public long snowflakeGetId(String key){
4142
return Long.parseLong(res);
4243
}
4344

45+
public String type(){
46+
String url = String.format("%s%s",leafProperty.getUrl(),"api/type");
47+
String res = restTemplate.getForObject(url,String.class);
48+
assert res != null;
49+
return res;
50+
}
51+
4452
/**
4553
* 数据库模式添加 数据
4654
* @param key key 关键字
@@ -64,37 +72,6 @@ public boolean segmentPush(String key, int step, int maxId){
6472

6573
public void init(){
6674
LeafUtils.getInstance().setLeafClient(this);
67-
this.initKeys();
68-
this.initClasses();
69-
70-
log.info("leaf init finish.");
7175
}
7276

73-
private void initKeys(){
74-
String[] keys = leafProperty.getKeys();
75-
if(keys!=null&&keys.length>0) {
76-
for (String key : keys) {
77-
try {
78-
LeafUtils.getInstance().push(key, 2000, 1);
79-
} catch (Exception e) {
80-
e.printStackTrace();
81-
}
82-
}
83-
}
84-
}
85-
86-
private void initClasses(){
87-
Class<?>[] classes = leafProperty.getClasses();
88-
if(classes!=null&&classes.length>0) {
89-
for (Class<?> clazz : classes) {
90-
try {
91-
LeafUtils.getInstance().push(clazz.getName(), 2000, 1);
92-
} catch (Exception e) {
93-
e.printStackTrace();
94-
}
95-
}
96-
}
97-
}
98-
99-
10077
}

springboot-starter-leaf/src/main/java/com/codingapi/leaf/framework/LeafConfiguration.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
public class LeafConfiguration {
1414

1515
@Bean
16-
@ConfigurationProperties(prefix = "laiease.leaf-properties")
16+
@ConfigurationProperties(prefix = "codingapi.leaf-properties")
1717
public LeafProperty leafProperty(){
1818
return new LeafProperty();
1919
}

0 commit comments

Comments
 (0)