public int compareTo(Object obj) {
    if (obj == null) {
      return (-1);
    } else if (obj instanceof CFInternetMinorVersionBuff) {
      CFInternetMinorVersionBuff rhs = (CFInternetMinorVersionBuff) obj;
      int retval = super.compareTo(rhs);
      if (retval != 0) {
        return (retval);
      }
      if (getRequiredMajorId() < rhs.getRequiredMajorId()) {
        return (-1);
      } else if (getRequiredMajorId() > rhs.getRequiredMajorId()) {
        return (1);
      }
      {
        int cmp = getRequiredName().compareTo(rhs.getRequiredName());
        if (cmp != 0) {
          return (cmp);
        }
      }
      return (0);
    } else if (obj instanceof CFInternetDomainBasePKey) {
      CFInternetDomainBasePKey rhs = (CFInternetDomainBasePKey) obj;
      if (getRequiredTenantId() < rhs.getRequiredTenantId()) {
        return (-1);
      } else if (getRequiredTenantId() > rhs.getRequiredTenantId()) {
        return (1);
      }
      if (getRequiredId() < rhs.getRequiredId()) {
        return (-1);
      } else if (getRequiredId() > rhs.getRequiredId()) {
        return (1);
      }
      return (0);
    } else if (obj instanceof CFInternetDomainBaseHPKey) {
      CFInternetDomainBaseHPKey rhs = (CFInternetDomainBaseHPKey) obj;
      {
        int lhsRequiredRevision = getRequiredRevision();
        int rhsRequiredRevision = rhs.getRequiredRevision();
        if (lhsRequiredRevision < rhsRequiredRevision) {
          return (-1);
        } else if (lhsRequiredRevision > rhsRequiredRevision) {
          return (1);
        }
      }
      if (getRequiredTenantId() < rhs.getRequiredTenantId()) {
        return (-1);
      } else if (getRequiredTenantId() > rhs.getRequiredTenantId()) {
        return (1);
      }
      if (getRequiredId() < rhs.getRequiredId()) {
        return (-1);
      } else if (getRequiredId() > rhs.getRequiredId()) {
        return (1);
      }
      return (0);
    } else if (obj instanceof CFInternetMinorVersionHBuff) {
      CFInternetMinorVersionHBuff rhs = (CFInternetMinorVersionHBuff) obj;
      int retval = super.compareTo(rhs);
      if (retval != 0) {
        return (retval);
      }
      if (getRequiredMajorId() < rhs.getRequiredMajorId()) {
        return (-1);
      } else if (getRequiredMajorId() > rhs.getRequiredMajorId()) {
        return (1);
      }
      {
        int cmp = getRequiredName().compareTo(rhs.getRequiredName());
        if (cmp != 0) {
          return (cmp);
        }
      }
      return (0);
    } else if (obj instanceof CFInternetMinorVersionByMajorIdxKey) {
      CFInternetMinorVersionByMajorIdxKey rhs = (CFInternetMinorVersionByMajorIdxKey) obj;

      if (getRequiredTenantId() < rhs.getRequiredTenantId()) {
        return (-1);
      } else if (getRequiredTenantId() > rhs.getRequiredTenantId()) {
        return (1);
      }
      if (getRequiredMajorId() < rhs.getRequiredMajorId()) {
        return (-1);
      } else if (getRequiredMajorId() > rhs.getRequiredMajorId()) {
        return (1);
      }
      return (0);
    } else if (obj instanceof CFInternetMinorVersionByNameIdxKey) {
      CFInternetMinorVersionByNameIdxKey rhs = (CFInternetMinorVersionByNameIdxKey) obj;

      if (getRequiredTenantId() < rhs.getRequiredTenantId()) {
        return (-1);
      } else if (getRequiredTenantId() > rhs.getRequiredTenantId()) {
        return (1);
      }
      if (getRequiredMajorId() < rhs.getRequiredMajorId()) {
        return (-1);
      } else if (getRequiredMajorId() > rhs.getRequiredMajorId()) {
        return (1);
      }
      {
        int cmp = getRequiredName().compareTo(rhs.getRequiredName());
        if (cmp != 0) {
          return (cmp);
        }
      }
      return (0);
    } else {
      int retval = super.compareTo(obj);
      return (retval);
    }
  }