Author: swagle
Date: Thu Mar  7 22:32:21 2013
New Revision: 1454136

URL: http://svn.apache.org/r1454136
Log:
AMBARI-1563. API Support:  Host-component resource should include its current 
HA active/passive status. (Sumit Mohanty via swagle)

Modified:
    
incubator/ambari/trunk/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/HostComponentResourceProvider.java

Modified: 
incubator/ambari/trunk/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/HostComponentResourceProvider.java
URL: 
http://svn.apache.org/viewvc/incubator/ambari/trunk/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/HostComponentResourceProvider.java?rev=1454136&r1=1454135&r2=1454136&view=diff
==============================================================================
--- 
incubator/ambari/trunk/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/HostComponentResourceProvider.java
 (original)
+++ 
incubator/ambari/trunk/ambari-server/src/main/java/org/apache/ambari/server/controller/internal/HostComponentResourceProvider.java
 Thu Mar  7 22:32:21 2013
@@ -30,6 +30,7 @@ import java.util.HashSet;
 import java.util.Iterator;
 import java.util.Map;
 import java.util.Set;
+import org.apache.ambari.server.Role;
 
 /**
  * Resource provider for host component resources.
@@ -47,6 +48,7 @@ class HostComponentResourceProvider exte
   protected static final String HOST_COMPONENT_DESIRED_STATE_PROPERTY_ID  = 
PropertyHelper.getPropertyId("HostRoles", "desired_state");
   protected static final String HOST_COMPONENT_CONFIGS_PROPERTY_ID          = 
PropertyHelper.getPropertyId("HostRoles", "configs");
   protected static final String HOST_COMPONENT_DESIRED_CONFIGS_PROPERTY_ID  = 
PropertyHelper.getPropertyId("HostRoles", "desired_configs");
+  protected static final String HOST_COMPONENT_HIGH_AVAILABILITY_PROPERTY_ID  
= PropertyHelper.getPropertyId("HostRoles", "ha_status");
 
   private static Set<String> pkPropertyIds =
       new HashSet<String>(Arrays.asList(new String[]{
@@ -116,15 +118,21 @@ class HostComponentResourceProvider exte
         return getManagementController().getHostComponents(requests);
       }
     });
-
+    
     for (ServiceComponentHostResponse response : responses) {
       Resource resource = new ResourceImpl(Resource.Type.HostComponent);
+      if((response.getComponentName()).equals(Role.HBASE_MASTER.toString())) {
+          requestedIds.add(HOST_COMPONENT_HIGH_AVAILABILITY_PROPERTY_ID);
+      }else{
+          requestedIds.remove(HOST_COMPONENT_HIGH_AVAILABILITY_PROPERTY_ID);
+      }
       setResourceProperty(resource, HOST_COMPONENT_CLUSTER_NAME_PROPERTY_ID, 
response.getClusterName(), requestedIds);
       setResourceProperty(resource, HOST_COMPONENT_SERVICE_NAME_PROPERTY_ID, 
response.getServiceName(), requestedIds);
       setResourceProperty(resource, HOST_COMPONENT_COMPONENT_NAME_PROPERTY_ID, 
response.getComponentName(), requestedIds);
       setResourceProperty(resource, HOST_COMPONENT_HOST_NAME_PROPERTY_ID, 
response.getHostname(), requestedIds);
       setResourceProperty(resource, HOST_COMPONENT_STATE_PROPERTY_ID, 
response.getLiveState(), requestedIds);
       setResourceProperty(resource, HOST_COMPONENT_DESIRED_STATE_PROPERTY_ID, 
response.getDesiredState(), requestedIds);
+      setResourceProperty(resource, 
HOST_COMPONENT_HIGH_AVAILABILITY_PROPERTY_ID, "NA", requestedIds);
       setResourceProperty(resource, HOST_COMPONENT_CONFIGS_PROPERTY_ID,
           response.getConfigs(), requestedIds);
       setResourceProperty(resource, HOST_COMPONENT_DESIRED_CONFIGS_PROPERTY_ID,


Reply via email to