// smtpd/SmtpdDb.hh
// This file is part of Decimail; see http://decimail.org
// (C) 2004-2007 Philip Endecott
 
// This program is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation; either version 2 of the License, or
// any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 
#ifndef SmtpdDb_hh
#define SmtpdDb_hh

#include "DmDatabase.hh"

namespace Smtpd {

class SmtpdDb: public DmDatabase {

public:

  SmtpdDb(void);

  pbe::OptQuery<username_t, std::string>                q_get_username_for_recipient;
  pbe::SingletonQuery<int, username_t,std::string>      q_test_username_and_recipient;
  pbe::ColumnQuery<msg_id_t, username_t,rfc822_messageid_t> q_get_msg_id_for_rfc822_messageid;
  pbe::OptQuery<username_t, std::string>                q_get_username_for_autoaddr;
  pbe::ColumnQuery<std::string, username_t,std::string> q_get_custom_addr_for_username_recipient;
  pbe::SingletonQuery<std::string, username_t>          q_get_random_template_for_username;
  pbe::Query<username_t,std::string,std::string>        q_insert_custom_recipient;
  pbe::Query<username_t,std::string,std::string>        q_insert_random_addr;
};

};


#endif
