├── .gitignore ├── LICENSE ├── README.md ├── code ├── pom.xml └── src │ ├── main │ ├── java │ │ └── com │ │ │ └── github │ │ │ └── garychenc │ │ │ └── filemap │ │ │ ├── AbstractFileMap.java │ │ │ ├── FileMap.java │ │ │ ├── RepeatableKeyFileMap.java │ │ │ ├── UniqueKeyFileMap.java │ │ │ ├── store │ │ │ ├── Store.java │ │ │ ├── StoreEntry.java │ │ │ ├── StoreException.java │ │ │ ├── StoreIsFullException.java │ │ │ ├── StoreReader.java │ │ │ ├── StoreReaderException.java │ │ │ ├── StoreWriter.java │ │ │ ├── StoreWriterException.java │ │ │ ├── VersionConflictedException.java │ │ │ └── filestore │ │ │ │ ├── AddExceededMaxBucketsNumberException.java │ │ │ │ ├── BinaryFileStore.java │ │ │ │ ├── BinaryFileStoreConvertor.java │ │ │ │ ├── BinaryFileStoreKey.java │ │ │ │ ├── BinaryFileStoreValue.java │ │ │ │ ├── ContentStoreBlock.java │ │ │ │ ├── ContentStoreBlockException.java │ │ │ │ ├── ContentStoreBlockLengthExceedException.java │ │ │ │ ├── ContentStoreMaster.java │ │ │ │ ├── ContentStoreMasterException.java │ │ │ │ ├── ContentStoreSlave.java │ │ │ │ ├── ContentStoreSlaveException.java │ │ │ │ ├── ContentStoreSlaveIndex.java │ │ │ │ ├── ContentStoreSlaveStoreFile.java │ │ │ │ ├── ErrorEntryRemovedListener.java │ │ │ │ ├── ExceededMaxAllowedContentStoreSlavesNumber.java │ │ │ │ ├── FileBaseBinaryFileStoreConvertorImpl.java │ │ │ │ ├── FileBaseBinaryFileStoreKeyImpl.java │ │ │ │ ├── FileBaseBinaryFileStoreValueImpl.java │ │ │ │ ├── FileBaseContentStoreBlockImpl.java │ │ │ │ ├── FileBaseContentStoreMaster.java │ │ │ │ ├── FileBaseContentStoreSlave.java │ │ │ │ ├── IndexBucket.java │ │ │ │ ├── IndexGrid.java │ │ │ │ ├── LongStoreKey.java │ │ │ │ ├── MallocContentStoreSpaceException.java │ │ │ │ ├── ManagedStoreFileMetaData.java │ │ │ │ ├── SearchReachedMaxBucketsNumberException.java │ │ │ │ ├── StoreKey.java │ │ │ │ ├── StoreValue.java │ │ │ │ └── StringStoreKey.java │ │ │ └── util │ │ │ ├── Asserts.java │ │ │ ├── ByteArrayObjectInput.java │ │ │ ├── ByteArrayObjectOutput.java │ │ │ ├── DeleteDirectoryContentsFailedException.java │ │ │ ├── HexDumper.java │ │ │ ├── IOHelper.java │ │ │ ├── ObjectCache.java │ │ │ ├── ObjectCacheFactory.java │ │ │ ├── SerializationUtils.java │ │ │ ├── SimpleObjectCacheFactoryImpl.java │ │ │ ├── SimpleObjectCacheImpl.java │ │ │ └── Utils.java │ └── resources │ │ └── for-location.txt │ └── test │ ├── java │ └── com │ │ └── github │ │ └── garychenc │ │ └── filemap │ │ └── impl │ │ └── test │ │ ├── RepeatableKeyFileMapTest.java │ │ └── UniqueKeyFileMapTest.java │ └── resources │ └── for-location.txt └── doc └── img ├── Overview-1.png ├── Overview-2.png └── Sys-Arch.png /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/garychenc/file-map/HEAD/.gitignore -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/garychenc/file-map/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/garychenc/file-map/HEAD/README.md -------------------------------------------------------------------------------- /code/pom.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/garychenc/file-map/HEAD/code/pom.xml -------------------------------------------------------------------------------- /code/src/main/java/com/github/garychenc/filemap/AbstractFileMap.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/garychenc/file-map/HEAD/code/src/main/java/com/github/garychenc/filemap/AbstractFileMap.java -------------------------------------------------------------------------------- /code/src/main/java/com/github/garychenc/filemap/FileMap.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/garychenc/file-map/HEAD/code/src/main/java/com/github/garychenc/filemap/FileMap.java -------------------------------------------------------------------------------- /code/src/main/java/com/github/garychenc/filemap/RepeatableKeyFileMap.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/garychenc/file-map/HEAD/code/src/main/java/com/github/garychenc/filemap/RepeatableKeyFileMap.java -------------------------------------------------------------------------------- /code/src/main/java/com/github/garychenc/filemap/UniqueKeyFileMap.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/garychenc/file-map/HEAD/code/src/main/java/com/github/garychenc/filemap/UniqueKeyFileMap.java -------------------------------------------------------------------------------- /code/src/main/java/com/github/garychenc/filemap/store/Store.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/garychenc/file-map/HEAD/code/src/main/java/com/github/garychenc/filemap/store/Store.java -------------------------------------------------------------------------------- /code/src/main/java/com/github/garychenc/filemap/store/StoreEntry.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/garychenc/file-map/HEAD/code/src/main/java/com/github/garychenc/filemap/store/StoreEntry.java -------------------------------------------------------------------------------- /code/src/main/java/com/github/garychenc/filemap/store/StoreException.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/garychenc/file-map/HEAD/code/src/main/java/com/github/garychenc/filemap/store/StoreException.java -------------------------------------------------------------------------------- /code/src/main/java/com/github/garychenc/filemap/store/StoreIsFullException.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/garychenc/file-map/HEAD/code/src/main/java/com/github/garychenc/filemap/store/StoreIsFullException.java -------------------------------------------------------------------------------- /code/src/main/java/com/github/garychenc/filemap/store/StoreReader.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/garychenc/file-map/HEAD/code/src/main/java/com/github/garychenc/filemap/store/StoreReader.java -------------------------------------------------------------------------------- /code/src/main/java/com/github/garychenc/filemap/store/StoreReaderException.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/garychenc/file-map/HEAD/code/src/main/java/com/github/garychenc/filemap/store/StoreReaderException.java -------------------------------------------------------------------------------- /code/src/main/java/com/github/garychenc/filemap/store/StoreWriter.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/garychenc/file-map/HEAD/code/src/main/java/com/github/garychenc/filemap/store/StoreWriter.java -------------------------------------------------------------------------------- /code/src/main/java/com/github/garychenc/filemap/store/StoreWriterException.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/garychenc/file-map/HEAD/code/src/main/java/com/github/garychenc/filemap/store/StoreWriterException.java -------------------------------------------------------------------------------- /code/src/main/java/com/github/garychenc/filemap/store/VersionConflictedException.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/garychenc/file-map/HEAD/code/src/main/java/com/github/garychenc/filemap/store/VersionConflictedException.java -------------------------------------------------------------------------------- /code/src/main/java/com/github/garychenc/filemap/store/filestore/AddExceededMaxBucketsNumberException.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/garychenc/file-map/HEAD/code/src/main/java/com/github/garychenc/filemap/store/filestore/AddExceededMaxBucketsNumberException.java -------------------------------------------------------------------------------- /code/src/main/java/com/github/garychenc/filemap/store/filestore/BinaryFileStore.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/garychenc/file-map/HEAD/code/src/main/java/com/github/garychenc/filemap/store/filestore/BinaryFileStore.java -------------------------------------------------------------------------------- /code/src/main/java/com/github/garychenc/filemap/store/filestore/BinaryFileStoreConvertor.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/garychenc/file-map/HEAD/code/src/main/java/com/github/garychenc/filemap/store/filestore/BinaryFileStoreConvertor.java -------------------------------------------------------------------------------- /code/src/main/java/com/github/garychenc/filemap/store/filestore/BinaryFileStoreKey.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/garychenc/file-map/HEAD/code/src/main/java/com/github/garychenc/filemap/store/filestore/BinaryFileStoreKey.java -------------------------------------------------------------------------------- /code/src/main/java/com/github/garychenc/filemap/store/filestore/BinaryFileStoreValue.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/garychenc/file-map/HEAD/code/src/main/java/com/github/garychenc/filemap/store/filestore/BinaryFileStoreValue.java -------------------------------------------------------------------------------- /code/src/main/java/com/github/garychenc/filemap/store/filestore/ContentStoreBlock.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/garychenc/file-map/HEAD/code/src/main/java/com/github/garychenc/filemap/store/filestore/ContentStoreBlock.java -------------------------------------------------------------------------------- /code/src/main/java/com/github/garychenc/filemap/store/filestore/ContentStoreBlockException.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/garychenc/file-map/HEAD/code/src/main/java/com/github/garychenc/filemap/store/filestore/ContentStoreBlockException.java -------------------------------------------------------------------------------- /code/src/main/java/com/github/garychenc/filemap/store/filestore/ContentStoreBlockLengthExceedException.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/garychenc/file-map/HEAD/code/src/main/java/com/github/garychenc/filemap/store/filestore/ContentStoreBlockLengthExceedException.java -------------------------------------------------------------------------------- /code/src/main/java/com/github/garychenc/filemap/store/filestore/ContentStoreMaster.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/garychenc/file-map/HEAD/code/src/main/java/com/github/garychenc/filemap/store/filestore/ContentStoreMaster.java -------------------------------------------------------------------------------- /code/src/main/java/com/github/garychenc/filemap/store/filestore/ContentStoreMasterException.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/garychenc/file-map/HEAD/code/src/main/java/com/github/garychenc/filemap/store/filestore/ContentStoreMasterException.java -------------------------------------------------------------------------------- /code/src/main/java/com/github/garychenc/filemap/store/filestore/ContentStoreSlave.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/garychenc/file-map/HEAD/code/src/main/java/com/github/garychenc/filemap/store/filestore/ContentStoreSlave.java -------------------------------------------------------------------------------- /code/src/main/java/com/github/garychenc/filemap/store/filestore/ContentStoreSlaveException.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/garychenc/file-map/HEAD/code/src/main/java/com/github/garychenc/filemap/store/filestore/ContentStoreSlaveException.java -------------------------------------------------------------------------------- /code/src/main/java/com/github/garychenc/filemap/store/filestore/ContentStoreSlaveIndex.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/garychenc/file-map/HEAD/code/src/main/java/com/github/garychenc/filemap/store/filestore/ContentStoreSlaveIndex.java -------------------------------------------------------------------------------- /code/src/main/java/com/github/garychenc/filemap/store/filestore/ContentStoreSlaveStoreFile.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/garychenc/file-map/HEAD/code/src/main/java/com/github/garychenc/filemap/store/filestore/ContentStoreSlaveStoreFile.java -------------------------------------------------------------------------------- /code/src/main/java/com/github/garychenc/filemap/store/filestore/ErrorEntryRemovedListener.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/garychenc/file-map/HEAD/code/src/main/java/com/github/garychenc/filemap/store/filestore/ErrorEntryRemovedListener.java -------------------------------------------------------------------------------- /code/src/main/java/com/github/garychenc/filemap/store/filestore/ExceededMaxAllowedContentStoreSlavesNumber.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/garychenc/file-map/HEAD/code/src/main/java/com/github/garychenc/filemap/store/filestore/ExceededMaxAllowedContentStoreSlavesNumber.java -------------------------------------------------------------------------------- /code/src/main/java/com/github/garychenc/filemap/store/filestore/FileBaseBinaryFileStoreConvertorImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/garychenc/file-map/HEAD/code/src/main/java/com/github/garychenc/filemap/store/filestore/FileBaseBinaryFileStoreConvertorImpl.java -------------------------------------------------------------------------------- /code/src/main/java/com/github/garychenc/filemap/store/filestore/FileBaseBinaryFileStoreKeyImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/garychenc/file-map/HEAD/code/src/main/java/com/github/garychenc/filemap/store/filestore/FileBaseBinaryFileStoreKeyImpl.java -------------------------------------------------------------------------------- /code/src/main/java/com/github/garychenc/filemap/store/filestore/FileBaseBinaryFileStoreValueImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/garychenc/file-map/HEAD/code/src/main/java/com/github/garychenc/filemap/store/filestore/FileBaseBinaryFileStoreValueImpl.java -------------------------------------------------------------------------------- /code/src/main/java/com/github/garychenc/filemap/store/filestore/FileBaseContentStoreBlockImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/garychenc/file-map/HEAD/code/src/main/java/com/github/garychenc/filemap/store/filestore/FileBaseContentStoreBlockImpl.java -------------------------------------------------------------------------------- /code/src/main/java/com/github/garychenc/filemap/store/filestore/FileBaseContentStoreMaster.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/garychenc/file-map/HEAD/code/src/main/java/com/github/garychenc/filemap/store/filestore/FileBaseContentStoreMaster.java -------------------------------------------------------------------------------- /code/src/main/java/com/github/garychenc/filemap/store/filestore/FileBaseContentStoreSlave.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/garychenc/file-map/HEAD/code/src/main/java/com/github/garychenc/filemap/store/filestore/FileBaseContentStoreSlave.java -------------------------------------------------------------------------------- /code/src/main/java/com/github/garychenc/filemap/store/filestore/IndexBucket.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/garychenc/file-map/HEAD/code/src/main/java/com/github/garychenc/filemap/store/filestore/IndexBucket.java -------------------------------------------------------------------------------- /code/src/main/java/com/github/garychenc/filemap/store/filestore/IndexGrid.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/garychenc/file-map/HEAD/code/src/main/java/com/github/garychenc/filemap/store/filestore/IndexGrid.java -------------------------------------------------------------------------------- /code/src/main/java/com/github/garychenc/filemap/store/filestore/LongStoreKey.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/garychenc/file-map/HEAD/code/src/main/java/com/github/garychenc/filemap/store/filestore/LongStoreKey.java -------------------------------------------------------------------------------- /code/src/main/java/com/github/garychenc/filemap/store/filestore/MallocContentStoreSpaceException.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/garychenc/file-map/HEAD/code/src/main/java/com/github/garychenc/filemap/store/filestore/MallocContentStoreSpaceException.java -------------------------------------------------------------------------------- /code/src/main/java/com/github/garychenc/filemap/store/filestore/ManagedStoreFileMetaData.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/garychenc/file-map/HEAD/code/src/main/java/com/github/garychenc/filemap/store/filestore/ManagedStoreFileMetaData.java -------------------------------------------------------------------------------- /code/src/main/java/com/github/garychenc/filemap/store/filestore/SearchReachedMaxBucketsNumberException.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/garychenc/file-map/HEAD/code/src/main/java/com/github/garychenc/filemap/store/filestore/SearchReachedMaxBucketsNumberException.java -------------------------------------------------------------------------------- /code/src/main/java/com/github/garychenc/filemap/store/filestore/StoreKey.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/garychenc/file-map/HEAD/code/src/main/java/com/github/garychenc/filemap/store/filestore/StoreKey.java -------------------------------------------------------------------------------- /code/src/main/java/com/github/garychenc/filemap/store/filestore/StoreValue.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/garychenc/file-map/HEAD/code/src/main/java/com/github/garychenc/filemap/store/filestore/StoreValue.java -------------------------------------------------------------------------------- /code/src/main/java/com/github/garychenc/filemap/store/filestore/StringStoreKey.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/garychenc/file-map/HEAD/code/src/main/java/com/github/garychenc/filemap/store/filestore/StringStoreKey.java -------------------------------------------------------------------------------- /code/src/main/java/com/github/garychenc/filemap/util/Asserts.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/garychenc/file-map/HEAD/code/src/main/java/com/github/garychenc/filemap/util/Asserts.java -------------------------------------------------------------------------------- /code/src/main/java/com/github/garychenc/filemap/util/ByteArrayObjectInput.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/garychenc/file-map/HEAD/code/src/main/java/com/github/garychenc/filemap/util/ByteArrayObjectInput.java -------------------------------------------------------------------------------- /code/src/main/java/com/github/garychenc/filemap/util/ByteArrayObjectOutput.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/garychenc/file-map/HEAD/code/src/main/java/com/github/garychenc/filemap/util/ByteArrayObjectOutput.java -------------------------------------------------------------------------------- /code/src/main/java/com/github/garychenc/filemap/util/DeleteDirectoryContentsFailedException.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/garychenc/file-map/HEAD/code/src/main/java/com/github/garychenc/filemap/util/DeleteDirectoryContentsFailedException.java -------------------------------------------------------------------------------- /code/src/main/java/com/github/garychenc/filemap/util/HexDumper.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/garychenc/file-map/HEAD/code/src/main/java/com/github/garychenc/filemap/util/HexDumper.java -------------------------------------------------------------------------------- /code/src/main/java/com/github/garychenc/filemap/util/IOHelper.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/garychenc/file-map/HEAD/code/src/main/java/com/github/garychenc/filemap/util/IOHelper.java -------------------------------------------------------------------------------- /code/src/main/java/com/github/garychenc/filemap/util/ObjectCache.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/garychenc/file-map/HEAD/code/src/main/java/com/github/garychenc/filemap/util/ObjectCache.java -------------------------------------------------------------------------------- /code/src/main/java/com/github/garychenc/filemap/util/ObjectCacheFactory.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/garychenc/file-map/HEAD/code/src/main/java/com/github/garychenc/filemap/util/ObjectCacheFactory.java -------------------------------------------------------------------------------- /code/src/main/java/com/github/garychenc/filemap/util/SerializationUtils.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/garychenc/file-map/HEAD/code/src/main/java/com/github/garychenc/filemap/util/SerializationUtils.java -------------------------------------------------------------------------------- /code/src/main/java/com/github/garychenc/filemap/util/SimpleObjectCacheFactoryImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/garychenc/file-map/HEAD/code/src/main/java/com/github/garychenc/filemap/util/SimpleObjectCacheFactoryImpl.java -------------------------------------------------------------------------------- /code/src/main/java/com/github/garychenc/filemap/util/SimpleObjectCacheImpl.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/garychenc/file-map/HEAD/code/src/main/java/com/github/garychenc/filemap/util/SimpleObjectCacheImpl.java -------------------------------------------------------------------------------- /code/src/main/java/com/github/garychenc/filemap/util/Utils.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/garychenc/file-map/HEAD/code/src/main/java/com/github/garychenc/filemap/util/Utils.java -------------------------------------------------------------------------------- /code/src/main/resources/for-location.txt: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /code/src/test/java/com/github/garychenc/filemap/impl/test/RepeatableKeyFileMapTest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/garychenc/file-map/HEAD/code/src/test/java/com/github/garychenc/filemap/impl/test/RepeatableKeyFileMapTest.java -------------------------------------------------------------------------------- /code/src/test/java/com/github/garychenc/filemap/impl/test/UniqueKeyFileMapTest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/garychenc/file-map/HEAD/code/src/test/java/com/github/garychenc/filemap/impl/test/UniqueKeyFileMapTest.java -------------------------------------------------------------------------------- /code/src/test/resources/for-location.txt: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /doc/img/Overview-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/garychenc/file-map/HEAD/doc/img/Overview-1.png -------------------------------------------------------------------------------- /doc/img/Overview-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/garychenc/file-map/HEAD/doc/img/Overview-2.png -------------------------------------------------------------------------------- /doc/img/Sys-Arch.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/garychenc/file-map/HEAD/doc/img/Sys-Arch.png --------------------------------------------------------------------------------