From 1b4ccfdba4d0c2b6149db1786d087477bf5318ef Mon Sep 17 00:00:00 2001 From: Xu Peng Date: Thu, 18 Apr 2019 09:54:50 +0800 Subject: [PATCH] feat(db): impl get_group Former-commit-id: 5519dfb718d786120322faacd32ef364bcf8b82a --- cpp/src/db/DBMetaImpl.cpp | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/cpp/src/db/DBMetaImpl.cpp b/cpp/src/db/DBMetaImpl.cpp index 5d68e5283f..055b9bab42 100644 --- a/cpp/src/db/DBMetaImpl.cpp +++ b/cpp/src/db/DBMetaImpl.cpp @@ -71,8 +71,23 @@ Status DBMetaImpl::add_group(GroupSchema& group_info) { return Status::OK(); } -Status DBMetaImpl::get_group(GroupSchema& group_info_) { +Status DBMetaImpl::get_group(GroupSchema& group_info) { + auto groups = ConnectorPtr->select(columns(&GroupSchema::id, + &GroupSchema::group_id, + &GroupSchema::files_cnt, + &GroupSchema::dimension), + where(c(&GroupSchema::group_id) == group_info.group_id)); + assert(groups.size() <= 1); + if (groups.size() == 1) { + group_info.id = std::get<0>(groups[0]); + group_info.files_cnt = std::get<2>(groups[0]); + group_info.dimension = std::get<3>(groups[0]); + } else { + return Status::NotFound("Group " + group_info.group_id + " not found"); + } + std::cout << __func__ << ": gid=" << group_info.group_id + << " dimension=" << group_info.dimension << std::endl; return Status::OK(); }