Package com.databend.jdbc

# Class DatabendNodes

java.lang.Object
com.databend.jdbc.DatabendNodes

All Implemented Interfaces:
  `DatabendNodeRouter`

public class DatabendNodes extends Object implements DatabendNodeRouter

## Field Summary

Fields
Modifier and Type
Field
Description
`protected final AtomicInteger`
`index`
`protected DatabendClientLoadBalancingPolicy`
`policy`

## Constructor Summary

Constructors
Constructor
Description
`DatabendNodes(List<URI> queryNodesUris, DatabendClientLoadBalancingPolicy policy)`

## Method Summary

Modifier and Type
Method
Description
`DatabendClientLoadBalancingPolicy`
`getPolicy()`
Get load balancing policy
`List<URI>`
`getUris()`
Gets a copy of all possible query uris
`URI`
`pickUri(String query_id)`
`String`
`toString()`
`void`
`updateNodes(List<URI> query_nodes_uris)`
`void`
`updatePolicy(DatabendClientLoadBalancingPolicy policy)`

### Methods inherited from class java.lang.Object

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

## Field Details

### index

protected final AtomicInteger index

### policy

protected DatabendClientLoadBalancingPolicy policy

## Constructor Details

### DatabendNodes

public DatabendNodes(List<URI> queryNodesUris, DatabendClientLoadBalancingPolicy policy)

## Method Details

### getUris

public List<URI> getUris()
Description copied from interface: `DatabendNodeRouter`
Gets a copy of all possible query uris

Specified by:
  `getUris` in interface `DatabendNodeRouter`
Returns:
  non-null uris

### updateNodes

public void updateNodes(List<URI> query_nodes_uris)

### updatePolicy

public void updatePolicy(DatabendClientLoadBalancingPolicy policy)

### getPolicy

public DatabendClientLoadBalancingPolicy getPolicy()
Description copied from interface: `DatabendNodeRouter`
Get load balancing policy

Specified by:
  `getPolicy` in interface `DatabendNodeRouter`

### pickUri

public URI pickUri(String query_id)

### toString

public String toString()

Overrides:
  `toString` in class `Object`