Class RowFilter

  • All Implemented Interfaces:
    RowFilterOrBuilder, com.google.protobuf.Message, com.google.protobuf.MessageLite, com.google.protobuf.MessageLiteOrBuilder, com.google.protobuf.MessageOrBuilder, Serializable

    public final class RowFilter
    extends com.google.protobuf.GeneratedMessageV3
    implements RowFilterOrBuilder
     Takes a row as input and produces an alternate view of the row based on
     specified rules. For example, a RowFilter might trim down a row to include
     just the cells from columns matching a given regular expression, or might
     return all the cells of a row but not their values. More complicated filters
     can be composed out of these components to express requests such as, "within
     every column of a particular family, give just the two most recent cells
     which are older than timestamp X."
    
     There are two broad categories of RowFilters (true filters and transformers),
     as well as two ways to compose simple filters into more complex ones
     (chains and interleaves). They work as follows:
    
     * True filters alter the input row by excluding some of its cells wholesale
     from the output row. An example of a true filter is the `value_regex_filter`,
     which excludes cells whose values don't match the specified pattern. All
     regex true filters use RE2 syntax (https://github.com/google/re2/wiki/Syntax)
     in raw byte mode (RE2::Latin1), and are evaluated as full matches. An
     important point to keep in mind is that `RE2(.)` is equivalent by default to
     `RE2([^\n])`, meaning that it does not match newlines. When attempting to
     match an arbitrary byte, you should therefore use the escape sequence `\C`,
     which may need to be further escaped as `\\C` in your client language.
    
     * Transformers alter the input row by changing the values of some of its
     cells in the output, without excluding them completely. Currently, the only
     supported transformer is the `strip_value_transformer`, which replaces every
     cell's value with the empty string.
    
     * Chains and interleaves are described in more detail in the
     RowFilter.Chain and RowFilter.Interleave documentation.
    
     The total serialized size of a RowFilter message must not
     exceed 20480 bytes, and RowFilters may not be nested within each other
     (in Chains or Interleaves) to a depth of more than 20.
     
    Protobuf type google.bigtable.v2.RowFilter
    See Also:
    Serialized Form
    • Field Detail

      • INTERLEAVE_FIELD_NUMBER

        public static final int INTERLEAVE_FIELD_NUMBER
        See Also:
        Constant Field Values
      • PASS_ALL_FILTER_FIELD_NUMBER

        public static final int PASS_ALL_FILTER_FIELD_NUMBER
        See Also:
        Constant Field Values
      • BLOCK_ALL_FILTER_FIELD_NUMBER

        public static final int BLOCK_ALL_FILTER_FIELD_NUMBER
        See Also:
        Constant Field Values
      • ROW_KEY_REGEX_FILTER_FIELD_NUMBER

        public static final int ROW_KEY_REGEX_FILTER_FIELD_NUMBER
        See Also:
        Constant Field Values
      • ROW_SAMPLE_FILTER_FIELD_NUMBER

        public static final int ROW_SAMPLE_FILTER_FIELD_NUMBER
        See Also:
        Constant Field Values
      • FAMILY_NAME_REGEX_FILTER_FIELD_NUMBER

        public static final int FAMILY_NAME_REGEX_FILTER_FIELD_NUMBER
        See Also:
        Constant Field Values
      • COLUMN_QUALIFIER_REGEX_FILTER_FIELD_NUMBER

        public static final int COLUMN_QUALIFIER_REGEX_FILTER_FIELD_NUMBER
        See Also:
        Constant Field Values
      • COLUMN_RANGE_FILTER_FIELD_NUMBER

        public static final int COLUMN_RANGE_FILTER_FIELD_NUMBER
        See Also:
        Constant Field Values
      • TIMESTAMP_RANGE_FILTER_FIELD_NUMBER

        public static final int TIMESTAMP_RANGE_FILTER_FIELD_NUMBER
        See Also:
        Constant Field Values
      • VALUE_REGEX_FILTER_FIELD_NUMBER

        public static final int VALUE_REGEX_FILTER_FIELD_NUMBER
        See Also:
        Constant Field Values
      • VALUE_RANGE_FILTER_FIELD_NUMBER

        public static final int VALUE_RANGE_FILTER_FIELD_NUMBER
        See Also:
        Constant Field Values
      • CELLS_PER_ROW_OFFSET_FILTER_FIELD_NUMBER

        public static final int CELLS_PER_ROW_OFFSET_FILTER_FIELD_NUMBER
        See Also:
        Constant Field Values
      • CELLS_PER_ROW_LIMIT_FILTER_FIELD_NUMBER

        public static final int CELLS_PER_ROW_LIMIT_FILTER_FIELD_NUMBER
        See Also:
        Constant Field Values
      • CELLS_PER_COLUMN_LIMIT_FILTER_FIELD_NUMBER

        public static final int CELLS_PER_COLUMN_LIMIT_FILTER_FIELD_NUMBER
        See Also:
        Constant Field Values
      • STRIP_VALUE_TRANSFORMER_FIELD_NUMBER

        public static final int STRIP_VALUE_TRANSFORMER_FIELD_NUMBER
        See Also:
        Constant Field Values
      • APPLY_LABEL_TRANSFORMER_FIELD_NUMBER

        public static final int APPLY_LABEL_TRANSFORMER_FIELD_NUMBER
        See Also:
        Constant Field Values
    • Method Detail

      • newInstance

        protected Object newInstance​(com.google.protobuf.GeneratedMessageV3.UnusedPrivateParameter unused)
        Overrides:
        newInstance in class com.google.protobuf.GeneratedMessageV3
      • getDescriptor

        public static final com.google.protobuf.Descriptors.Descriptor getDescriptor()
      • internalGetFieldAccessorTable

        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable()
        Specified by:
        internalGetFieldAccessorTable in class com.google.protobuf.GeneratedMessageV3
      • hasChain

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

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

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

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

        public 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;
        Specified by:
        hasCondition in interface RowFilterOrBuilder
        Returns:
        Whether the condition field is set.
      • getCondition

        public 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;
        Specified by:
        getCondition in interface RowFilterOrBuilder
        Returns:
        The condition.
      • hasSink

        public 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;
        Specified by:
        hasSink in interface RowFilterOrBuilder
        Returns:
        Whether the sink field is set.
      • getSink

        public 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;
        Specified by:
        getSink in interface RowFilterOrBuilder
        Returns:
        The sink.
      • hasPassAllFilter

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

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

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

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

        public 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;
        Specified by:
        hasRowKeyRegexFilter in interface RowFilterOrBuilder
        Returns:
        Whether the rowKeyRegexFilter field is set.
      • getRowKeyRegexFilter

        public 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;
        Specified by:
        getRowKeyRegexFilter in interface RowFilterOrBuilder
        Returns:
        The rowKeyRegexFilter.
      • hasRowSampleFilter

        public 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;
        Specified by:
        hasRowSampleFilter in interface RowFilterOrBuilder
        Returns:
        Whether the rowSampleFilter field is set.
      • getRowSampleFilter

        public 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;
        Specified by:
        getRowSampleFilter in interface RowFilterOrBuilder
        Returns:
        The rowSampleFilter.
      • hasFamilyNameRegexFilter

        public 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;
        Specified by:
        hasFamilyNameRegexFilter in interface RowFilterOrBuilder
        Returns:
        Whether the familyNameRegexFilter field is set.
      • getFamilyNameRegexFilter

        public 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;
        Specified by:
        getFamilyNameRegexFilter in interface RowFilterOrBuilder
        Returns:
        The familyNameRegexFilter.
      • getFamilyNameRegexFilterBytes

        public 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;
        Specified by:
        getFamilyNameRegexFilterBytes in interface RowFilterOrBuilder
        Returns:
        The bytes for familyNameRegexFilter.
      • hasColumnQualifierRegexFilter

        public 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;
        Specified by:
        hasColumnQualifierRegexFilter in interface RowFilterOrBuilder
        Returns:
        Whether the columnQualifierRegexFilter field is set.
      • getColumnQualifierRegexFilter

        public 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;
        Specified by:
        getColumnQualifierRegexFilter in interface RowFilterOrBuilder
        Returns:
        The columnQualifierRegexFilter.
      • hasColumnRangeFilter

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

        public ColumnRange getColumnRangeFilter()
         Matches only cells from columns within the given range.
         
        .google.bigtable.v2.ColumnRange column_range_filter = 7;
        Specified by:
        getColumnRangeFilter in interface RowFilterOrBuilder
        Returns:
        The columnRangeFilter.
      • hasTimestampRangeFilter

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

        public TimestampRange getTimestampRangeFilter()
         Matches only cells with timestamps within the given range.
         
        .google.bigtable.v2.TimestampRange timestamp_range_filter = 8;
        Specified by:
        getTimestampRangeFilter in interface RowFilterOrBuilder
        Returns:
        The timestampRangeFilter.
      • hasValueRegexFilter

        public 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;
        Specified by:
        hasValueRegexFilter in interface RowFilterOrBuilder
        Returns:
        Whether the valueRegexFilter field is set.
      • getValueRegexFilter

        public 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;
        Specified by:
        getValueRegexFilter in interface RowFilterOrBuilder
        Returns:
        The valueRegexFilter.
      • hasValueRangeFilter

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

        public ValueRange getValueRangeFilter()
         Matches only cells with values that fall within the given range.
         
        .google.bigtable.v2.ValueRange value_range_filter = 15;
        Specified by:
        getValueRangeFilter in interface RowFilterOrBuilder
        Returns:
        The valueRangeFilter.
      • hasCellsPerRowOffsetFilter

        public 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;
        Specified by:
        hasCellsPerRowOffsetFilter in interface RowFilterOrBuilder
        Returns:
        Whether the cellsPerRowOffsetFilter field is set.
      • getCellsPerRowOffsetFilter

        public 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;
        Specified by:
        getCellsPerRowOffsetFilter in interface RowFilterOrBuilder
        Returns:
        The cellsPerRowOffsetFilter.
      • hasCellsPerRowLimitFilter

        public 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;
        Specified by:
        hasCellsPerRowLimitFilter in interface RowFilterOrBuilder
        Returns:
        Whether the cellsPerRowLimitFilter field is set.
      • getCellsPerRowLimitFilter

        public 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;
        Specified by:
        getCellsPerRowLimitFilter in interface RowFilterOrBuilder
        Returns:
        The cellsPerRowLimitFilter.
      • hasCellsPerColumnLimitFilter

        public 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;
        Specified by:
        hasCellsPerColumnLimitFilter in interface RowFilterOrBuilder
        Returns:
        Whether the cellsPerColumnLimitFilter field is set.
      • getCellsPerColumnLimitFilter

        public 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;
        Specified by:
        getCellsPerColumnLimitFilter in interface RowFilterOrBuilder
        Returns:
        The cellsPerColumnLimitFilter.
      • hasStripValueTransformer

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

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

        public 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;
        Specified by:
        hasApplyLabelTransformer in interface RowFilterOrBuilder
        Returns:
        Whether the applyLabelTransformer field is set.
      • getApplyLabelTransformer

        public 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;
        Specified by:
        getApplyLabelTransformer in interface RowFilterOrBuilder
        Returns:
        The applyLabelTransformer.
      • getApplyLabelTransformerBytes

        public 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;
        Specified by:
        getApplyLabelTransformerBytes in interface RowFilterOrBuilder
        Returns:
        The bytes for applyLabelTransformer.
      • isInitialized

        public final boolean isInitialized()
        Specified by:
        isInitialized in interface com.google.protobuf.MessageLiteOrBuilder
        Overrides:
        isInitialized in class com.google.protobuf.GeneratedMessageV3
      • writeTo

        public void writeTo​(com.google.protobuf.CodedOutputStream output)
                     throws IOException
        Specified by:
        writeTo in interface com.google.protobuf.MessageLite
        Overrides:
        writeTo in class com.google.protobuf.GeneratedMessageV3
        Throws:
        IOException
      • getSerializedSize

        public int getSerializedSize()
        Specified by:
        getSerializedSize in interface com.google.protobuf.MessageLite
        Overrides:
        getSerializedSize in class com.google.protobuf.GeneratedMessageV3
      • equals

        public boolean equals​(Object obj)
        Specified by:
        equals in interface com.google.protobuf.Message
        Overrides:
        equals in class com.google.protobuf.AbstractMessage
      • hashCode

        public int hashCode()
        Specified by:
        hashCode in interface com.google.protobuf.Message
        Overrides:
        hashCode in class com.google.protobuf.AbstractMessage
      • parseFrom

        public static RowFilter parseFrom​(ByteBuffer data)
                                   throws com.google.protobuf.InvalidProtocolBufferException
        Throws:
        com.google.protobuf.InvalidProtocolBufferException
      • parseFrom

        public static RowFilter parseFrom​(ByteBuffer data,
                                          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                                   throws com.google.protobuf.InvalidProtocolBufferException
        Throws:
        com.google.protobuf.InvalidProtocolBufferException
      • parseFrom

        public static RowFilter parseFrom​(com.google.protobuf.ByteString data)
                                   throws com.google.protobuf.InvalidProtocolBufferException
        Throws:
        com.google.protobuf.InvalidProtocolBufferException
      • parseFrom

        public static RowFilter parseFrom​(com.google.protobuf.ByteString data,
                                          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                                   throws com.google.protobuf.InvalidProtocolBufferException
        Throws:
        com.google.protobuf.InvalidProtocolBufferException
      • parseFrom

        public static RowFilter parseFrom​(byte[] data)
                                   throws com.google.protobuf.InvalidProtocolBufferException
        Throws:
        com.google.protobuf.InvalidProtocolBufferException
      • parseFrom

        public static RowFilter parseFrom​(byte[] data,
                                          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                                   throws com.google.protobuf.InvalidProtocolBufferException
        Throws:
        com.google.protobuf.InvalidProtocolBufferException
      • parseFrom

        public static RowFilter parseFrom​(com.google.protobuf.CodedInputStream input,
                                          com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                                   throws IOException
        Throws:
        IOException
      • newBuilderForType

        public RowFilter.Builder newBuilderForType()
        Specified by:
        newBuilderForType in interface com.google.protobuf.Message
        Specified by:
        newBuilderForType in interface com.google.protobuf.MessageLite
      • toBuilder

        public RowFilter.Builder toBuilder()
        Specified by:
        toBuilder in interface com.google.protobuf.Message
        Specified by:
        toBuilder in interface com.google.protobuf.MessageLite
      • newBuilderForType

        protected RowFilter.Builder newBuilderForType​(com.google.protobuf.GeneratedMessageV3.BuilderParent parent)
        Specified by:
        newBuilderForType in class com.google.protobuf.GeneratedMessageV3
      • getDefaultInstance

        public static RowFilter getDefaultInstance()
      • parser

        public static com.google.protobuf.Parser<RowFilter> parser()
      • getParserForType

        public com.google.protobuf.Parser<RowFilter> getParserForType()
        Specified by:
        getParserForType in interface com.google.protobuf.Message
        Specified by:
        getParserForType in interface com.google.protobuf.MessageLite
        Overrides:
        getParserForType in class com.google.protobuf.GeneratedMessageV3
      • getDefaultInstanceForType

        public RowFilter getDefaultInstanceForType()
        Specified by:
        getDefaultInstanceForType in interface com.google.protobuf.MessageLiteOrBuilder
        Specified by:
        getDefaultInstanceForType in interface com.google.protobuf.MessageOrBuilder