@Override public boolean equals(Object obj) { if (this == obj) { return true; } if (!(obj instanceof DiskImage)) { return false; } DiskImage other = (DiskImage) obj; return super.equals(obj) && Objects.equals(getImage(), other.getImage()) && Objects.equals(snapshots, other.snapshots) && actualSizeInBytes == other.actualSizeInBytes && Objects.equals(appList, other.appList) && Objects.equals(description, other.description) && readRateFromDiskImageDynamic == other.readRateFromDiskImageDynamic && Objects.equals(storageIds, other.storageIds) && Objects.equals(storagePoolId, other.storagePoolId) && Objects.equals(storagesNames, other.storagesNames) && writeRateFromDiskImageDynamic == other.writeRateFromDiskImageDynamic && Objects.equals(readLatency, other.readLatency) && Objects.equals(writeLatency, other.writeLatency) && Objects.equals(flushLatency, other.flushLatency) && ObjectUtils.haveSameElements(diskProfileIds, other.diskProfileIds) && ObjectUtils.haveSameElements(diskProfileNames, other.diskProfileNames); }