Package de.regnis.q.sequence.line
Class QSequenceLineFileSystemCacheSegments
java.lang.Object
de.regnis.q.sequence.line.QSequenceLineFileSystemCacheSegments
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate RandomAccessFileprivate Fileprivate final intprivate final intprivate final Listprivate final Listprivate final QSequenceLineTempDirectoryFactory -
Constructor Summary
ConstructorsConstructorDescriptionQSequenceLineFileSystemCacheSegments(QSequenceLineTempDirectoryFactory tempDirectoryFactory, int maximumBytesInMemory, int segmentBytesSize) -
Method Summary
Modifier and TypeMethodDescriptionvoidclose()private RandomAccessFilegetFile()longgetFrom(int index) intgetHash(int index) intgetLength(int index) getSegment(int segmentIndex) private voidvoidsetFromLengthHash(int index, long from, int length, int hash)
-
Field Details
-
tempDirectoryFactory
-
maximumEntriesPerSegment
private final int maximumEntriesPerSegment -
maximumSegmentsInMemory
private final int maximumSegmentsInMemory -
segments
-
memorySegments
-
filePath
-
file
-
-
Constructor Details
-
QSequenceLineFileSystemCacheSegments
public QSequenceLineFileSystemCacheSegments(QSequenceLineTempDirectoryFactory tempDirectoryFactory, int maximumBytesInMemory, int segmentBytesSize)
-
-
Method Details
-
getFrom
- Throws:
IOException
-
getLength
- Throws:
IOException
-
getHash
- Throws:
IOException
-
setFromLengthHash
- Throws:
IOException
-
close
- Throws:
IOException
-
getSegment
- Throws:
IOException
-
maybeUnloadSegments
- Throws:
IOException
-
getFile
- Throws:
IOException
-