Liking cljdoc? Tell your friends :D

konserve.impl.storage-layout

One of these protocols must be implemented by each store to provide low level access depending on the low-level storage layout chosen. Stores can support multiple layouts.

One of these protocols must be implemented by each store to provide low level
access depending on the low-level storage layout chosen. Stores can support
multiple layouts.
raw docstring

create-headerclj/s

(create-header version serializer compressor encryptor meta)

Return Byte Array with following content 1th Byte = Storage layout used 2th Byte = Serializer Type 3th Byte = Compressor Type 4th Byte = Encryptor Type 5-8th Byte = Meta-Size 9th-20th Byte are spare

Return Byte Array with following content
   1th Byte = Storage layout used
   2th Byte = Serializer Type
   3th Byte = Compressor Type
   4th Byte = Encryptor Type
 5-8th Byte = Meta-Size
9th-20th Byte are spare
sourceraw docstring

default-versionclj/s

source

header-not-zero-padded?clj/s

(header-not-zero-padded? bs)
source

header-sizeclj/s

source

parse-headerclj/s

(parse-header header-bytes serializers)

Inverse function to create-header. serializers are a map of serializer-id to instance that are potentially initialized with custom handlers by the store user. We assume compressors and encryptors to use system-wide standard configurations.

Inverse function to create-header. serializers are a map of serializer-id to
instance that are potentially initialized with custom handlers by the store
user. We assume compressors and encryptors to use system-wide standard configurations.
sourceraw docstring

PBackingBlobclj/sprotocol

Blob object that is backing a stored value and its metadata.

Blob object that is backing a stored value and its metadata.

-read-binaryclj/s

(-read-binary this meta-size locked-cb env)

Read binary object and pass to locked-cb.

Read binary object and pass to locked-cb.

-get-lockclj/s

(-get-lock this env)

Acquire a store specific lock on the blob. This is needed for access to the store from concurrent processes.

Acquire a store specific lock on the blob. This is needed for access to the store from concurrent processes.

-read-metaclj/s

(-read-meta this meta-size env)

Read metadata array.

Read metadata array.

-syncclj/s

(-sync this env)

Synchronize this object and ensure it is stored. This is not necessary in many stores.

Synchronize this object and ensure it is stored. This is not necessary in many stores.

-read-headerclj/s

(-read-header this env)

Read header array.

Read header array.

-closeclj/s

(-close this env)

Close the blob and ensure that pending data is send to the store.

Close the blob and ensure that pending data is send to the store.

-write-metaclj/s

(-write-meta this meta-arr env)

Write metadata array.

Write metadata array.

-write-valueclj/s

(-write-value this value-arr meta-size env)

Write value array.

Write value array.

-read-valueclj/s

(-read-value this meta-size env)

Read serialized edn value array.

Read serialized edn value array.

-write-headerclj/s

(-write-header this header-arr env)

Write header array.

Write header array.

-write-binaryclj/s

(-write-binary this meta-size blob env)

Write binary blob.

Write binary blob.
sourceraw docstring

PBackingLockclj/sprotocol

-releaseclj/s

(-release this env)

Release this lock.

Release this lock.
source

PBackingStoreclj/sprotocol

Backing store protocol for default implementation of the high-level konserve protocol.

Backing store protocol for default implementation of the high-level konserve protocol.

-copyclj/s

(-copy this from to env)

Copy a blob from one key to another.

Copy a blob from one key to another.

-handle-foreign-keyclj/s

(-handle-foreign-key this
                     migration-key
                     serializer
                     read-handlers
                     write-handlers
                     env)

Handle keys not recognized by the current konserve version.

Handle keys not recognized by the current konserve version.

-create-blobclj/s

(-create-blob this store-key env)

Create a blob object to write a metadata and value into.

Create a blob object to write a metadata and value into.

-create-storeclj/s

(-create-store this env)

Create the underlying store.

Create the underlying store.

-migratableclj/s

(-migratable this key store-key env)

Check if blob exists elsewhere and return a migration key or nil.

Check if blob exists elsewhere and return a migration key or nil.

-keysclj/s

(-keys this env)

List all the keys representing blobs in the store.

List all the keys representing blobs in the store.

-delete-storeclj/s

(-delete-store this env)

Delete the underlying store.

Delete the underlying store.

-blob-exists?clj/s

(-blob-exists? this store-key env)

Check whether blob exists under path

Check whether blob exists under path

-store-exists?clj/s

(-store-exists? this env)

Check if underlying store already exists.

Check if underlying store already exists.

-sync-storeclj/s

(-sync-store this env)

Synchronize the store. This is only needed if your store does not guarantee durability without this synchronisation command, e.g. fsync in the file system.

Synchronize the store. This is only needed if your store does not guarantee durability without this synchronisation command, e.g. fsync in the file system.

-atomic-moveclj/s

(-atomic-move this from to env)

Atomically move (rename) a blob.

Atomically move (rename) a blob.

-migrateclj/s

(-migrate this
          migration-key
          key-vec
          serializer
          read-handlers
          write-handlers
          env)

Use the key returned from -migratable to import blob for key-vec.

Use the key returned from -migratable to import blob for key-vec.

-delete-blobclj/s

(-delete-blob this store-key env)

Delete a blob object under path.

Delete a blob object under path.
sourceraw docstring

cljdoc is a website building & hosting documentation for Clojure/Script libraries

× close