#ifndef TAGGED_BLOCKDBC_H
#define TAGGED_BLOCKDBC_H

#include "blockdbc.h"

class tagged_blockdbc
{
public:
  tagged_blockdbc(struct sockaddr_in sin, str fsid);
  ~tagged_blockdbc();
  void put(str type, str key, str value, callback<void, bool>::ref cb);
  void get(str type, str key, callback<void, bool, str>::ref cb);
  void remove(str type, str key, callback<void, bool>::ref cb);
//  void flush(str type, str key, callback<void>::ref cb);

private:
  str fsid;
  blockdbc *bdb;

  str make_real_key(str type, str key);
};


#endif // TAGGED_BLOCKDBC_H
