@Override
  public boolean equals(Object o) {
    if (this == o) {
      return true;
    }
    if (!(o instanceof MemberInformation)) {
      return false;
    }
    if (!super.equals(o)) {
      return false;
    }
    MemberInformation that = (MemberInformation) o;
    return getHeapUsage() == that.getHeapUsage() &&
        getMaxHeapSize() == that.getMaxHeapSize() &&
        getInitHeapSize() == that.getInitHeapSize() &&
        getProcessId() == that.getProcessId() &&
        getLocatorPort() == that.getLocatorPort() &&
        getHttpServicePort() == that.getHttpServicePort() &&
        isServer() == that.isServer() &&
        getClientCount() == that.getClientCount() &&
        Double.compare(that.getCpuUsage(), getCpuUsage()) == 0 &&
        isWebSSL() == that.isWebSSL() &&
        isSecured() == that.isSecured() &&
        isCoordinator() == that.isCoordinator() &&
        Objects.equals(getId(), that.getId()) &&
        Objects.equals(getWorkingDirPath(), that.getWorkingDirPath()) &&
        Objects.equals(getGroups(), that.getGroups()) &&
        Objects.equals(getLogFilePath(), that.getLogFilePath()) &&
        Objects.equals(getStatArchiveFilePath(), that.getStatArchiveFilePath()) &&
        Objects.equals(getServerBindAddress(), that.getServerBindAddress()) &&
        Objects.equals(getLocators(), that.getLocators()) &&
        Objects.equals(getStatus(), that.getStatus()) &&
        Objects.equals(getCacheXmlFilePath(), that.getCacheXmlFilePath()) &&
        Objects.equals(getHost(), that.getHost()) &&
        Objects.equals(getHttpServiceBindAddress(), that.getHttpServiceBindAddress()) &&
        Objects.equals(cacheServerList, that.cacheServerList) &&
        Objects.equals(getHostedRegions(), that.getHostedRegions()) &&
        Objects.equals(getOffHeapMemorySize(), that.getOffHeapMemorySize());
  }
Data class to hold the information of the member Used in describe member command
geode-management/src/main/java/org/apache/geode/management/runtime/MemberInformation.java