/** * 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 shared throughout HBase option java_package = "org.apache.hadoop.hbase.protobuf.generated"; option java_outer_classname = "HBaseProtos"; option java_generate_equals_and_hash = true; option optimize_for = SPEED; /** * Protocol buffer version of HRegionInfo. */ message RegionInfo { required uint64 regionId = 1; required bytes tableName = 2; optional bytes startKey = 3; optional bytes endKey = 4; optional bool offline = 5; optional bool split = 6; } /** * Container protocol buffer to specify a region. * You can specify region by region name, or the hash * of the region name, which is known as encoded * region name. */ message RegionSpecifier { required RegionSpecifierType type = 1; required bytes value = 2; enum RegionSpecifierType { // ,,. REGION_NAME = 1; // hash of ,, ENCODED_REGION_NAME = 2; } } /** * A range of time. Both from and to are Java time * stamp in milliseconds. If you don't specify a time * range, it means all time. By default, if not * specified, from = 0, and to = Long.MAX_VALUE */ message TimeRange { optional uint64 from = 1; optional uint64 to = 2; } /** * The type of the key in a KeyValue. */ enum KeyType { MINIMUM = 0; PUT = 4; DELETE = 8; DELETE_COLUMN = 12; DELETE_FAMILY = 14; // MAXIMUM is used when searching; you look from maximum on down. MAXIMUM = 255; } /** * Protocol buffer version of KeyValue. * It doesn't have those transient parameters */ message KeyValue { required bytes row = 1; required bytes family = 2; required bytes qualifier = 3; optional uint64 timestamp = 4; optional KeyType keyType = 5; optional bytes value = 6; } /** * Protocol buffer version of ServerName */ message ServerName { required string hostName = 1; optional uint32 port = 2; optional uint64 startCode = 3; }