@Override public void touch(Multimap<NamespacedTodoRow, NamespacedTodoColumn> values) { Multimap<NamespacedTodoRow, NamespacedTodoColumnValue> currentValues = get(values); put(currentValues); Multimap<NamespacedTodoRow, NamespacedTodoColumn> toDelete = HashMultimap.create(values); for (Map.Entry<NamespacedTodoRow, NamespacedTodoColumnValue> e : currentValues.entries()) { toDelete.remove(e.getKey(), e.getValue().getColumnName()); } delete(toDelete); }
static NamespacedTodoTable of(Transaction t, Namespace namespace, List<NamespacedTodoTrigger> triggers) { return new NamespacedTodoTable(t, namespace, triggers); }
public BatchingVisitableView<NamespacedTodoRowResult> getAllRowsUnordered() { return getAllRowsUnordered(allColumns); }
@Override public void delete(Iterable<NamespacedTodoRow> rows) { Multimap<NamespacedTodoRow, NamespacedTodoColumn> toRemove = HashMultimap.create(); Multimap<NamespacedTodoRow, NamespacedTodoColumnValue> result = getRowsMultimap(rows); for (Entry<NamespacedTodoRow, NamespacedTodoColumnValue> e : result.entries()) { toRemove.put(e.getKey(), e.getValue().getColumnName()); } delete(toRemove); }
@Override public void put(NamespacedTodoRow rowName, Iterable<NamespacedTodoColumnValue> values) { put(ImmutableMultimap.<NamespacedTodoRow, NamespacedTodoColumnValue>builder().putAll(rowName, values).build()); }
@Override public Multimap<NamespacedTodoRow, NamespacedTodoColumnValue> getRowsMultimap(Iterable<NamespacedTodoRow> rows, ColumnSelection columns) { return getRowsMultimapInternal(rows, columns); }
@Override public List<NamespacedTodoColumnValue> getRowColumns(NamespacedTodoRow row) { return getRowColumns(row, allColumns); }
private Multimap<NamespacedTodoRow, NamespacedTodoColumnValue> getRowsMultimapInternal(Iterable<NamespacedTodoRow> rows, ColumnSelection columns) { SortedMap<byte[], RowResult<byte[]>> results = t.getRows(tableRef, Persistables.persistAll(rows), columns); return getRowMapFromRowResults(results.values()); }
@Override public void delete(NamespacedTodoRow row, NamespacedTodoColumn column) { delete(ImmutableMultimap.of(row, column)); }
public static ColumnSelection getColumnSelection(NamespacedTodoColumn... cols) { return getColumnSelection(Arrays.asList(cols)); }
@Override public void put(NamespacedTodoRow rowName, NamespacedTodoColumnValue... values) { put(ImmutableMultimap.<NamespacedTodoRow, NamespacedTodoColumnValue>builder().putAll(rowName, values).build()); }
@Override public void delete(Iterable<NamespacedTodoRow> rows) { Multimap<NamespacedTodoRow, NamespacedTodoColumn> toRemove = HashMultimap.create(); Multimap<NamespacedTodoRow, NamespacedTodoColumnValue> result = getRowsMultimap(rows); for (Entry<NamespacedTodoRow, NamespacedTodoColumnValue> e : result.entries()) { toRemove.put(e.getKey(), e.getValue().getColumnName()); } delete(toRemove); }
@Override public Multimap<NamespacedTodoRow, NamespacedTodoColumnValue> getRowsMultimap(Iterable<NamespacedTodoRow> rows) { return getRowsMultimapInternal(rows, allColumns); }
@Override public List<NamespacedTodoColumnValue> getRowColumns(NamespacedTodoRow row) { return getRowColumns(row, allColumns); }
private Multimap<NamespacedTodoRow, NamespacedTodoColumnValue> getRowsMultimapInternal(Iterable<NamespacedTodoRow> rows, ColumnSelection columns) { SortedMap<byte[], RowResult<byte[]>> results = t.getRows(tableRef, Persistables.persistAll(rows), columns); return getRowMapFromRowResults(results.values()); }
@Override public void delete(NamespacedTodoRow row, NamespacedTodoColumn column) { delete(ImmutableMultimap.of(row, column)); }
public static ColumnSelection getColumnSelection(NamespacedTodoColumn... cols) { return getColumnSelection(Arrays.asList(cols)); }
@Override public void touch(Multimap<NamespacedTodoRow, NamespacedTodoColumn> values) { Multimap<NamespacedTodoRow, NamespacedTodoColumnValue> currentValues = get(values); put(currentValues); Multimap<NamespacedTodoRow, NamespacedTodoColumn> toDelete = HashMultimap.create(values); for (Map.Entry<NamespacedTodoRow, NamespacedTodoColumnValue> e : currentValues.entries()) { toDelete.remove(e.getKey(), e.getValue().getColumnName()); } delete(toDelete); }
public long addNamespacedTodoWithIdAndReturnTimestamp(long id, String namespace, Todo todo) { return transactionManager.runTaskWithRetry(tx -> { TodoSchemaTableFactory.of().getNamespacedTodoTable(tx).put( NamespacedTodoTable.NamespacedTodoRow.of(namespace), NamespacedTodoTable.NamespacedTodoColumnValue.of( NamespacedTodoTable.NamespacedTodoColumn.of(id), todo.text())); return tx.getTimestamp(); }); }
static NamespacedTodoTable of(Transaction t, Namespace namespace) { return new NamespacedTodoTable(t, namespace, ImmutableList.<NamespacedTodoTrigger>of()); }