コード例 #1
0
  public RowMutation mutationForKey(
      ByteBuffer key,
      String keyspace,
      Long timestamp,
      ThriftClientState clientState,
      List<ByteBuffer> variables,
      CFMetaData metadata)
      throws InvalidRequestException {
    RowMutation rm = new RowMutation(keyspace, key);

    QueryProcessor.validateKeyAlias(metadata, keyName);

    AbstractType<?> comparator = metadata.getComparatorFor(null);

    if (columns.size() < 1) {
      // No columns, delete the row
      rm.delete(
          new QueryPath(columnFamily), (timestamp == null) ? getTimestamp(clientState) : timestamp);
    } else {
      // Delete specific columns
      for (Term column : columns) {
        ByteBuffer columnName = column.getByteBuffer(comparator, variables);
        validateColumnName(columnName);
        rm.delete(
            new QueryPath(columnFamily, null, columnName),
            (timestamp == null) ? getTimestamp(clientState) : timestamp);
      }
    }

    return rm;
  }