@Override
  public <T> CASResponse cas(String key, long casId, T value,
      Transcoder<T> tc) {
    return cas(key, casId, 0, value, tc);
  }
Perform a synchronous CAS operation.

@param <T>
@param key the key
@param casId the CAS identifier (from a gets operation)
@param value the new value
@param tc the transcoder to serialize and unserialize the value
@return a CASResponse
@throws OperationTimeoutException if global operation timeout is exceeded
@throws IllegalStateException in the rare circumstance where queue is too
          full to accept any more requests
src/main/java/net/spy/memcached/MemcachedClient.java