|
|
@@ -1,10 +1,11 @@
|
|
|
package cn.reghao.oss.store.config.spring;
|
|
|
|
|
|
-import cn.reghao.jutil.jdk.machine.id.MachineIdLinux;
|
|
|
+import cn.reghao.jutil.jdk.machine.id.MachineId;
|
|
|
import cn.reghao.jutil.jdk.result.WebResult;
|
|
|
import cn.reghao.jutil.jdk.serializer.JsonConverter;
|
|
|
import cn.reghao.jutil.jdk.store.LocalStores;
|
|
|
import cn.reghao.jutil.jdk.store.SubDirCount;
|
|
|
+import cn.reghao.oss.sdk.OssConsoleClient;
|
|
|
import cn.reghao.oss.store.config.SpringProperties;
|
|
|
import cn.reghao.oss.store.db.mapper.DataBlockMapper;
|
|
|
import cn.reghao.oss.store.task.FileTask;
|
|
|
@@ -36,16 +37,25 @@ public class AppLifecycle implements ApplicationRunner, DisposableBean {
|
|
|
private final DataBlockMapper dataBlockMapper;
|
|
|
private final FileTask fileTask;
|
|
|
private final SpringProperties springProperties;
|
|
|
+ private final MachineId machineId;
|
|
|
+ private OssConsoleClient ossConsoleClient;
|
|
|
|
|
|
- public AppLifecycle(DataBlockMapper dataBlockMapper, FileTask fileTask, SpringProperties springProperties) {
|
|
|
+ public AppLifecycle(DataBlockMapper dataBlockMapper, FileTask fileTask, SpringProperties springProperties,
|
|
|
+ MachineId machineId, OssConsoleClient ossConsoleClient) {
|
|
|
this.dataBlockMapper = dataBlockMapper;
|
|
|
this.fileTask = fileTask;
|
|
|
this.springProperties = springProperties;
|
|
|
+ this.machineId = machineId;
|
|
|
+ this.ossConsoleClient = ossConsoleClient;
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
public void run(ApplicationArguments args) throws Exception {
|
|
|
- register();
|
|
|
+ try {
|
|
|
+ register();
|
|
|
+ } catch (Exception e) {
|
|
|
+ e.printStackTrace();
|
|
|
+ }
|
|
|
initLocalStore();
|
|
|
|
|
|
log.info("执行文件任务...");
|
|
|
@@ -83,11 +93,13 @@ public class AppLifecycle implements ApplicationRunner, DisposableBean {
|
|
|
|
|
|
private void register() throws Exception {
|
|
|
Map<String, String> map = new HashMap<>();
|
|
|
- map.put("ipv4Addr", new MachineIdLinux().ipv4());
|
|
|
+ map.put("ipv4Addr", machineId.ipv4());
|
|
|
map.put("httpPort", springProperties.getHttpPort()+"");
|
|
|
map.put("rpcPort", springProperties.getRpcPort()+"");
|
|
|
String jsonPayload = JsonConverter.objectToJson(map);
|
|
|
|
|
|
+ ossConsoleClient.registerNode(jsonPayload);
|
|
|
+
|
|
|
String api = String.format("%s/api/oss/store/node/register", springProperties.getConsoleEndpoint());
|
|
|
HttpClient httpClient = HttpClient.newBuilder().build();
|
|
|
HttpRequest httpRequest = HttpRequest.newBuilder(new URI(api))
|