@Override
    public int hashCode() {
        int result = version;
        result = 31 * result + hits;
        result = 31 * result + lastAccessTime;
        result = 31 * result + lastUpdateTime;
        result = 31 * result + creationTime;
        result = 31 * result + lastStoredTime;
        return result;
    }
@Test
    public void testHashCode() {
        assertEquals(record.hashCode(), record.hashCode());
        assertEquals(record.hashCode(), recordSameAttributes.hashCode());

        assumeDifferentHashCodes();
        assertNotEquals(record.hashCode(), recordOtherVersion.hashCode());
        assertNotEquals(record.hashCode(), recordOtherCreationTime.hashCode());
        assertNotEquals(record.hashCode(), recordOtherHits.hashCode());
        assertNotEquals(record.hashCode(), recordOtherLastAccessTime.hashCode());
        assertNotEquals(record.hashCode(), recordOtherLastUpdateTime.hashCode());
    }