.setFilter(filter) .setRows(RowSet.newBuilder() .addRowKeys(ByteStringer.wrap(key.getBytes())));
.setFilter(filter) .setRows(rowSet);
@Test public void testFromProto() { ReadRowsRequest request = ReadRowsRequest.newBuilder() .setTableName(NameUtil.formatTableName(PROJECT_ID, INSTANCE_ID, TABLE_ID)) .setAppProfileId(APP_PROFILE_ID) .setFilter(RowFilter.newBuilder().setRowKeyRegexFilter(ByteString.copyFromUtf8(".*"))) .setRows( RowSet.newBuilder() .addRowKeys(ByteString.copyFromUtf8("row-key")) .addRowRanges( RowRange.newBuilder() .setStartKeyClosed(ByteString.copyFromUtf8("j")) .setEndKeyClosed(ByteString.copyFromUtf8("z")))) .build(); Query query = Query.fromProto(request); assertThat(query.toProto(requestContext)).isEqualTo(request); }
ResultScanner<FlatRow> scanner = client.readFlatRows(ReadRowsRequest.newBuilder() .setTableName(tableName) .setFilter(filter) .setRows(RowSet.newBuilder().addAllRowKeys(futures.keys()).build()) .build()
@Override public boolean start() throws IOException { RowSet.Builder rowSetBuilder = RowSet.newBuilder(); for (ByteKeyRange sourceRange : source.getRanges()) { rowSetBuilder = rowSetBuilder.addRowRanges( RowRange.newBuilder() .setStartKeyClosed(ByteString.copyFrom(sourceRange.getStartKey().getValue())) .setEndKeyOpen(ByteString.copyFrom(sourceRange.getEndKey().getValue()))); } RowSet rowSet = rowSetBuilder.build(); String tableNameSr = session.getOptions().getInstanceName().toTableNameStr(source.getTableId().get()); ReadRowsRequest.Builder requestB = ReadRowsRequest.newBuilder().setRows(rowSet).setTableName(tableNameSr); if (source.getRowFilter() != null) { requestB.setFilter(source.getRowFilter()); } results = session.getDataClient().readRows(requestB.build()); return advance(); }
ReadRowsRequest buildUpdatedRequest() { ReadRowsRequest.Builder newRequest = ReadRowsRequest.newBuilder() .setRows(filterRows()) .setTableName(originalRequest.getTableName()) .setAppProfileId(originalRequest.getAppProfileId()); if (originalRequest.hasFilter()) { newRequest.setFilter(originalRequest.getFilter()); } // If the row limit is set, update it. long numRowsLimit = originalRequest.getRowsLimit(); if (numRowsLimit > 0) { // Updates the {@code numRowsLimit} by removing the number of rows already read. numRowsLimit -= rowCount; checkArgument(numRowsLimit > 0, "The remaining number of rows must be greater than 0."); newRequest.setRowsLimit(numRowsLimit); } return newRequest.build(); }
/** * Sets the filter to apply to each row. Only one filter can be set at a time. To use multiple * filters, please use {@link Filters#interleave()} or {@link Filters#chain()}. */ public Query filter(Filters.Filter filter) { builder.setFilter(filter.toProto()); return this; }
/** {@inheritDoc} */ @Override public ReadRowsRequest.Builder adapt(Get operation, ReadHooks readHooks) { Scan operationAsScan = new Scan(addKeyOnlyFilter(operation)); scanAdapter.throwIfUnsupportedScan(operationAsScan); return ReadRowsRequest.newBuilder() .setFilter(scanAdapter.buildFilter(operationAsScan, readHooks).toProto()) .setRows(RowSet.newBuilder().addRowKeys(ByteString.copyFrom(operation.getRow()))); }
/** {@inheritDoc} */ @Override public ReadRowsRequest.Builder adapt(Scan scan, ReadHooks readHooks) { throwIfUnsupportedScan(scan); ReadRowsRequest.Builder requestBuilder = ReadRowsRequest.newBuilder() .setRows(toRowSet(scan)) .setFilter(buildFilter(scan, readHooks).toProto()); if (LIMIT_AVAILABLE && scan.getLimit() > 0) { requestBuilder.setRowsLimit(scan.getLimit()); } return requestBuilder; }
@Test public void filterTest() { Query query = Query.create(TABLE_ID).filter(FILTERS.key().regex(".*")); Builder expectedProto = expectedProtoBuilder() .setFilter(RowFilter.newBuilder().setRowKeyRegexFilter(ByteString.copyFromUtf8(".*"))); ReadRowsRequest actualProto = query.toProto(requestContext); assertThat(actualProto).isEqualTo(expectedProto.build()); }
/** * Sets the filter to apply to each row. Only one filter can be set at a time. To use multiple * filters, please use {@link Filters#interleave()} or {@link Filters#chain()}. */ public Query filter(Filters.Filter filter) { builder.setFilter(filter.toProto()); return this; }