Optimize the MSB Registration Logic
authorGuangrongFu <fu.guangrong@zte.com.cn>
Tue, 14 Mar 2017 01:55:04 +0000 (09:55 +0800)
committerGuangrongFu <fu.guangrong@zte.com.cn>
Tue, 14 Mar 2017 01:55:04 +0000 (09:55 +0800)
Change-Id: I1b58ef7499a871e5a04ac5f115e246cca4abb022
Issue-ID: HOLMES-50
Signed-off-by: GuangrongFu <fu.guangrong@zte.com.cn>
rulemgt/src/main/java/org/openo/holmes/rulemgt/RuleActiveApp.java
rulemgt/src/main/java/org/openo/holmes/rulemgt/resources/RuleMgtResources.java

index c7eaf15..96a1f00 100644 (file)
 
 package org.openo.holmes.rulemgt;
 
+import io.dropwizard.setup.Environment;
+import java.io.IOException;
+import lombok.extern.slf4j.Slf4j;
 import org.openo.dropwizard.ioc.bundle.IOCApplication;
+import org.openo.holmes.common.api.entity.ServiceRegisterEntity;
+import org.openo.holmes.common.config.MicroServiceConfig;
+import org.openo.holmes.common.utils.MSBRegisterUtil;
 
+@Slf4j
 public class RuleActiveApp extends IOCApplication < RuleAppConfig > {
 
     public static void main( String[] args ) throws Exception {
@@ -29,4 +36,26 @@ public class RuleActiveApp extends IOCApplication < RuleAppConfig > {
         return "Holmes Rule Management ActiveApp APP ";
     }
 
+    @Override
+    public void run(RuleAppConfig configuration, Environment environment) throws Exception {
+        super.run(configuration, environment);
+
+        try {
+            new MSBRegisterUtil().register(initServiceEntity());
+        } catch (IOException e) {
+            log.warn("Micro service registry httpclient close failure",e);
+        }
+
+    }
+
+    private ServiceRegisterEntity initServiceEntity() {
+        ServiceRegisterEntity serviceRegisterEntity = new ServiceRegisterEntity();
+        serviceRegisterEntity.setServiceName("holmes-rule-mgmt");
+        serviceRegisterEntity.setProtocol("REST");
+        serviceRegisterEntity.setVersion("v1");
+        serviceRegisterEntity.setUrl("/openoapi/holmes-rule-mgmt/v1");
+        serviceRegisterEntity.setSingleNode(MicroServiceConfig.getServiceIp(), "9101", 0);
+        serviceRegisterEntity.setVisualRange("1|0");
+        return serviceRegisterEntity;
+    }
 }
index 2c2c88d..f3256b2 100644 (file)
@@ -63,20 +63,9 @@ import org.openo.holmes.rulemgt.wrapper.RuleMgtWrapper;
 @Slf4j\r
 public class RuleMgtResources {\r
 \r
-    @Inject\r
-    private MSBRegisterUtil msbRegisterUtil;\r
     @Inject\r
     private RuleMgtWrapper ruleMgtWrapper;\r
 \r
-    @PostConstruct\r
-    public void init() {\r
-        try {\r
-            msbRegisterUtil.register(initServiceEntity());\r
-        } catch (IOException e) {\r
-            log.warn("Micro service registry httpclient close failure",e);\r
-        }\r
-    }\r
-\r
     @PUT\r
     @Produces(MediaType.APPLICATION_JSON)\r
     @ApiOperation(value = "Save the alarm+ rule to the database, and deployed to the engine when the enable to open.", response = RuleAddAndUpdateResponse.class)\r
@@ -176,15 +165,4 @@ public class RuleMgtResources {
                     I18nProxy.RULE_MANAGEMENT_DATA_FORMAT_ERROR));\r
         }\r
     }\r
-\r
-    private ServiceRegisterEntity initServiceEntity() {\r
-        ServiceRegisterEntity serviceRegisterEntity = new ServiceRegisterEntity();\r
-        serviceRegisterEntity.setServiceName("holmes-rule-mgmt");\r
-        serviceRegisterEntity.setProtocol("REST");\r
-        serviceRegisterEntity.setVersion("v1");\r
-        serviceRegisterEntity.setUrl("/openoapi/holmes-rule-mgmt/v1");\r
-        serviceRegisterEntity.setSingleNode(MicroServiceConfig.getServiceIp(), "9101", 0);\r
-        serviceRegisterEntity.setVisualRange("1");\r
-        return serviceRegisterEntity;\r
-    }\r
 }\r