.addRowRanges( RowRange.newBuilder() .setStartKeyClosed(ByteString.copyFromUtf8("8-range-1-start")) .setEndKeyOpen(ByteString.copyFromUtf8("9-range-1-end"))) .addRowRanges( RowRange.newBuilder() .setStartKeyClosed(ByteString.copyFromUtf8("3-range-2-start")) .setEndKeyOpen(ByteString.copyFromUtf8("4-range-2-end"))) .build(); .addRowRanges( RowRange.newBuilder() .setStartKeyClosed(ByteString.copyFromUtf8("3-range-2-start")) .setEndKeyOpen(ByteString.copyFromUtf8("4-range-2-end"))) .build(), RowSet.newBuilder() .addRowRanges( RowRange.newBuilder() .setStartKeyClosed(ByteString.copyFromUtf8("8-range-1-start")) .setEndKeyOpen(ByteString.copyFromUtf8("9-range-1-end"))) .build());
RowRange leftSubRange = rowRange.toBuilder().setEndKeyClosed(splitPoint).build(); segment.addRowRanges(leftSubRange); RowRange rightSubRange = rowRange.toBuilder().setStartKeyOpen(splitPoint).build(); rowRanges[i] = rightSubRange;
RowRange leftSubRange = rowRange.toBuilder().setEndKeyClosed(splitPoint).build(); segment.addRowRanges(leftSubRange); RowRange rightSubRange = rowRange.toBuilder().setStartKeyOpen(splitPoint).build(); rowRanges[i] = rightSubRange;
switch (guavaRange.lowerBoundType()) { case CLOSED: btRange.setStartKeyClosed(guavaRange.lowerEndpoint().getKey()); break; case OPEN: btRange.setStartKeyOpen(guavaRange.lowerEndpoint().getKey()); break; default: switch (guavaRange.upperBoundType()) { case CLOSED: btRange.setEndKeyClosed(guavaRange.upperEndpoint().getKey()); break; case OPEN: btRange.setEndKeyOpen(guavaRange.upperEndpoint().getKey()); break; default:
RowRange .newBuilder() .setStartKeyOpen(lastFoundKey) .setEndKeyOpen(ByteString.EMPTY) .build()); && startKeyIsAlreadyRead(rowRange.getStartKeyOpen())) || startKeyCase == StartKeyCase.STARTKEY_NOT_SET) { newRowRange = newRowRange.toBuilder().setStartKeyOpen(lastFoundKey).build();
case START_KEY_CLOSED: setStartKeyClosed(other.getStartKeyClosed()); break; setStartKeyOpen(other.getStartKeyOpen()); break; case END_KEY_OPEN: setEndKeyOpen(other.getEndKeyOpen()); break; setEndKeyClosed(other.getEndKeyClosed()); break; this.mergeUnknownFields(other.unknownFields); onChanged(); return this;
if (!OPEN_CLOSED_AVAILABLE || scan.includeStartRow()) { range.setStartKeyClosed(startRow); } else { range.setStartKeyOpen(startRow); if (!OPEN_CLOSED_AVAILABLE || !scan.includeStopRow()) { range.setEndKeyOpen(stopRow); } else { range.setEndKeyClosed(stopRow);
switch (other.getStartKeyCase()) { case START_KEY_CLOSED: { setStartKeyClosed(other.getStartKeyClosed()); break; setStartKeyOpen(other.getStartKeyOpen()); break; setEndKeyOpen(other.getEndKeyOpen()); break; setEndKeyClosed(other.getEndKeyClosed()); break; onChanged(); return this;
rangeBuilder.setStartKeyOpen(range.getStart()); break; case CLOSED: rangeBuilder.setStartKeyClosed(range.getStart()); break; case UNBOUNDED: rangeBuilder.clearStartKey(); break; default: rangeBuilder.setEndKeyOpen(range.getEnd()); break; case CLOSED: rangeBuilder.setEndKeyClosed(range.getEnd()); break; case UNBOUNDED: rangeBuilder.clearEndKey(); break; default: builder.getRowsBuilder().addRowRanges(rangeBuilder.build());
/** * * * <pre> * Contiguous row ranges included in the set. * </pre> * * <code>repeated .google.bigtable.v2.RowRange row_ranges = 2;</code> */ public Builder addRowRanges( int index, com.google.bigtable.v2.RowRange.Builder builderForValue) { if (rowRangesBuilder_ == null) { ensureRowRangesIsMutable(); rowRanges_.add(index, builderForValue.build()); onChanged(); } else { rowRangesBuilder_.addMessage(index, builderForValue.build()); } return this; } /**
/** * * * <pre> * Contiguous row ranges included in the set. * </pre> * * <code>repeated .google.bigtable.v2.RowRange row_ranges = 2;</code> */ public Builder setRowRanges( int index, com.google.bigtable.v2.RowRange.Builder builderForValue) { if (rowRangesBuilder_ == null) { ensureRowRangesIsMutable(); rowRanges_.set(index, builderForValue.build()); onChanged(); } else { rowRangesBuilder_.setMessage(index, builderForValue.build()); } return this; } /**
/** Helper function to get a table's data. */ private List<KV<ByteString, ByteString>> getTableData(String tableName) throws IOException { // Add empty range to avoid TARGET_NOT_SET error RowRange range = RowRange.newBuilder() .setStartKeyClosed(ByteString.EMPTY) .setEndKeyOpen(ByteString.EMPTY) .build(); RowSet rowSet = RowSet.newBuilder().addRowRanges(range).build(); ReadRowsRequest.Builder readRowsRequestBuilder = ReadRowsRequest.newBuilder().setTableName(tableName).setRows(rowSet); ResultScanner<Row> scanner = session.getDataClient().readRows(readRowsRequestBuilder.build()); Row currentRow; List<KV<ByteString, ByteString>> tableData = new ArrayList<>(); while ((currentRow = scanner.next()) != null) { ByteString key = currentRow.getKey(); ByteString value = currentRow.getFamilies(0).getColumns(0).getCells(0).getValue(); tableData.add(KV.of(key, value)); } scanner.close(); return tableData; }
/** * <pre> * Contiguous row ranges included in the set. * </pre> * * <code>repeated .google.bigtable.v2.RowRange row_ranges = 2;</code> */ public Builder addRowRanges( int index, com.google.bigtable.v2.RowRange.Builder builderForValue) { if (rowRangesBuilder_ == null) { ensureRowRangesIsMutable(); rowRanges_.add(index, builderForValue.build()); onChanged(); } else { rowRangesBuilder_.addMessage(index, builderForValue.build()); } return this; } /**
/** * * * <pre> * Contiguous row ranges included in the set. * </pre> * * <code>repeated .google.bigtable.v2.RowRange row_ranges = 2;</code> */ public Builder addRowRanges(com.google.bigtable.v2.RowRange.Builder builderForValue) { if (rowRangesBuilder_ == null) { ensureRowRangesIsMutable(); rowRanges_.add(builderForValue.build()); onChanged(); } else { rowRangesBuilder_.addMessage(builderForValue.build()); } return this; } /**
@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(); }
/** * <pre> * Contiguous row ranges included in the set. * </pre> * * <code>repeated .google.bigtable.v2.RowRange row_ranges = 2;</code> */ public Builder addRowRanges( com.google.bigtable.v2.RowRange.Builder builderForValue) { if (rowRangesBuilder_ == null) { ensureRowRangesIsMutable(); rowRanges_.add(builderForValue.build()); onChanged(); } else { rowRangesBuilder_.addMessage(builderForValue.build()); } return this; } /**
/** * <pre> * Contiguous row ranges included in the set. * </pre> * * <code>repeated .google.bigtable.v2.RowRange row_ranges = 2;</code> */ public Builder setRowRanges( int index, com.google.bigtable.v2.RowRange.Builder builderForValue) { if (rowRangesBuilder_ == null) { ensureRowRangesIsMutable(); rowRanges_.set(index, builderForValue.build()); onChanged(); } else { rowRangesBuilder_.setMessage(index, builderForValue.build()); } return this; } /**
/** * Adds a range to be looked up. * * @param start The beginning of the range (inclusive). Can be null to represent negative * infinity. * @param end The end of the range (exclusive). Can be null to represent positive infinity. */ public Query range(ByteString start, ByteString end) { RowRange.Builder rangeBuilder = RowRange.newBuilder(); if (start != null) { rangeBuilder.setStartKeyClosed(start); } if (end != null) { rangeBuilder.setEndKeyOpen(end); } builder.getRowsBuilder().addRowRanges(rangeBuilder.build()); return this; }