Package io.datarouter.storage.node
Class DatarouterNodes
java.lang.Object
io.datarouter.storage.node.DatarouterNodes
@Singleton public class DatarouterNodes extends Object
Nodes is a registry of all Nodes in a Datarouter. It ensures that no two nodes try to share the same name. It can be
used by Datarouter management features like a web page to browse all nodes in the system.
-
Method Summary
Modifier and Type Method Description Node<?,?,?>findParent(Node<?,?,?> node, Class<?> requiredInterface)Collection<Node<?,?,?>>getAllNodes()Node<?,?,?>getNode(String nodeName)<PK extends io.datarouter.model.key.primary.PrimaryKey<PK>, D extends io.datarouter.model.databean.Databean<PK, D>, N extends Node<PK, D, ?>>
NgetNodeAndCast(String nodeName)Map<String,Map<String,PhysicalNode<?,?,?>>>getPhysicalNodeByTableNameByClientName()PhysicalNode<?,?,?>getPhysicalNodeForClientAndTable(String clientName, String tableName)Collection<PhysicalNode<?,?,?>>getPhysicalNodesForClient(String clientName)List<String>getTableNamesForClient(String clientName)SortedSet<Node<?,?,?>>getTopLevelNodes()Set<Class<?>>getTypesForClient(String clientName)<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>, N extends Node<PK, D, F>>
Nregister(N node)
-
Method Details
-
register
public <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>, N extends Node<PK, D, F>> N register(N node) -
getAllNodes
-
getNode
-
getNodeAndCast
-
getTypesForClient
-
getPhysicalNodesForClient
-
getTableNamesForClient
-
getPhysicalNodeForClientAndTable
-
getPhysicalNodeByTableNameByClientName
-
findParent
-
getTopLevelNodes
-