Skip to content
This repository has been archived by the owner on Mar 3, 2024. It is now read-only.

Commit

Permalink
Fixed codeclimate
Browse files Browse the repository at this point in the history
  • Loading branch information
persehoney committed Dec 30, 2023
1 parent 2961baa commit f9f5780
Show file tree
Hide file tree
Showing 3 changed files with 26 additions and 15 deletions.
7 changes: 4 additions & 3 deletions src/main/java/ru/vk/itmo/solnyshkoksenia/State.java
Original file line number Diff line number Diff line change
Expand Up @@ -121,7 +121,7 @@ public Entry<MemorySegment> get(MemorySegment key, Comparator<MemorySegment> com
}
EntryExtended<MemorySegment> next = iterator.next();
if (comparator.compare(next.key(), key) == 0 && isValidEntry(next)) {
return next;
return next;
}
return null;
}
Expand All @@ -131,8 +131,9 @@ private boolean isValidEntry(EntryExtended<MemorySegment> entry) {
|| entry.expiration().toArray(ValueLayout.JAVA_LONG_UNALIGNED)[0] > System.currentTimeMillis());
}

protected Iterator<EntryExtended<MemorySegment>> getInMemory(NavigableMap<MemorySegment, EntryExtended<MemorySegment>> memory,
MemorySegment from, MemorySegment to) {
protected Iterator<EntryExtended<MemorySegment>> getInMemory(
NavigableMap<MemorySegment, EntryExtended<MemorySegment>> memory,
MemorySegment from, MemorySegment to) {
if (from == null && to == null) {
return memory.values().iterator();
}
Expand Down
20 changes: 8 additions & 12 deletions src/main/java/ru/vk/itmo/solnyshkoksenia/storage/DiskStorage.java
Original file line number Diff line number Diff line change
Expand Up @@ -72,22 +72,17 @@ public void save(Iterable<EntryExtended<MemorySegment>> iterable)
String newFileName = String.valueOf(existedFiles.size());

final long currentTime = System.currentTimeMillis();
long dataSize = 0;
long count = 0;

Entry<Long> sizes = new BaseEntry<>(0L, 0L);
for (EntryExtended<MemorySegment> entry : iterable) {
MemorySegment expiration = entry.expiration();
if (expiration == null || utils.checkTTL(expiration, currentTime)) {
dataSize += entry.key().byteSize();
MemorySegment value = entry.value();
if (value != null) {
dataSize += value.byteSize();
}
if (expiration != null) {
dataSize += expiration.byteSize();
}
count++;
sizes = utils.countEntrySize(entry, sizes);
}
}
long dataSize = sizes.key();
long count = sizes.value();

if (count == 0) {
return;
}
Expand Down Expand Up @@ -240,7 +235,8 @@ public static List<MemorySegment> loadOrRecover(Path storagePath, Arena arena) t
return result;
}

private static Iterator<EntryExtended<MemorySegment>> iterator(MemorySegment page, MemorySegment from, MemorySegment to) {
private static Iterator<EntryExtended<MemorySegment>> iterator(MemorySegment page,
MemorySegment from, MemorySegment to) {
long recordIndexFrom = from == null ? 0 : utils.normalize(utils.indexOf(page, from));
long recordIndexTo = to == null ? utils.recordsCount(page) : utils.normalize(utils.indexOf(page, to));
long recordsCount = utils.recordsCount(page);
Expand Down
14 changes: 14 additions & 0 deletions src/main/java/ru/vk/itmo/solnyshkoksenia/storage/StorageUtils.java
Original file line number Diff line number Diff line change
Expand Up @@ -64,6 +64,20 @@ protected MemorySegment mapFile(FileChannel fileChannel, long size, Arena arena)
);
}

protected Entry<Long> countEntrySize(EntryExtended<MemorySegment> entry, Entry<Long> sizes) {
long dataSize = sizes.key();
dataSize += entry.key().byteSize();
MemorySegment value = entry.value();
if (value != null) {
dataSize += value.byteSize();
}
MemorySegment expiration = entry.expiration();
if (expiration != null) {
dataSize += expiration.byteSize();
}
return new BaseEntry<>(dataSize, sizes.value() + 1);
}

protected Entry<Long> putEntry(MemorySegment fileSegment, Entry<Long> offsets, EntryExtended<MemorySegment> entry) {
long dataOffset = offsets.key();
long indexOffset = offsets.value();
Expand Down

0 comments on commit f9f5780

Please sign in to comment.