public class IndexedStorageFile implements Closeable
Class IndexedStorageFile. Provides indexedstoragefile functionality for the Hytale server.
java.lang.Object > IndexedStorageFile
Field Summary
flushOnWrite
Field flushOnWrite.
compressionLevel
Field compressionLevel.
version
Field version.
blobCount
Field blobCount.
segmentSize
Field segmentSize.
indexLocks
Field indexLocks.
mappedBlobIndexes
Field mappedBlobIndexes.
segmentLocks
Field segmentLocks.
buffer
Field buffer.
tempFile
Field tempFile.
tempPath
Field tempPath.
newOptions
Field newOptions.
blob
Field blob.
header
Field header.
dst
Field dst.
stamp
Field stamp.
indexPos
Field indexPos.
segmentStamp
Field segmentStamp.
blobHeaderBuffer
Field blobHeaderBuffer.
segmentsCount
Field segmentsCount.
count
Field count.
list
Field list.
lock
Field lock.
segmentIndex
Field segmentIndex.
firstSegmentIndex
Field firstSegmentIndex.
compressedLength
Field compressedLength.
tempDest
Field tempDest.
segmentPosition
Field segmentPosition.
srcLength
Field srcLength.
maxCompressedLength
Field maxCompressedLength.
dest
Field dest.
tempSrc
Field tempSrc.
oldFirstSegmentIndex
Field oldFirstSegmentIndex.
oldCompressedLength
Field oldCompressedLength.
usedSegmentsStamp
Field usedSegmentsStamp.
oldSegmentLength
Field oldSegmentLength.
dataRemaining
Field dataRemaining.
segmentLock
Field segmentLock.
stamps
Field stamps.
indexesStamp
Field indexesStamp.
newLength
Field newLength.
newArray
Field newArray.
segmentOffset
Field segmentOffset.
index
Field index.
cur
Field cur.
Method Detail
getTempBuffer
ByteBuffer
getTempBuffer
(final int length)
Method getTempBuffer.
- Parameters:
final intlength
allocateDirect
ByteBuffer
allocateDirect
(final int length)
Method allocateDirect.
- Parameters:
final intlength
open
Method open.
- Parameters:
@Nonnull final Pathpathfinal OpenOption...options
IndexedStorageFile
new
IndexedStorageFile
(path, FileChannel.open(path, options, attrs)
Method IndexedStorageFile.
- Parameters:
pathpathFileChannel.open(pathFileChannel.open(pathoptionsoptionsattrsattrs
migrateV0
IndexedStorageFile
migrateV0
(final Path path, final int blobCount, final int segmentSize, final Set extends OpenOption> options, final FileAttribute>[] attrs, IndexedStorageFile storageFile)
Method migrateV0.
- Parameters:
final Pathpathfinal intblobCountfinal intsegmentSizefinal Set extends OpenOption>optionsfinal FileAttribute>[]attrsIndexedStorageFilestorageFile
IndexedStorageFile_v0
new
IndexedStorageFile_v0
(tempPath, FileChannel.open(tempPath, options, attrs)
Method IndexedStorageFile_v0.
- Parameters:
tempPathtempPathFileChannel.open(tempPathFileChannel.open(tempPathoptionsoptionsattrsattrs
getPath
Path
getPath
()
Method getPath.
getBlobCount
int
getBlobCount
()
Method getBlobCount.
getSegmentSize
int
getSegmentSize
()
Method getSegmentSize.
getCompressionLevel
int
getCompressionLevel
()
Method getCompressionLevel.
setFlushOnWrite
void
setFlushOnWrite
(final boolean flushOnWrite)
Method setFlushOnWrite.
- Parameters:
final booleanflushOnWrite
setCompressionLevel
void
setCompressionLevel
(final int compressionLevel)
Method setCompressionLevel.
- Parameters:
final intcompressionLevel
create
Method create.
- Parameters:
final intblobCountfinal intsegmentSize
writeHeader
void
writeHeader
(final int blobCount, final int segmentSize)
Method writeHeader.
- Parameters:
final intblobCountfinal intsegmentSize
readHeader
void
readHeader
()
Method readHeader.
memoryMapBlobIndexes
void
memoryMapBlobIndexes
()
Method memoryMapBlobIndexes.
readUsedSegments
void
readUsedSegments
()
Method readUsedSegments.
size
long
size
()
Method size.
segmentSize
int
segmentSize
()
Method segmentSize.
segmentCount
int
segmentCount
()
Method segmentCount.
keys
IntList
keys
()
Method keys.
readBlobLength
int
readBlobLength
(final int blobIndex)
Method readBlobLength.
- Parameters:
final intblobIndex
readBlobCompressedLength
int
readBlobCompressedLength
(final int blobIndex)
Method readBlobCompressedLength.
- Parameters:
final intblobIndex
readBlob
ByteBuffer
readBlob
(final int blobIndex)
Method readBlob.
- Parameters:
final intblobIndex
readBlobHeader
ByteBuffer
readBlobHeader
(final int firstSegmentIndex)
Method readBlobHeader.
- Parameters:
final intfirstSegmentIndex
readSegments
ByteBuffer
readSegments
(final int firstSegmentIndex, final int compressedLength)
Method readSegments.
- Parameters:
final intfirstSegmentIndexfinal intcompressedLength
writeBlob
void
writeBlob
(final int blobIndex, @Nonnull final ByteBuffer src)
Method writeBlob.
- Parameters:
final intblobIndex@Nonnull final ByteBuffersrc
removeBlob
void
removeBlob
(final int blobIndex)
Method removeBlob.
- Parameters:
final intblobIndex
writeSegments
int
writeSegments
(@Nonnull final ByteBuffer data)
Method writeSegments.
- Parameters:
@Nonnull final ByteBufferdata
findFreeSegment
SegmentRangeWriteLock
findFreeSegment
(final int count)
Method findFreeSegment.
- Parameters:
final intcount
getSegmentLock
StampedLock
getSegmentLock
(final int segmentIndex)
Method getSegmentLock.
- Parameters:
final intsegmentIndex
segmentsBase
long
segmentsBase
()
Method segmentsBase.
segmentOffset
long
segmentOffset
(final int segmentIndex)
Method segmentOffset.
- Parameters:
final intsegmentIndex
segmentPosition
long
segmentPosition
(final int segmentIndex)
Method segmentPosition.
- Parameters:
final intsegmentIndex
positionToSegment
int
positionToSegment
(final long position)
Method positionToSegment.
- Parameters:
final longposition
requiredSegments
int
requiredSegments
(final long dataLength)
Method requiredSegments.
- Parameters:
final longdataLength
lock
FileLock
lock
()
Method lock.
force
void
force
(final boolean metaData)
Method force.
- Parameters:
final booleanmetaData
close
void
close
()
Method close.
toString
String
toString
()
Method toString.
next
int
next
(final int len)
Method next.
- Parameters:
final intlen
length
int
length
()
Method length.
unlock
void
unlock
()
Method unlock.