@Override
    public boolean equals(final Object o) {
        if (this == o) {
            return true;
        }
        if (o == null || getClass() != o.getClass()) {
            return false;
        }
        final IndexVolume that = (IndexVolume) o;
        return Objects.equals(id, that.id) && Objects.equals(version,
                that.version) && Objects.equals(createTimeMs, that.createTimeMs) && Objects.equals(
                createUser,
                that.createUser) && Objects.equals(updateTimeMs, that.updateTimeMs) && Objects.equals(
                updateUser,
                that.updateUser) && Objects.equals(path, that.path) && Objects.equals(nodeName,
                that.nodeName) && state == that.state && Objects.equals(bytesLimit,
                that.bytesLimit) && Objects.equals(bytesUsed, that.bytesUsed) && Objects.equals(
                bytesFree,
                that.bytesFree) && Objects.equals(bytesTotal, that.bytesTotal) && Objects.equals(
                statusMs,
                that.statusMs) && Objects.equals(indexVolumeGroupId, that.indexVolumeGroupId);
    }
@return The path the volume resides in. This may be a relative path in which case
it should be resolved relative to stroom.home before use.
stroom-core-shared/src/main/java/stroom/index/shared/IndexVolume.java