@Override
    public boolean equals(Object o) {
        if (this == o) return true;
        if (!(o instanceof DocumentState)) return false;

        DocumentState that = (DocumentState) o;

        if (removeEntry != that.removeEntry) return false;
        if (timestamp != that.timestamp) return false;
        if (docId != null ? !docId.equals(that.docId) : that.docId != null) return false;
        return gid.equals(that.gid);
    }
@author <a href="mailto:einarmr@yahoo-inc.com">Einar M R Rosenvinge</a>
documentapi/src/main/java/com/yahoo/documentapi/messagebus/protocol/DocumentState.java