@Override
    public boolean equals(Object o) {
      if (this == o) return true;
      if (o == null || getClass() != o.getClass()) return false;

      AlertDefinitionSummary that = (AlertDefinitionSummary) o;

      if (Id != that.Id) return false;
      if (Name != null ? !Name.equals(that.Name) : that.Name != null) return false;
      return State != null ? State.equals(that.State) : that.State == null;
    }
The {@link AlertDefinitionSummary} is a simple data structure for keeping
track of each alert definition's summary information as the result set is
being iterated over.
ambari-server/src/main/java/org/apache/ambari/server/api/query/render/AlertSummaryGroupedRenderer.java