/** * 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 ColumnCountGetFilter { required int32 limit = 1; } message ColumnPaginationFilter { required int32 limit = 1; optional int32 offset = 2; optional bytes columnOffset = 3; } message ColumnPrefixFilter { required bytes prefix = 1; } message ColumnRangeFilter { optional bytes minColumn = 1; optional bool minColumnInclusive = 2; optional bytes maxColumn = 3; optional bool maxColumnInclusive = 4; } message CompareFilter { required CompareType compareOp = 1; optional Comparator comparator = 2; } message DependentColumnFilter { required CompareFilter compareFilter = 1; optional bytes columnFamily = 2; optional bytes columnQualifier = 3; optional bool dropDependentColumn = 4; } message FamilyFilter { required CompareFilter compareFilter = 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 fuzzyKeysData = 1; } message InclusiveStopFilter { optional bytes stopRowKey = 1; } message KeyOnlyFilter { required bool lenAsVal = 1; } message MultipleColumnPrefixFilter { repeated bytes sortedPrefixes = 1; } message PageFilter { required int64 pageSize = 1; } message PrefixFilter { optional bytes prefix = 1; } message QualifierFilter { required CompareFilter compareFilter = 1; } message RandomRowFilter { required float chance = 1; } message RowFilter { required CompareFilter compareFilter = 1; } message SingleColumnValueExcludeFilter { required SingleColumnValueFilter singleColumnValueFilter = 1; } message SingleColumnValueFilter { optional bytes columnFamily = 1; optional bytes columnQualifier = 2; required CompareType compareOp = 3; required Comparator comparator = 4; optional bool filterIfMissing = 5; optional bool latestVersionOnly = 6; } message SkipFilter { required Filter filter = 1; } message TimestampsFilter { repeated int64 timestamps = 1 [packed=true]; } message ValueFilter { required CompareFilter compareFilter = 1; } message WhileMatchFilter { required Filter filter = 1; }