/** * Creates a mutator for updating records in a keyspace. * * @param keyspace * @param keySerializer */ public static <K, N, V> Mutator<K> createMutator(Keyspace keyspace, Serializer<K> keySerializer) { return new MutatorImpl<K>(keyspace, keySerializer); }
@Override public <N> MutationResult insertCounter(final K key, final String cf, final HCounterColumn<N> c) { addCounter(key,cf, c); return execute(); }
@Override public <N> MutationResult deleteCounter(final K key, final String cf, final N counterColumnName, final Serializer<N> nameSerializer) { addCounterDeletion(key,cf,counterColumnName,nameSerializer); return execute(); }
@Override public <N,V> MutationResult insert(final K key, final String cf, final HColumn<N,V> c) { addInsertion(key, cf, c); return execute(); }
@Override public <N> MutationResult delete(final K key, final String cf, final N columnName, final Serializer<N> nameSerializer) { addDeletion(key, cf, columnName, nameSerializer); return execute(); }
@Override public int getPendingMutationCount() { return getPendingMutations().getSize(); }
@Override public <N> Mutator<K> addDeletion(Iterable<K> keys, String cf, long clock) { for (K key : keys) { addDeletion(key, cf, null, null, clock); } return this; }
@Override public <SN, N> MutationResult subDeleteCounter(final K key, final String cf, final SN supercolumnName, final N columnName, final Serializer<SN> sNameSerializer, final Serializer<N> nameSerializer) { addCounterSubDeletion(key,cf, new HCounterSuperColumnImpl<SN,N>(sNameSerializer,nameSerializer) .setName(supercolumnName) .addSubCounterColumn(new HCounterColumnImpl<N>(nameSerializer))); return execute(); }
/** * Deletes the columns defined in the HSuperColumn. If there are no HColumns attached, * we delete the whole thing. * */ public <SN,N,V> Mutator<K> addSubDelete(K key, String cf, HSuperColumn<SN,N,V> sc) { return addSubDelete(key, cf, sc, keyspace.createClock()); }
@Override public <N> MutationResult decrementCounter(final K key, final String cf, final N columnName, final long increment) { return incrementCounter(key, cf, columnName, increment * -1L); }
@Override public <N,V> Mutator<K> addInsertion(K key, String cf, HColumn<N,V> c) { getPendingMutations().addInsertion(key, Arrays.asList(cf), ((HColumnImpl<N, V>) c).toThrift()); return this; }
@Override public <SN,N,V> MutationResult insert(final K key, final String cf, final HSuperColumn<SN,N,V> superColumn) { addInsertion(key, cf, superColumn); return execute(); }
@Override public <N> MutationResult delete(K key, String cf, N columnName, Serializer<N> nameSerializer, long clock) { addDeletion(key, cf, columnName, nameSerializer, clock); return execute(); }
/** * {@inheritDoc} */ @Override public <N> Mutator<K> addDeletion(K key, String cf, long clock) { addDeletion(key, cf, null, null, clock); return this; }
@Override public <SN, N> MutationResult subDeleteCounter(final K key, final String cf, final SN supercolumnName, final N columnName, final Serializer<SN> sNameSerializer, final Serializer<N> nameSerializer) { addCounterSubDeletion(key,cf, new HCounterSuperColumnImpl<SN,N>(sNameSerializer,nameSerializer) .setName(supercolumnName) .addSubCounterColumn(new HCounterColumnImpl<N>(nameSerializer))); return execute(); }
@Override public <SN, N> Mutator<K> addSubDelete(K key, String cf, SN sColumnName, N columnName, Serializer<SN> sNameSerializer, Serializer<N> nameSerializer) { return addSubDelete(key, cf, sColumnName, columnName, sNameSerializer, nameSerializer, keyspace.createClock()); }
@Override public <N> MutationResult decrementCounter(final K key, final String cf, final N columnName, final long increment) { return incrementCounter(key, cf, columnName, increment * -1L); }
/** * Schedule an insertion of a supercolumn to be inserted in batch mode by {@link #execute()} */ @Override public <SN,N,V> Mutator<K> addInsertion(K key, String cf, HSuperColumn<SN,N,V> sc) { getPendingMutations().addSuperInsertion(key, Arrays.asList(cf), ((HSuperColumnImpl<SN,N,V>) sc).toThrift()); return this; }
@Override public <K, N, V> Mutator<K> createMutator() { return new MutatorImpl<K>(keyspace); }
@Override public <SN,N,V> MutationResult insert(final K key, final String cf, final HSuperColumn<SN,N,V> superColumn) { addInsertion(key, cf, superColumn); return execute(); }