@Override
  public void updateServiceInfo() throws AmbariException {
    try {
      ServiceInfo serviceInfo = ambariMetaInfo.getService(this);

      isClientOnlyService = serviceInfo.isClientOnlyService();
      isCredentialStoreSupported = serviceInfo.isCredentialStoreSupported();
      isCredentialStoreRequired = serviceInfo.isCredentialStoreRequired();

    } catch (ObjectNotFoundException e) {
      throw new RuntimeException("Trying to create a ServiceInfo"
          + " not recognized in stack info"
          + ", clusterName=" + cluster.getClusterName()
          + ", serviceName=" + getName()
          + ", stackInfo=" + getDesiredStackId().getStackName());
    }
  }
Refresh Service info due to current stack
@throws AmbariException
ambari-server/src/main/java/org/apache/ambari/server/state/ServiceImpl.java