Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
 /*
  *      Copyright (C) 2012 DataStax Inc.
  *
  *   Licensed under the Apache License, Version 2.0 (the "License");
  *   you may not use this file except in compliance with the License.
  *   You may obtain a copy of the License at
  *
  *      http://www.apache.org/licenses/LICENSE-2.0
  *
 *   Unless required by applicable law or agreed to in writing, software
 *   distributed under the License is distributed on an "AS IS" BASIS,
 *   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 *   See the License for the specific language governing permissions and
 *   limitations under the License.
 */
package com.datastax.driver.core;

Interface for object that are interested in tracking the latencies of the driver queries to each Cassandra nodes.

An implementaion of this interface can be registered against a Cluster object trough the Cluster.register(com.datastax.driver.core.Host.StateListener) method, after which the update will be called after each query of the driver to a Cassandra host with the latency/duration (in nanoseconds) of this operation.

public interface LatencyTracker {

    
A method that is called after each request to a Cassandra node with the duration of that operation.

Note that there is no guarantee that this method won't be called concurrently by multiple thread, so implementations should synchronize internally if need be.

Parameters:
host the Cassandra host on which a request has been performed.
newLatencyNanos the latency in nanoseconds of the operation. This latency corresponds to the time elapsed between when the query was send to host and when the response was received by the driver (or the operation timeoued, in which newLatencyNanos will approximately be the timeout value).
    public void update(Host hostlong newLatencyNanos);
New to GrepCode? Check out our FAQ X