nchbase.1.8.0.source-code.Filter.proto Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of asynchbase Show documentation
Show all versions of asynchbase Show documentation
An alternative HBase client library for applications requiring fully
asynchronous, non-blocking and thread-safe HBase connectivity.
/**
* 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.hbase.async.generated";
option java_outer_classname = "FilterPB";
option java_generic_services = false;
option java_generate_equals_and_hash = false;
option optimize_for = LITE_RUNTIME;
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];
optional bool can_hint = 2;
}
message ValueFilter {
required CompareFilter compare_filter = 1;
}
message WhileMatchFilter {
required Filter filter = 1;
}
message FilterAllFilter {
}
message RowRange {
optional bytes start_row = 1;
optional bool start_row_inclusive = 2;
optional bytes stop_row = 3;
optional bool stop_row_inclusive =4;
}
message MultiRowRangeFilter {
repeated RowRange row_range_list = 1;
}