Interface RowFilterOrBuilder

  • All Superinterfaces:
    com.google.protobuf.MessageLiteOrBuilder, com.google.protobuf.MessageOrBuilder
    All Known Implementing Classes:
    RowFilter, RowFilter.Builder

    public interface RowFilterOrBuilder
    extends com.google.protobuf.MessageOrBuilder
    • Method Detail

      • hasChain

        boolean hasChain()
         Applies several RowFilters to the data in sequence, progressively
         narrowing the results.
         
        .google.bigtable.v2.RowFilter.Chain chain = 1;
        Returns:
        Whether the chain field is set.
      • getChain

        RowFilter.Chain getChain()
         Applies several RowFilters to the data in sequence, progressively
         narrowing the results.
         
        .google.bigtable.v2.RowFilter.Chain chain = 1;
        Returns:
        The chain.
      • getChainOrBuilder

        RowFilter.ChainOrBuilder getChainOrBuilder()
         Applies several RowFilters to the data in sequence, progressively
         narrowing the results.
         
        .google.bigtable.v2.RowFilter.Chain chain = 1;
      • hasInterleave

        boolean hasInterleave()
         Applies several RowFilters to the data in parallel and combines the
         results.
         
        .google.bigtable.v2.RowFilter.Interleave interleave = 2;
        Returns:
        Whether the interleave field is set.
      • getInterleave

        RowFilter.Interleave getInterleave()
         Applies several RowFilters to the data in parallel and combines the
         results.
         
        .google.bigtable.v2.RowFilter.Interleave interleave = 2;
        Returns:
        The interleave.
      • getInterleaveOrBuilder

        RowFilter.InterleaveOrBuilder getInterleaveOrBuilder()
         Applies several RowFilters to the data in parallel and combines the
         results.
         
        .google.bigtable.v2.RowFilter.Interleave interleave = 2;
      • hasCondition

        boolean hasCondition()
         Applies one of two possible RowFilters to the data based on the output of
         a predicate RowFilter.
         
        .google.bigtable.v2.RowFilter.Condition condition = 3;
        Returns:
        Whether the condition field is set.
      • getCondition

        RowFilter.Condition getCondition()
         Applies one of two possible RowFilters to the data based on the output of
         a predicate RowFilter.
         
        .google.bigtable.v2.RowFilter.Condition condition = 3;
        Returns:
        The condition.
      • getConditionOrBuilder

        RowFilter.ConditionOrBuilder getConditionOrBuilder()
         Applies one of two possible RowFilters to the data based on the output of
         a predicate RowFilter.
         
        .google.bigtable.v2.RowFilter.Condition condition = 3;
      • hasSink

        boolean hasSink()
         ADVANCED USE ONLY.
         Hook for introspection into the RowFilter. Outputs all cells directly to
         the output of the read rather than to any parent filter. Consider the
         following example:
        
             Chain(
               FamilyRegex("A"),
               Interleave(
                 All(),
                 Chain(Label("foo"), Sink())
               ),
               QualifierRegex("B")
             )
        
                                 A,A,1,w
                                 A,B,2,x
                                 B,B,4,z
                                    |
                             FamilyRegex("A")
                                    |
                                 A,A,1,w
                                 A,B,2,x
                                    |
                       +------------+-------------+
                       |                          |
                     All()                    Label(foo)
                       |                          |
                    A,A,1,w              A,A,1,w,labels:[foo]
                    A,B,2,x              A,B,2,x,labels:[foo]
                       |                          |
                       |                        Sink() --------------+
                       |                          |                  |
                       +------------+      x------+          A,A,1,w,labels:[foo]
                                    |                        A,B,2,x,labels:[foo]
                                 A,A,1,w                             |
                                 A,B,2,x                             |
                                    |                                |
                            QualifierRegex("B")                      |
                                    |                                |
                                 A,B,2,x                             |
                                    |                                |
                                    +--------------------------------+
                                    |
                                 A,A,1,w,labels:[foo]
                                 A,B,2,x,labels:[foo]  // could be switched
                                 A,B,2,x               // could be switched
        
         Despite being excluded by the qualifier filter, a copy of every cell
         that reaches the sink is present in the final result.
        
         As with an [Interleave][google.bigtable.v2.RowFilter.Interleave],
         duplicate cells are possible, and appear in an unspecified mutual order.
         In this case we have a duplicate with column "A:B" and timestamp 2,
         because one copy passed through the all filter while the other was
         passed through the label and sink. Note that one copy has label "foo",
         while the other does not.
        
         Cannot be used within the `predicate_filter`, `true_filter`, or
         `false_filter` of a [Condition][google.bigtable.v2.RowFilter.Condition].
         
        bool sink = 16;
        Returns:
        Whether the sink field is set.
      • getSink

        boolean getSink()
         ADVANCED USE ONLY.
         Hook for introspection into the RowFilter. Outputs all cells directly to
         the output of the read rather than to any parent filter. Consider the
         following example:
        
             Chain(
               FamilyRegex("A"),
               Interleave(
                 All(),
                 Chain(Label("foo"), Sink())
               ),
               QualifierRegex("B")
             )
        
                                 A,A,1,w
                                 A,B,2,x
                                 B,B,4,z
                                    |
                             FamilyRegex("A")
                                    |
                                 A,A,1,w
                                 A,B,2,x
                                    |
                       +------------+-------------+
                       |                          |
                     All()                    Label(foo)
                       |                          |
                    A,A,1,w              A,A,1,w,labels:[foo]
                    A,B,2,x              A,B,2,x,labels:[foo]
                       |                          |
                       |                        Sink() --------------+
                       |                          |                  |
                       +------------+      x------+          A,A,1,w,labels:[foo]
                                    |                        A,B,2,x,labels:[foo]
                                 A,A,1,w                             |
                                 A,B,2,x                             |
                                    |                                |
                            QualifierRegex("B")                      |
                                    |                                |
                                 A,B,2,x                             |
                                    |                                |
                                    +--------------------------------+
                                    |
                                 A,A,1,w,labels:[foo]
                                 A,B,2,x,labels:[foo]  // could be switched
                                 A,B,2,x               // could be switched
        
         Despite being excluded by the qualifier filter, a copy of every cell
         that reaches the sink is present in the final result.
        
         As with an [Interleave][google.bigtable.v2.RowFilter.Interleave],
         duplicate cells are possible, and appear in an unspecified mutual order.
         In this case we have a duplicate with column "A:B" and timestamp 2,
         because one copy passed through the all filter while the other was
         passed through the label and sink. Note that one copy has label "foo",
         while the other does not.
        
         Cannot be used within the `predicate_filter`, `true_filter`, or
         `false_filter` of a [Condition][google.bigtable.v2.RowFilter.Condition].
         
        bool sink = 16;
        Returns:
        The sink.
      • hasPassAllFilter

        boolean hasPassAllFilter()
         Matches all cells, regardless of input. Functionally equivalent to
         leaving `filter` unset, but included for completeness.
         
        bool pass_all_filter = 17;
        Returns:
        Whether the passAllFilter field is set.
      • getPassAllFilter

        boolean getPassAllFilter()
         Matches all cells, regardless of input. Functionally equivalent to
         leaving `filter` unset, but included for completeness.
         
        bool pass_all_filter = 17;
        Returns:
        The passAllFilter.
      • hasBlockAllFilter

        boolean hasBlockAllFilter()
         Does not match any cells, regardless of input. Useful for temporarily
         disabling just part of a filter.
         
        bool block_all_filter = 18;
        Returns:
        Whether the blockAllFilter field is set.
      • getBlockAllFilter

        boolean getBlockAllFilter()
         Does not match any cells, regardless of input. Useful for temporarily
         disabling just part of a filter.
         
        bool block_all_filter = 18;
        Returns:
        The blockAllFilter.
      • hasRowKeyRegexFilter

        boolean hasRowKeyRegexFilter()
         Matches only cells from rows whose keys satisfy the given RE2 regex. In
         other words, passes through the entire row when the key matches, and
         otherwise produces an empty row.
         Note that, since row keys can contain arbitrary bytes, the `\C` escape
         sequence must be used if a true wildcard is desired. The `.` character
         will not match the new line character `\n`, which may be present in a
         binary key.
         
        bytes row_key_regex_filter = 4;
        Returns:
        Whether the rowKeyRegexFilter field is set.
      • getRowKeyRegexFilter

        com.google.protobuf.ByteString getRowKeyRegexFilter()
         Matches only cells from rows whose keys satisfy the given RE2 regex. In
         other words, passes through the entire row when the key matches, and
         otherwise produces an empty row.
         Note that, since row keys can contain arbitrary bytes, the `\C` escape
         sequence must be used if a true wildcard is desired. The `.` character
         will not match the new line character `\n`, which may be present in a
         binary key.
         
        bytes row_key_regex_filter = 4;
        Returns:
        The rowKeyRegexFilter.
      • hasRowSampleFilter

        boolean hasRowSampleFilter()
         Matches all cells from a row with probability p, and matches no cells
         from the row with probability 1-p.
         
        double row_sample_filter = 14;
        Returns:
        Whether the rowSampleFilter field is set.
      • getRowSampleFilter

        double getRowSampleFilter()
         Matches all cells from a row with probability p, and matches no cells
         from the row with probability 1-p.
         
        double row_sample_filter = 14;
        Returns:
        The rowSampleFilter.
      • hasFamilyNameRegexFilter

        boolean hasFamilyNameRegexFilter()
         Matches only cells from columns whose families satisfy the given RE2
         regex. For technical reasons, the regex must not contain the `:`
         character, even if it is not being used as a literal.
         Note that, since column families cannot contain the new line character
         `\n`, it is sufficient to use `.` as a full wildcard when matching
         column family names.
         
        string family_name_regex_filter = 5;
        Returns:
        Whether the familyNameRegexFilter field is set.
      • getFamilyNameRegexFilter

        String getFamilyNameRegexFilter()
         Matches only cells from columns whose families satisfy the given RE2
         regex. For technical reasons, the regex must not contain the `:`
         character, even if it is not being used as a literal.
         Note that, since column families cannot contain the new line character
         `\n`, it is sufficient to use `.` as a full wildcard when matching
         column family names.
         
        string family_name_regex_filter = 5;
        Returns:
        The familyNameRegexFilter.
      • getFamilyNameRegexFilterBytes

        com.google.protobuf.ByteString getFamilyNameRegexFilterBytes()
         Matches only cells from columns whose families satisfy the given RE2
         regex. For technical reasons, the regex must not contain the `:`
         character, even if it is not being used as a literal.
         Note that, since column families cannot contain the new line character
         `\n`, it is sufficient to use `.` as a full wildcard when matching
         column family names.
         
        string family_name_regex_filter = 5;
        Returns:
        The bytes for familyNameRegexFilter.
      • hasColumnQualifierRegexFilter

        boolean hasColumnQualifierRegexFilter()
         Matches only cells from columns whose qualifiers satisfy the given RE2
         regex.
         Note that, since column qualifiers can contain arbitrary bytes, the `\C`
         escape sequence must be used if a true wildcard is desired. The `.`
         character will not match the new line character `\n`, which may be
         present in a binary qualifier.
         
        bytes column_qualifier_regex_filter = 6;
        Returns:
        Whether the columnQualifierRegexFilter field is set.
      • getColumnQualifierRegexFilter

        com.google.protobuf.ByteString getColumnQualifierRegexFilter()
         Matches only cells from columns whose qualifiers satisfy the given RE2
         regex.
         Note that, since column qualifiers can contain arbitrary bytes, the `\C`
         escape sequence must be used if a true wildcard is desired. The `.`
         character will not match the new line character `\n`, which may be
         present in a binary qualifier.
         
        bytes column_qualifier_regex_filter = 6;
        Returns:
        The columnQualifierRegexFilter.
      • hasColumnRangeFilter

        boolean hasColumnRangeFilter()
         Matches only cells from columns within the given range.
         
        .google.bigtable.v2.ColumnRange column_range_filter = 7;
        Returns:
        Whether the columnRangeFilter field is set.
      • getColumnRangeFilter

        ColumnRange getColumnRangeFilter()
         Matches only cells from columns within the given range.
         
        .google.bigtable.v2.ColumnRange column_range_filter = 7;
        Returns:
        The columnRangeFilter.
      • getColumnRangeFilterOrBuilder

        ColumnRangeOrBuilder getColumnRangeFilterOrBuilder()
         Matches only cells from columns within the given range.
         
        .google.bigtable.v2.ColumnRange column_range_filter = 7;
      • hasTimestampRangeFilter

        boolean hasTimestampRangeFilter()
         Matches only cells with timestamps within the given range.
         
        .google.bigtable.v2.TimestampRange timestamp_range_filter = 8;
        Returns:
        Whether the timestampRangeFilter field is set.
      • getTimestampRangeFilter

        TimestampRange getTimestampRangeFilter()
         Matches only cells with timestamps within the given range.
         
        .google.bigtable.v2.TimestampRange timestamp_range_filter = 8;
        Returns:
        The timestampRangeFilter.
      • getTimestampRangeFilterOrBuilder

        TimestampRangeOrBuilder getTimestampRangeFilterOrBuilder()
         Matches only cells with timestamps within the given range.
         
        .google.bigtable.v2.TimestampRange timestamp_range_filter = 8;
      • hasValueRegexFilter

        boolean hasValueRegexFilter()
         Matches only cells with values that satisfy the given regular expression.
         Note that, since cell values can contain arbitrary bytes, the `\C` escape
         sequence must be used if a true wildcard is desired. The `.` character
         will not match the new line character `\n`, which may be present in a
         binary value.
         
        bytes value_regex_filter = 9;
        Returns:
        Whether the valueRegexFilter field is set.
      • getValueRegexFilter

        com.google.protobuf.ByteString getValueRegexFilter()
         Matches only cells with values that satisfy the given regular expression.
         Note that, since cell values can contain arbitrary bytes, the `\C` escape
         sequence must be used if a true wildcard is desired. The `.` character
         will not match the new line character `\n`, which may be present in a
         binary value.
         
        bytes value_regex_filter = 9;
        Returns:
        The valueRegexFilter.
      • hasValueRangeFilter

        boolean hasValueRangeFilter()
         Matches only cells with values that fall within the given range.
         
        .google.bigtable.v2.ValueRange value_range_filter = 15;
        Returns:
        Whether the valueRangeFilter field is set.
      • getValueRangeFilter

        ValueRange getValueRangeFilter()
         Matches only cells with values that fall within the given range.
         
        .google.bigtable.v2.ValueRange value_range_filter = 15;
        Returns:
        The valueRangeFilter.
      • getValueRangeFilterOrBuilder

        ValueRangeOrBuilder getValueRangeFilterOrBuilder()
         Matches only cells with values that fall within the given range.
         
        .google.bigtable.v2.ValueRange value_range_filter = 15;
      • hasCellsPerRowOffsetFilter

        boolean hasCellsPerRowOffsetFilter()
         Skips the first N cells of each row, matching all subsequent cells.
         If duplicate cells are present, as is possible when using an Interleave,
         each copy of the cell is counted separately.
         
        int32 cells_per_row_offset_filter = 10;
        Returns:
        Whether the cellsPerRowOffsetFilter field is set.
      • getCellsPerRowOffsetFilter

        int getCellsPerRowOffsetFilter()
         Skips the first N cells of each row, matching all subsequent cells.
         If duplicate cells are present, as is possible when using an Interleave,
         each copy of the cell is counted separately.
         
        int32 cells_per_row_offset_filter = 10;
        Returns:
        The cellsPerRowOffsetFilter.
      • hasCellsPerRowLimitFilter

        boolean hasCellsPerRowLimitFilter()
         Matches only the first N cells of each row.
         If duplicate cells are present, as is possible when using an Interleave,
         each copy of the cell is counted separately.
         
        int32 cells_per_row_limit_filter = 11;
        Returns:
        Whether the cellsPerRowLimitFilter field is set.
      • getCellsPerRowLimitFilter

        int getCellsPerRowLimitFilter()
         Matches only the first N cells of each row.
         If duplicate cells are present, as is possible when using an Interleave,
         each copy of the cell is counted separately.
         
        int32 cells_per_row_limit_filter = 11;
        Returns:
        The cellsPerRowLimitFilter.
      • hasCellsPerColumnLimitFilter

        boolean hasCellsPerColumnLimitFilter()
         Matches only the most recent N cells within each column. For example,
         if N=2, this filter would match column `foo:bar` at timestamps 10 and 9,
         skip all earlier cells in `foo:bar`, and then begin matching again in
         column `foo:bar2`.
         If duplicate cells are present, as is possible when using an Interleave,
         each copy of the cell is counted separately.
         
        int32 cells_per_column_limit_filter = 12;
        Returns:
        Whether the cellsPerColumnLimitFilter field is set.
      • getCellsPerColumnLimitFilter

        int getCellsPerColumnLimitFilter()
         Matches only the most recent N cells within each column. For example,
         if N=2, this filter would match column `foo:bar` at timestamps 10 and 9,
         skip all earlier cells in `foo:bar`, and then begin matching again in
         column `foo:bar2`.
         If duplicate cells are present, as is possible when using an Interleave,
         each copy of the cell is counted separately.
         
        int32 cells_per_column_limit_filter = 12;
        Returns:
        The cellsPerColumnLimitFilter.
      • hasStripValueTransformer

        boolean hasStripValueTransformer()
         Replaces each cell's value with the empty string.
         
        bool strip_value_transformer = 13;
        Returns:
        Whether the stripValueTransformer field is set.
      • getStripValueTransformer

        boolean getStripValueTransformer()
         Replaces each cell's value with the empty string.
         
        bool strip_value_transformer = 13;
        Returns:
        The stripValueTransformer.
      • hasApplyLabelTransformer

        boolean hasApplyLabelTransformer()
         Applies the given label to all cells in the output row. This allows
         the client to determine which results were produced from which part of
         the filter.
        
         Values must be at most 15 characters in length, and match the RE2
         pattern `[a-z0-9\\-]+`
        
         Due to a technical limitation, it is not currently possible to apply
         multiple labels to a cell. As a result, a Chain may have no more than
         one sub-filter which contains a `apply_label_transformer`. It is okay for
         an Interleave to contain multiple `apply_label_transformers`, as they
         will be applied to separate copies of the input. This may be relaxed in
         the future.
         
        string apply_label_transformer = 19;
        Returns:
        Whether the applyLabelTransformer field is set.
      • getApplyLabelTransformer

        String getApplyLabelTransformer()
         Applies the given label to all cells in the output row. This allows
         the client to determine which results were produced from which part of
         the filter.
        
         Values must be at most 15 characters in length, and match the RE2
         pattern `[a-z0-9\\-]+`
        
         Due to a technical limitation, it is not currently possible to apply
         multiple labels to a cell. As a result, a Chain may have no more than
         one sub-filter which contains a `apply_label_transformer`. It is okay for
         an Interleave to contain multiple `apply_label_transformers`, as they
         will be applied to separate copies of the input. This may be relaxed in
         the future.
         
        string apply_label_transformer = 19;
        Returns:
        The applyLabelTransformer.
      • getApplyLabelTransformerBytes

        com.google.protobuf.ByteString getApplyLabelTransformerBytes()
         Applies the given label to all cells in the output row. This allows
         the client to determine which results were produced from which part of
         the filter.
        
         Values must be at most 15 characters in length, and match the RE2
         pattern `[a-z0-9\\-]+`
        
         Due to a technical limitation, it is not currently possible to apply
         multiple labels to a cell. As a result, a Chain may have no more than
         one sub-filter which contains a `apply_label_transformer`. It is okay for
         an Interleave to contain multiple `apply_label_transformers`, as they
         will be applied to separate copies of the input. This may be relaxed in
         the future.
         
        string apply_label_transformer = 19;
        Returns:
        The bytes for applyLabelTransformer.