2011-09-13 17:48:33 +00:00
|
|
|
/*-
|
|
|
|
* See the file LICENSE for redistribution information.
|
|
|
|
*
|
2012-11-14 20:13:24 +00:00
|
|
|
* Copyright (c) 2005, 2012 Oracle and/or its affiliates. All rights reserved.
|
2011-09-13 17:48:33 +00:00
|
|
|
*
|
|
|
|
* $Id$
|
|
|
|
*/
|
|
|
|
|
|
|
|
// File: MyDb.hpp
|
|
|
|
|
|
|
|
#ifndef MYDB_H
|
|
|
|
#define MYDB_H
|
|
|
|
|
|
|
|
#include <string>
|
|
|
|
#include <db_cxx.h>
|
|
|
|
|
|
|
|
class MyDb
|
|
|
|
{
|
|
|
|
public:
|
|
|
|
// Constructor requires a path to the database,
|
|
|
|
// and a database name.
|
|
|
|
MyDb(std::string &path, std::string &dbName,
|
|
|
|
bool isSecondary = false);
|
|
|
|
|
|
|
|
// Our destructor just calls our private close method.
|
|
|
|
~MyDb() { close(); }
|
|
|
|
|
|
|
|
inline Db &getDb() {return db_;}
|
|
|
|
|
|
|
|
private:
|
|
|
|
Db db_;
|
|
|
|
std::string dbFileName_;
|
|
|
|
u_int32_t cFlags_;
|
|
|
|
|
|
|
|
// Make sure the default constructor is private
|
|
|
|
// We don't want it used.
|
|
|
|
MyDb() : db_(NULL, 0) {}
|
|
|
|
|
|
|
|
// We put our database close activity here.
|
|
|
|
// This is called from our destructor. In
|
|
|
|
// a more complicated example, we might want
|
|
|
|
// to make this method public, but a private
|
|
|
|
// method is more appropriate for this example.
|
|
|
|
void close();
|
|
|
|
};
|
|
|
|
#endif
|