2 * Copyright (C) 2017 Cisco Inc.
4 * This program is free software: you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License, version 2,
6 * as published by the Free Software Foundation.
8 * This program is distributed in the hope that it will be useful,
9 * but WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 * GNU General Public License for more details.
13 * You should have received a copy of the GNU General Public License
14 * along with this program. If not, see <http://www.gnu.org/licenses/>.
17 // @author Changxue Deng <chadeng@cisco.com>
19 #include <mabain/db.h>
21 using namespace mabain;
23 const char *db_dir = "./tmp_dir/";
25 // Perform exact key match
26 int main(int argc, char *argv[])
32 DB db(db_dir, CONSTS::ReaderOptions());
34 std::cerr << "failed to open mabain db: " << db.StatusStr() << "\n";
43 key[1] = "Grape Juice";
44 key[2] = "Orange Paper";
47 for(int i = 0; i < 4; i++) {
48 rval = db.FindLongestPrefix(key[i], mbdata);
49 if(rval == MBError::SUCCESS) {
50 std::cout << key[i] << ": " << std::string((char*) mbdata.buff, mbdata.data_len) << "\n";
52 std::cout << key[i] << ": not found\n";