/** * Licensed to the Apache Software Foundation (ASF) under one * or more contributor license agreements. See the NOTICE file * distributed with this work for additional information * regarding copyright ownership. The ASF licenses this file * to you under the Apache License, Version 2.0 (the * "License"); you may not use this file except in compliance * with the License. You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ // This file contains protocol buffers that are used for filters option java_package = "org.apache.hadoop.hbase.protobuf.generated"; option java_outer_classname = "FilterProtos"; option java_generic_services = true; option java_generate_equals_and_hash = true; option optimize_for = SPEED; import "HBase.proto"; import "Comparator.proto"; message Filter { required string name = 1; optional bytes serialized_filter = 2; } message ColumnCountGetFilter { required int32 limit = 1; } message ColumnPaginationFilter { required int32 limit = 1; optional int32 offset = 2; optional bytes column_offset = 3; } message ColumnPrefixFilter { required bytes prefix = 1; } message ColumnRangeFilter { optional bytes min_column = 1; optional bool min_column_inclusive = 2; optional bytes max_column = 3; optional bool max_column_inclusive = 4; } message CompareFilter { required CompareType compare_op = 1; optional Comparator comparator = 2; } message DependentColumnFilter { required CompareFilter compare_filter = 1; optional bytes column_family = 2; optional bytes column_qualifier = 3; optional bool drop_dependent_column = 4; } message FamilyFilter { required CompareFilter compare_filter = 1; } message FilterList { required Operator operator = 1; repeated Filter filters = 2; enum Operator { MUST_PASS_ALL = 1; MUST_PASS_ONE = 2; } } message FilterWrapper { required Filter filter = 1; } message FirstKeyOnlyFilter { } message FirstKeyValueMatchingQualifiersFilter { repeated bytes qualifiers = 1; } message FuzzyRowFilter { repeated BytesBytesPair fuzzy_keys_data = 1; } message InclusiveStopFilter { optional bytes stop_row_key = 1; } message KeyOnlyFilter { required bool len_as_val = 1; } message MultipleColumnPrefixFilter { repeated bytes sorted_prefixes = 1; } message PageFilter { required int64 page_size = 1; } message PrefixFilter { optional bytes prefix = 1; } message QualifierFilter { required CompareFilter compare_filter = 1; } message RandomRowFilter { required float chance = 1; } message RowFilter { required CompareFilter compare_filter = 1; } message SingleColumnValueExcludeFilter { required SingleColumnValueFilter single_column_value_filter = 1; } message SingleColumnValueFilter { optional bytes column_family = 1; optional bytes column_qualifier = 2; required CompareType compare_op = 3; required Comparator comparator = 4; optional bool filter_if_missing = 5; optional bool latest_version_only = 6; } message SkipFilter { required Filter filter = 1; } message TimestampsFilter { repeated int64 timestamps = 1 [packed=true]; } message ValueFilter { required CompareFilter compare_filter = 1; } message WhileMatchFilter { required Filter filter = 1; } message FilterAllFilter { }