Class TokenAwarePolicy
A wrapper load balancing policy that adds token awareness to a child policy.
This policy encapsulates another policy. The resulting policy works in the following way:
Inheritance
Implements
Inherited Members
Namespace: Cassandra
Assembly: Cassandra.dll
Syntax
public class TokenAwarePolicy : ILoadBalancingPolicy
Constructors
TokenAwarePolicy(ILoadBalancingPolicy)
Creates a new TokenAware policy that wraps the provided child
load balancing policy.
Declaration
public TokenAwarePolicy(ILoadBalancingPolicy childPolicy)
Parameters
| Type | Name | Description |
|---|---|---|
| ILoadBalancingPolicy | childPolicy | the load balancing policy to wrap with token awareness. |
Properties
ChildPolicy
Declaration
public ILoadBalancingPolicy ChildPolicy { get; }
Property Value
| Type | Description |
|---|---|
| ILoadBalancingPolicy |
Methods
Distance(Host)
Return the HostDistance for the provided host.
Declaration
public HostDistance Distance(Host host)
Parameters
| Type | Name | Description |
|---|---|---|
| Host | host | the host of which to return the distance of. |
Returns
| Type | Description |
|---|---|
| HostDistance | the HostDistance to |
Initialize(ICluster)
Declaration
public void Initialize(ICluster cluster)
Parameters
| Type | Name | Description |
|---|---|---|
| ICluster | cluster |
NewQueryPlan(String, IStatement)
Returns the hosts to use for a new query.
The returned plan will first
return replicas (whose HostDistance for the child policy is
Local) for the query if it can determine them (i.e. mainly if
IStatement.RoutingKey is not null). Following what
it will return the plan of the child policy.
Declaration
public IEnumerable<Host> NewQueryPlan(string loggedKeyspace, IStatement query)
Parameters
| Type | Name | Description |
|---|---|---|
| System.String | loggedKeyspace | Keyspace on which the query is going to be executed |
| IStatement | query | the query for which to build the plan. |
Returns
| Type | Description |
|---|---|
| System.Collections.Generic.IEnumerable<Host> | the new query plan. |