@Override
    public boolean equals(final Object o) {
        if (this == o) {
            return true;
        }
        if (o == null || getClass() != o.getClass()) {
            return false;
        }
        if (!super.equals(o)) {
            return false;
        }
        final StateDoc doc = (StateDoc) o;
        return condense == doc.condense &&
               condenseAge == doc.condenseAge &&
               retainForever == doc.retainForever &&
               retainAge == doc.retainAge &&
               Objects.equals(scyllaDbRef, doc.scyllaDbRef) &&
               Objects.equals(description, doc.description) &&
               stateType == doc.stateType &&
               condenseTimeUnit == doc.condenseTimeUnit &&
               retainTimeUnit == doc.retainTimeUnit;
    }
@return A new builder for creating a {@link DocRef} for this document's type.
stroom-core-shared/src/main/java/stroom/state/shared/StateDoc.java