Class RedisBlobNode

java.lang.Object
io.datarouter.storage.node.BaseNode<PK,D,F>
io.datarouter.storage.node.type.physical.base.BasePhysicalNode<io.datarouter.storage.file.DatabaseBlobKey,io.datarouter.storage.file.DatabaseBlob,io.datarouter.storage.file.DatabaseBlob.DatabaseBlobFielder>
io.datarouter.client.redis.node.RedisBlobNode
All Implemented Interfaces:
io.datarouter.storage.node.Node<io.datarouter.storage.file.DatabaseBlobKey,io.datarouter.storage.file.DatabaseBlob,io.datarouter.storage.file.DatabaseBlob.DatabaseBlobFielder>, io.datarouter.storage.node.op.NodeOps<io.datarouter.storage.file.PathbeanKey,io.datarouter.storage.file.Pathbean>, io.datarouter.storage.node.op.raw.BlobStorage, io.datarouter.storage.node.op.raw.BlobStorage.BlobStorageNode, io.datarouter.storage.node.op.raw.BlobStorage.PhysicalBlobStorageNode, io.datarouter.storage.node.op.raw.read.BlobStorageReader, io.datarouter.storage.node.op.raw.write.BlobStorageWriter, io.datarouter.storage.node.type.physical.PhysicalNode<io.datarouter.storage.file.DatabaseBlobKey,io.datarouter.storage.file.DatabaseBlob,io.datarouter.storage.file.DatabaseBlob.DatabaseBlobFielder>, Comparable<io.datarouter.storage.node.Node<io.datarouter.storage.file.DatabaseBlobKey,io.datarouter.storage.file.DatabaseBlob,io.datarouter.storage.file.DatabaseBlob.DatabaseBlobFielder>>

public class RedisBlobNode extends io.datarouter.storage.node.type.physical.base.BasePhysicalNode<io.datarouter.storage.file.DatabaseBlobKey,io.datarouter.storage.file.DatabaseBlob,io.datarouter.storage.file.DatabaseBlob.DatabaseBlobFielder> implements io.datarouter.storage.node.op.raw.BlobStorage.PhysicalBlobStorageNode
  • Nested Class Summary

    Nested classes/interfaces inherited from interface io.datarouter.storage.node.op.raw.BlobStorage

    io.datarouter.storage.node.op.raw.BlobStorage.BlobStorageNode, io.datarouter.storage.node.op.raw.BlobStorage.PhysicalBlobStorageNode
  • Field Summary

    Fields inherited from interface io.datarouter.storage.node.op.raw.BlobStorage

    FILE_PATH_DELIMITER, FILE_PATH_DELIMITER_CHAR
  • Constructor Summary

    Constructors
    Constructor
    Description
    RedisBlobNode(io.datarouter.storage.node.NodeParams<io.datarouter.storage.file.DatabaseBlobKey,io.datarouter.storage.file.DatabaseBlob,io.datarouter.storage.file.DatabaseBlob.DatabaseBlobFielder> params, io.datarouter.storage.client.ClientType<?,?> clientType, RedisBlobCodec codec, Supplier<DatarouterRedisClient> lazyClient)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    delete(io.datarouter.storage.file.PathbeanKey key, io.datarouter.storage.config.Config config)
     
    void
    deleteAll(io.datarouter.storage.util.Subpath subpath, io.datarouter.storage.config.Config config)
     
    void
    deleteMulti(List<io.datarouter.storage.file.PathbeanKey> keys, io.datarouter.storage.config.Config config)
     
    boolean
    exists(io.datarouter.storage.file.PathbeanKey key, io.datarouter.storage.config.Config config)
     
     
    io.datarouter.storage.util.Subpath
     
    length(io.datarouter.storage.file.PathbeanKey key, io.datarouter.storage.config.Config config)
     
    byte[]
    read(io.datarouter.storage.file.PathbeanKey key, io.datarouter.storage.config.Config config)
     
    Map<io.datarouter.storage.file.PathbeanKey,byte[]>
    readMulti(List<io.datarouter.storage.file.PathbeanKey> keys, io.datarouter.storage.config.Config config)
     
    byte[]
    readPartial(io.datarouter.storage.file.PathbeanKey key, long offset, int length, io.datarouter.storage.config.Config config)
     
    io.datarouter.scanner.Scanner<List<io.datarouter.storage.file.PathbeanKey>>
    scanKeysPaged(io.datarouter.storage.util.Subpath subpath, io.datarouter.storage.config.Config config)
     
    io.datarouter.scanner.Scanner<List<io.datarouter.storage.file.Pathbean>>
    scanPaged(io.datarouter.storage.util.Subpath subpath, io.datarouter.storage.config.Config config)
     
    void
    vacuum(io.datarouter.storage.config.Config config)
     
    void
    write(io.datarouter.storage.file.PathbeanKey key, byte[] value, io.datarouter.storage.config.Config config)
     
    void
    writeInputStream(io.datarouter.storage.file.PathbeanKey key, InputStream inputStream, io.datarouter.storage.config.Config config)
     

    Methods inherited from class io.datarouter.storage.node.type.physical.base.BasePhysicalNode

    getChildNodes, getClientId, getClientIds, getClientType, getFieldInfo, getName, getPhysicalNodes, getPhysicalNodesForClient, toString, usesClient

    Methods inherited from class io.datarouter.storage.node.BaseNode

    compareTo

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait

    Methods inherited from interface io.datarouter.storage.node.op.raw.BlobStorage

    encoded

    Methods inherited from interface io.datarouter.storage.node.op.raw.read.BlobStorageReader

    exists, getBucketAndPrefix, length, read, readInputStream, readInputStream, readMulti, readPartial, scan, scanChunks, scanChunks, scanDirectories, scanFiles, scanKeys, scanKeys, scanKeysPaged, scanPaged

    Methods inherited from interface io.datarouter.storage.node.op.raw.write.BlobStorageWriter

    delete, deleteAll, deleteMulti, write, writeChunks, writeChunks, writeInputStream, writeParallel, writeParallel, writeParallel, writeParallel

    Methods inherited from interface java.lang.Comparable

    compareTo

    Methods inherited from interface io.datarouter.storage.node.Node

    getChildNodes, getClientIds, getName, getPhysicalNodes, getPhysicalNodesForClient, usesClient

    Methods inherited from interface io.datarouter.storage.node.type.physical.PhysicalNode

    clientAndTableNames, getClientId, getClientType, getFieldInfo
  • Constructor Details

    • RedisBlobNode

      public RedisBlobNode(io.datarouter.storage.node.NodeParams<io.datarouter.storage.file.DatabaseBlobKey,io.datarouter.storage.file.DatabaseBlob,io.datarouter.storage.file.DatabaseBlob.DatabaseBlobFielder> params, io.datarouter.storage.client.ClientType<?,?> clientType, RedisBlobCodec codec, Supplier<DatarouterRedisClient> lazyClient)
  • Method Details

    • getBucket

      public String getBucket()
      Specified by:
      getBucket in interface io.datarouter.storage.node.op.raw.read.BlobStorageReader
    • getRootPath

      public io.datarouter.storage.util.Subpath getRootPath()
      Specified by:
      getRootPath in interface io.datarouter.storage.node.op.raw.read.BlobStorageReader
    • exists

      public boolean exists(io.datarouter.storage.file.PathbeanKey key, io.datarouter.storage.config.Config config)
      Specified by:
      exists in interface io.datarouter.storage.node.op.raw.read.BlobStorageReader
    • length

      public Optional<Long> length(io.datarouter.storage.file.PathbeanKey key, io.datarouter.storage.config.Config config)
      Specified by:
      length in interface io.datarouter.storage.node.op.raw.read.BlobStorageReader
    • read

      public byte[] read(io.datarouter.storage.file.PathbeanKey key, io.datarouter.storage.config.Config config)
      Specified by:
      read in interface io.datarouter.storage.node.op.raw.read.BlobStorageReader
    • readPartial

      public byte[] readPartial(io.datarouter.storage.file.PathbeanKey key, long offset, int length, io.datarouter.storage.config.Config config)
      Specified by:
      readPartial in interface io.datarouter.storage.node.op.raw.read.BlobStorageReader
    • readMulti

      public Map<io.datarouter.storage.file.PathbeanKey,byte[]> readMulti(List<io.datarouter.storage.file.PathbeanKey> keys, io.datarouter.storage.config.Config config)
      Specified by:
      readMulti in interface io.datarouter.storage.node.op.raw.read.BlobStorageReader
    • scanKeysPaged

      public io.datarouter.scanner.Scanner<List<io.datarouter.storage.file.PathbeanKey>> scanKeysPaged(io.datarouter.storage.util.Subpath subpath, io.datarouter.storage.config.Config config)
      Specified by:
      scanKeysPaged in interface io.datarouter.storage.node.op.raw.read.BlobStorageReader
    • scanPaged

      public io.datarouter.scanner.Scanner<List<io.datarouter.storage.file.Pathbean>> scanPaged(io.datarouter.storage.util.Subpath subpath, io.datarouter.storage.config.Config config)
      Specified by:
      scanPaged in interface io.datarouter.storage.node.op.raw.read.BlobStorageReader
    • write

      public void write(io.datarouter.storage.file.PathbeanKey key, byte[] value, io.datarouter.storage.config.Config config)
      Specified by:
      write in interface io.datarouter.storage.node.op.raw.write.BlobStorageWriter
    • writeInputStream

      public void writeInputStream(io.datarouter.storage.file.PathbeanKey key, InputStream inputStream, io.datarouter.storage.config.Config config)
      Specified by:
      writeInputStream in interface io.datarouter.storage.node.op.raw.write.BlobStorageWriter
    • delete

      public void delete(io.datarouter.storage.file.PathbeanKey key, io.datarouter.storage.config.Config config)
      Specified by:
      delete in interface io.datarouter.storage.node.op.raw.write.BlobStorageWriter
    • deleteMulti

      public void deleteMulti(List<io.datarouter.storage.file.PathbeanKey> keys, io.datarouter.storage.config.Config config)
      Specified by:
      deleteMulti in interface io.datarouter.storage.node.op.raw.write.BlobStorageWriter
    • deleteAll

      public void deleteAll(io.datarouter.storage.util.Subpath subpath, io.datarouter.storage.config.Config config)
      Specified by:
      deleteAll in interface io.datarouter.storage.node.op.raw.write.BlobStorageWriter
    • vacuum

      public void vacuum(io.datarouter.storage.config.Config config)
      Specified by:
      vacuum in interface io.datarouter.storage.node.op.raw.write.BlobStorageWriter