public boolean equals()

in messages/src/main/java/com/epam/deltix/timebase/messages/service/ErrorMessage.java [265:312]


  public boolean equals(Object obj) {
    if (this == obj) return true;
    boolean superEquals = super.equals(obj);
    if (!superEquals) return false;
    if (!(obj instanceof ErrorMessage)) return false;
    ErrorMessage other =(ErrorMessage)obj;
    if (hasErrorType() != other.hasErrorType()) return false;
    if (hasErrorType()) {
      if (getErrorType().length() != other.getErrorType().length()) return false; else {
        CharSequence s1 = getErrorType();
        CharSequence s2 = other.getErrorType();
        if ((s1 instanceof MutableString && s2 instanceof MutableString) || (s1 instanceof String && s2 instanceof String) || (s1 instanceof BinaryAsciiString && s2 instanceof BinaryAsciiString)) {
          if (!s1.equals(s2)) return false;
        } else {
          if (!CharSequenceUtils.equals(s1, s2)) return false;
        }
      }
    }
    if (hasSeqNum() != other.hasSeqNum()) return false;
    if (hasSeqNum() && getSeqNum() != other.getSeqNum()) return false;
    if (hasLevel() != other.hasLevel()) return false;
    if (hasLevel() && getLevel() != other.getLevel()) return false;
    if (hasMessageText() != other.hasMessageText()) return false;
    if (hasMessageText()) {
      if (getMessageText().length() != other.getMessageText().length()) return false; else {
        CharSequence s1 = getMessageText();
        CharSequence s2 = other.getMessageText();
        if ((s1 instanceof MutableString && s2 instanceof MutableString) || (s1 instanceof String && s2 instanceof String) || (s1 instanceof BinaryAsciiString && s2 instanceof BinaryAsciiString)) {
          if (!s1.equals(s2)) return false;
        } else {
          if (!CharSequenceUtils.equals(s1, s2)) return false;
        }
      }
    }
    if (hasDetails() != other.hasDetails()) return false;
    if (hasDetails()) {
      if (getDetails().length() != other.getDetails().length()) return false; else {
        CharSequence s1 = getDetails();
        CharSequence s2 = other.getDetails();
        if ((s1 instanceof MutableString && s2 instanceof MutableString) || (s1 instanceof String && s2 instanceof String) || (s1 instanceof BinaryAsciiString && s2 instanceof BinaryAsciiString)) {
          if (!s1.equals(s2)) return false;
        } else {
          if (!CharSequenceUtils.equals(s1, s2)) return false;
        }
      }
    }
    return true;
  }