Class MemcachedBlobNode<PK extends io.datarouter.model.key.primary.PrimaryKey<PK>,​D extends io.datarouter.model.databean.Databean<PK,​D>,​F extends io.datarouter.model.serialize.fielder.DatabeanFielder<PK,​D>>

java.lang.Object
io.datarouter.storage.node.BaseNode<PK,​D,​F>
io.datarouter.storage.node.type.physical.base.BasePhysicalNode<PK,​D,​F>
io.datarouter.client.memcached.node.MemcachedBlobNode<PK,​D,​F>
All Implemented Interfaces:
io.datarouter.storage.node.Node<PK,​D,​F>, io.datarouter.storage.node.op.NodeOps<PK,​D>, io.datarouter.storage.node.op.raw.BlobStorage<PK,​D>, io.datarouter.storage.node.op.raw.BlobStorage.BlobStorageNode<PK,​D,​F>, io.datarouter.storage.node.op.raw.BlobStorage.PhysicalBlobStorageNode<PK,​D,​F>, io.datarouter.storage.node.op.raw.read.BlobStorageReader<PK,​D>, io.datarouter.storage.node.op.raw.write.BlobStorageWriter<PK,​D>, io.datarouter.storage.node.type.physical.PhysicalNode<PK,​D,​F>, java.lang.Comparable<io.datarouter.storage.node.Node<PK,​D,​F>>

public class MemcachedBlobNode<PK extends io.datarouter.model.key.primary.PrimaryKey<PK>,​D extends io.datarouter.model.databean.Databean<PK,​D>,​F extends io.datarouter.model.serialize.fielder.DatabeanFielder<PK,​D>>
extends io.datarouter.storage.node.type.physical.base.BasePhysicalNode<PK,​D,​F>
implements io.datarouter.storage.node.op.raw.BlobStorage.PhysicalBlobStorageNode<PK,​D,​F>
  • Nested Class Summary

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

    io.datarouter.storage.node.op.raw.BlobStorage.BlobStorageNode<PK extends io.datarouter.model.key.primary.PrimaryKey<PK>,​D extends io.datarouter.model.databean.Databean<PK,​D>,​F extends io.datarouter.model.serialize.fielder.DatabeanFielder<PK,​D>>, io.datarouter.storage.node.op.raw.BlobStorage.PhysicalBlobStorageNode<PK extends io.datarouter.model.key.primary.PrimaryKey<PK>,​D extends io.datarouter.model.databean.Databean<PK,​D>,​F extends io.datarouter.model.serialize.fielder.DatabeanFielder<PK,​D>>
  • Constructor Summary

    Constructors 
    Constructor Description
    MemcachedBlobNode​(io.datarouter.storage.node.NodeParams<PK,​D,​F> params, io.datarouter.storage.client.ClientType<?,​?> clientType, MemcachedClientManager memcachedClientManager)  
  • Method Summary

    Modifier and Type Method Description
    void delete​(io.datarouter.storage.file.PathbeanKey key)  
    void deleteAll​(io.datarouter.storage.util.Subpath subpath)  
    boolean exists​(io.datarouter.storage.file.PathbeanKey key)  
    java.lang.String getBucket()  
    io.datarouter.storage.util.Subpath getRootPath()  
    java.util.Optional<java.lang.Long> length​(io.datarouter.storage.file.PathbeanKey key)  
    byte[] read​(io.datarouter.storage.file.PathbeanKey key)  
    byte[] read​(io.datarouter.storage.file.PathbeanKey key, long offset, int length)  
    io.datarouter.scanner.Scanner<io.datarouter.storage.file.Pathbean> scan​(io.datarouter.storage.util.Subpath subpath)  
    io.datarouter.scanner.Scanner<io.datarouter.storage.file.PathbeanKey> scanKeys​(io.datarouter.storage.util.Subpath subpath)  
    void write​(io.datarouter.storage.file.PathbeanKey key, byte[] value)  
    void write​(io.datarouter.storage.file.PathbeanKey key, java.io.InputStream inputStream)  
    void write​(io.datarouter.storage.file.PathbeanKey key, java.util.Iterator<byte[]> chunks)  

    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.read.BlobStorageReader

    scanChunks

    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

    getClientId, getClientType, getFieldInfo
  • Constructor Details

    • MemcachedBlobNode

      public MemcachedBlobNode​(io.datarouter.storage.node.NodeParams<PK,​D,​F> params, io.datarouter.storage.client.ClientType<?,​?> clientType, MemcachedClientManager memcachedClientManager)
  • Method Details

    • getBucket

      public java.lang.String getBucket()
      Specified by:
      getBucket in interface io.datarouter.storage.node.op.raw.read.BlobStorageReader<PK extends io.datarouter.model.key.primary.PrimaryKey<PK>,​D extends io.datarouter.model.databean.Databean<PK,​D>>
    • getRootPath

      public io.datarouter.storage.util.Subpath getRootPath()
      Specified by:
      getRootPath in interface io.datarouter.storage.node.op.raw.read.BlobStorageReader<PK extends io.datarouter.model.key.primary.PrimaryKey<PK>,​D extends io.datarouter.model.databean.Databean<PK,​D>>
    • exists

      public boolean exists​(io.datarouter.storage.file.PathbeanKey key)
      Specified by:
      exists in interface io.datarouter.storage.node.op.raw.read.BlobStorageReader<PK extends io.datarouter.model.key.primary.PrimaryKey<PK>,​D extends io.datarouter.model.databean.Databean<PK,​D>>
    • length

      public java.util.Optional<java.lang.Long> length​(io.datarouter.storage.file.PathbeanKey key)
      Specified by:
      length in interface io.datarouter.storage.node.op.raw.read.BlobStorageReader<PK extends io.datarouter.model.key.primary.PrimaryKey<PK>,​D extends io.datarouter.model.databean.Databean<PK,​D>>
    • read

      public byte[] read​(io.datarouter.storage.file.PathbeanKey key)
      Specified by:
      read in interface io.datarouter.storage.node.op.raw.read.BlobStorageReader<PK extends io.datarouter.model.key.primary.PrimaryKey<PK>,​D extends io.datarouter.model.databean.Databean<PK,​D>>
    • read

      public byte[] read​(io.datarouter.storage.file.PathbeanKey key, long offset, int length)
      Specified by:
      read in interface io.datarouter.storage.node.op.raw.read.BlobStorageReader<PK extends io.datarouter.model.key.primary.PrimaryKey<PK>,​D extends io.datarouter.model.databean.Databean<PK,​D>>
    • scanKeys

      public io.datarouter.scanner.Scanner<io.datarouter.storage.file.PathbeanKey> scanKeys​(io.datarouter.storage.util.Subpath subpath)
      Specified by:
      scanKeys in interface io.datarouter.storage.node.op.raw.read.BlobStorageReader<PK extends io.datarouter.model.key.primary.PrimaryKey<PK>,​D extends io.datarouter.model.databean.Databean<PK,​D>>
    • scan

      public io.datarouter.scanner.Scanner<io.datarouter.storage.file.Pathbean> scan​(io.datarouter.storage.util.Subpath subpath)
      Specified by:
      scan in interface io.datarouter.storage.node.op.raw.read.BlobStorageReader<PK extends io.datarouter.model.key.primary.PrimaryKey<PK>,​D extends io.datarouter.model.databean.Databean<PK,​D>>
    • write

      public void write​(io.datarouter.storage.file.PathbeanKey key, byte[] value)
      Specified by:
      write in interface io.datarouter.storage.node.op.raw.write.BlobStorageWriter<PK extends io.datarouter.model.key.primary.PrimaryKey<PK>,​D extends io.datarouter.model.databean.Databean<PK,​D>>
    • write

      public void write​(io.datarouter.storage.file.PathbeanKey key, java.util.Iterator<byte[]> chunks)
      Specified by:
      write in interface io.datarouter.storage.node.op.raw.write.BlobStorageWriter<PK extends io.datarouter.model.key.primary.PrimaryKey<PK>,​D extends io.datarouter.model.databean.Databean<PK,​D>>
    • write

      public void write​(io.datarouter.storage.file.PathbeanKey key, java.io.InputStream inputStream)
      Specified by:
      write in interface io.datarouter.storage.node.op.raw.write.BlobStorageWriter<PK extends io.datarouter.model.key.primary.PrimaryKey<PK>,​D extends io.datarouter.model.databean.Databean<PK,​D>>
    • delete

      public void delete​(io.datarouter.storage.file.PathbeanKey key)
      Specified by:
      delete in interface io.datarouter.storage.node.op.raw.write.BlobStorageWriter<PK extends io.datarouter.model.key.primary.PrimaryKey<PK>,​D extends io.datarouter.model.databean.Databean<PK,​D>>
    • deleteAll

      public void deleteAll​(io.datarouter.storage.util.Subpath subpath)
      Specified by:
      deleteAll in interface io.datarouter.storage.node.op.raw.write.BlobStorageWriter<PK extends io.datarouter.model.key.primary.PrimaryKey<PK>,​D extends io.datarouter.model.databean.Databean<PK,​D>>