@Override
    public boolean equals(final Object object) {
        if (this == object) {
            return true;
        }
        if (object == null || getClass() != object.getClass()) {
            return false;
        }
        final DocPath docPath = (DocPath) object;
        return Objects.equals(parentParts, docPath.parentParts)
               && Objects.equals(leafPart, docPath.leafPart)
               && absolute == docPath.absolute;
    }
@return The parent part name from a doc path, i.e. "Farm" from "Animals/Farm/Horse".
Throws a {@link RuntimeException} if the path is empty or there is no parent.
stroom-util-shared/src/main/java/stroom/util/shared/DocPath.java