Class BlockTypeRegistry
java.lang.Object
io.datarouter.filesystem.snapshot.block.BlockTypeRegistry
@Singleton
public class BlockTypeRegistry
extends java.lang.Object
Mapping of persistent block name string to the Block implementation class. Custom implementations can be added
as long as the names are unique.
-
Constructor Summary
Constructors Constructor Description BlockTypeRegistry() -
Method Summary
Modifier and Type Method Description BranchBlockdecodeBranch(java.lang.String typeName, byte[] bytes)LeafBlockdecodeLeaf(java.lang.String typeName, byte[] bytes)RootBlockdecodeRoot(java.lang.String typeName, byte[] bytes)ValueBlockdecodeValue(java.lang.String typeName, byte[] bytes)java.lang.Class<? extends BranchBlock>getBranchClass(java.lang.String name)java.lang.Class<? extends LeafBlock>getLeafClass(java.lang.String name)java.lang.Class<? extends RootBlock>getRootClass(java.lang.String name)java.lang.Class<? extends ValueBlock>getValueClass(java.lang.String name)BlockTypeRegistryregisterBranch(java.lang.String name, java.lang.Class<? extends BranchBlock> blockClass)BlockTypeRegistryregisterLeaf(java.lang.String name, java.lang.Class<? extends LeafBlock> blockClass)BlockTypeRegistryregisterRoot(java.lang.String name, java.lang.Class<? extends RootBlock> blockClass)BlockTypeRegistryregisterValue(java.lang.String name, java.lang.Class<? extends ValueBlock> blockClass)
-
Constructor Details
-
BlockTypeRegistry
public BlockTypeRegistry()
-
-
Method Details
-
registerRoot
public BlockTypeRegistry registerRoot(java.lang.String name, java.lang.Class<? extends RootBlock> blockClass) -
registerBranch
public BlockTypeRegistry registerBranch(java.lang.String name, java.lang.Class<? extends BranchBlock> blockClass) -
registerLeaf
public BlockTypeRegistry registerLeaf(java.lang.String name, java.lang.Class<? extends LeafBlock> blockClass) -
registerValue
public BlockTypeRegistry registerValue(java.lang.String name, java.lang.Class<? extends ValueBlock> blockClass) -
getRootClass
-
getBranchClass
-
getLeafClass
-
getValueClass
-
decodeRoot
-
decodeBranch
-
decodeLeaf
-
decodeValue
-