in src/hbase/client/request-converter.cc [196:222]
std::unique_ptr<hbase::pb::Get> RequestConverter::ToGet(const Get &get) {
auto pb_get = std::make_unique<hbase::pb::Get>();
pb_get->set_max_versions(get.MaxVersions());
pb_get->set_cache_blocks(get.CacheBlocks());
pb_get->set_consistency(get.Consistency());
if (!get.Timerange().IsAllTime()) {
hbase::pb::TimeRange *pb_time_range = pb_get->mutable_time_range();
pb_time_range->set_from(get.Timerange().MinTimeStamp());
pb_time_range->set_to(get.Timerange().MaxTimeStamp());
}
pb_get->set_row(get.row());
if (get.HasFamilies()) {
for (const auto &family : get.FamilyMap()) {
auto column = pb_get->add_column();
column->set_family(family.first);
for (const auto &qualifier : family.second) {
column->add_qualifier(qualifier);
}
}
}
if (get.filter() != nullptr) {
pb_get->set_allocated_filter(Filter::ToProto(*(get.filter())).release());
}
return pb_get;
}