#ifndef TCATALOG
#define TCATALOG

#include <iostream>
#include <map>
#include <vector>
#include "Textbook.h"
#include "File.h"

class TextbookCatalog {
  friend ostream& operator << (ostream& out, TextbookCatalog& tc);
 public:
  TextbookCatalog();
  ~TextbookCatalog();

  bool contains(string isbn);

  Textbook& find(string isbn);

  vector<Textbook> search(string key);

  bool insert(Textbook t);
  bool remove(Textbook t);
  bool remove(string isbn);
  bool replace(string isbn, Textbook t);

 private:
  File textbookdb;
  map<string,Textbook> pairs;
};

#endif
