This is an automated email from the ASF dual-hosted git repository.

menghaoran pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/shardingsphere-ui.git


The following commit(s) were added to refs/heads/master by this push:
     new e05bb8a  Refactor update instance status
     new 10649b1  Merge pull request #9 from menghaoranss/refactor-instance
e05bb8a is described below

commit e05bb8ab2eaf4cfefa4064be94594102cc4100ca
Author: menghaoranss <[email protected]>
AuthorDate: Thu Aug 27 11:39:31 2020 +0800

    Refactor update instance status
---
 .../ui/servcie/impl/OrchestrationServiceImpl.java  | 25 +++++-----------------
 1 file changed, 5 insertions(+), 20 deletions(-)

diff --git 
a/shardingsphere-ui-backend/src/main/java/org/apache/shardingsphere/ui/servcie/impl/OrchestrationServiceImpl.java
 
b/shardingsphere-ui-backend/src/main/java/org/apache/shardingsphere/ui/servcie/impl/OrchestrationServiceImpl.java
index 6fdf658..6c8d57d 100644
--- 
a/shardingsphere-ui-backend/src/main/java/org/apache/shardingsphere/ui/servcie/impl/OrchestrationServiceImpl.java
+++ 
b/shardingsphere-ui-backend/src/main/java/org/apache/shardingsphere/ui/servcie/impl/OrchestrationServiceImpl.java
@@ -17,13 +17,10 @@
 
 package org.apache.shardingsphere.ui.servcie.impl;
 
-import com.google.common.base.Strings;
 import org.apache.shardingsphere.infra.config.RuleConfiguration;
-import org.apache.shardingsphere.infra.yaml.engine.YamlEngine;
-import 
org.apache.shardingsphere.masterslave.api.config.rule.MasterSlaveDataSourceRuleConfiguration;
 import 
org.apache.shardingsphere.masterslave.api.config.MasterSlaveRuleConfiguration;
+import 
org.apache.shardingsphere.masterslave.api.config.rule.MasterSlaveDataSourceRuleConfiguration;
 import 
org.apache.shardingsphere.orchestration.core.registry.RegistryCenterNodeStatus;
-import 
org.apache.shardingsphere.orchestration.core.registry.instance.InstanceState;
 import org.apache.shardingsphere.ui.common.dto.InstanceDTO;
 import org.apache.shardingsphere.ui.common.dto.SlaveDataSourceDTO;
 import org.apache.shardingsphere.ui.servcie.OrchestrationService;
@@ -37,7 +34,6 @@ import java.util.ArrayList;
 import java.util.Collection;
 import java.util.LinkedList;
 import java.util.List;
-import java.util.Optional;
 import java.util.stream.Collectors;
 
 /**
@@ -57,17 +53,16 @@ public final class OrchestrationServiceImpl implements 
OrchestrationService {
         List<String> instanceIds = 
registryCenterService.getActivatedRegistryCenter().getChildrenKeys(getInstancesNodeFullRootPath());
         Collection<InstanceDTO> result = new ArrayList<>(instanceIds.size());
         for (String instanceId : instanceIds) {
-            result.add(new InstanceDTO(instanceId, 
!RegistryCenterNodeStatus.DISABLED.toString().equalsIgnoreCase(getInstanceStatus(instanceId))));
+            String value = 
registryCenterService.getActivatedRegistryCenter().get(registryCenterService.getActivatedStateNode().getInstancesNodeFullPath(instanceId));
+            result.add(new InstanceDTO(instanceId, 
!RegistryCenterNodeStatus.DISABLED.toString().equalsIgnoreCase(value)));
         }
         return result;
     }
     
     @Override
     public void updateInstanceStatus(final String instanceId, final boolean 
enabled) {
-        RegistryCenterNodeStatus value = enabled ? 
RegistryCenterNodeStatus.ONLINE : RegistryCenterNodeStatus.DISABLED;
-        InstanceState instanceState = 
Optional.ofNullable(loadInstanceState(instanceId)).orElse(new InstanceState());
-        instanceState.setState(value);
-        
registryCenterService.getActivatedRegistryCenter().persist(registryCenterService.getActivatedStateNode().getInstancesNodeFullPath(instanceId),
 YamlEngine.marshal(instanceState));
+        String value = enabled ? "" : 
RegistryCenterNodeStatus.DISABLED.toString();
+        
registryCenterService.getActivatedRegistryCenter().persist(registryCenterService.getActivatedStateNode().getInstancesNodeFullPath(instanceId),
 value);
     }
     
     @Override
@@ -135,14 +130,4 @@ public final class OrchestrationServiceImpl implements 
OrchestrationService {
         }
         return result;
     }
-    
-    private String getInstanceStatus(final String instanceId) {
-        InstanceState instanceState = loadInstanceState(instanceId);
-        return null == instanceState ? "" : 
instanceState.getState().toString();
-    }
-    
-    private InstanceState loadInstanceState(final String instanceId) {
-        String value = 
registryCenterService.getActivatedRegistryCenter().get(registryCenterService.getActivatedStateNode().getInstancesNodeFullPath(instanceId));
-        return Strings.isNullOrEmpty(value) ? null : 
YamlEngine.unmarshal(value, InstanceState.class);
-    }
 }

Reply via email to