X-Git-Url: https://git.teslayout.com/public/public/public/?a=blobdiff_plain;f=include%2Fanna%2Fdbms.mysql%2FDatabase.hpp;fp=include%2Fanna%2Fdbms.mysql%2FDatabase.hpp;h=0000000000000000000000000000000000000000;hb=a3b95648bd76140ef55e0b5941d423eee6c3856f;hp=b9ad79eb9cf5373a79b1f781233768eafc7124b5;hpb=94fc4366adedbf26ca6ef3104f88d41fa85f5a72;p=anna.git diff --git a/include/anna/dbms.mysql/Database.hpp b/include/anna/dbms.mysql/Database.hpp deleted file mode 100644 index b9ad79e..0000000 --- a/include/anna/dbms.mysql/Database.hpp +++ /dev/null @@ -1,105 +0,0 @@ -// ANNA - Anna is Not Nothingness Anymore // -// // -// (c) Copyright 2005-2015 Eduardo Ramos Testillano & Francisco Ruiz Rayo // -// // -// See project site at http://redmine.teslayout.com/projects/anna-suite // -// See accompanying file LICENSE or copy at http://www.teslayout.com/projects/public/anna.LICENSE // - - -#ifndef anna_dbms_mysql_Database_hpp -#define anna_dbms_mysql_Database_hpp - -#include -#include - -namespace anna { - -namespace dbms { - -namespace mysql { - -/** - Clase que modela la interaccion entre la RDMS MySQL (tm) y nuestra aplicacion. -*/ -class Database : public dbms::Database { -public: - /** - Contructor. - \param dbmsName Nombre de la base de datos. - \param host Identificador de la máquina anfitriona, que se usará para hacer las conexiones. Puede ser NULL. - \see http://dev.mysql.com/doc/refman/4.1/en/mysql-real-connect.html - */ - Database(const char* dbmsName, const char* host); - - /** - Contructor. - \param componentName Nombre logico de la base de datos por que el podemos buscar este componente. - \param dbmsName Nombre de la base de datos. - \param host Identificador de la máquina anfitriona, que se usará para hacer las conexiones. Puede ser NULL. - \see http://dev.mysql.com/doc/refman/4.1/en/mysql-real-connect.html - */ - Database(const char* componentName, const char* dbmsName, const char* host); - - /** - Destructor. - */ - virtual ~Database(); - - /** - * Devuelve el nombre de la máquina anfitriona indicado en el constructor. - * \return El nombre de la máquina anfitriona indicado en el constructor. - */ - const char* getHost() const throw() { return a_host; } - - /** - Devuelve la cadena por la que podemos buscar el componente. - \return La cadena por la que podemos buscar el componente. - \see Application::find - */ - static const char* getClassName() { return "anna::dbms::mysql::Database"; } - -private: - char* a_host; - - void do_initialize() throw(RuntimeException); - - dbms::Connection* allocateConnection(const std::string& name, const char* user, const char* password) - throw(RuntimeException); - - dbms::Statement* allocateStatement(const char* name, const std::string& expression, const bool isCritical) - throw(RuntimeException); - - dbms::InputBind* allocateInputBind(const char* name, Data&) - throw(RuntimeException); - void deallocate(dbms::InputBind* inputBind) throw(); - - dbms::OutputBind* allocateOutputBind(const char* name, Data&) - throw(RuntimeException); - void deallocate(dbms::OutputBind* outputBind) throw(); -}; - -#ifdef ANNA_RDBMS_TRACE -#define anna_dbms_mysql_check(a,_mysql) \ - { \ - Logger::write (Logger::Debug, (#a), __FILE__, __LINE__); \ - const int status = (a); \ - if (status != 0) { \ - anna::dbms::mysql::ResultCode resultCode ((_mysql)); \ - throw DatabaseException (resultCode, __FILE__, __LINE__); \ - } \ - } -#else -#define anna_dbms_mysql_check(a,_mysql) \ - { \ - const int status = (a); \ - if (status != 0) { \ - anna::dbms::mysql::ResultCode resultCode ((_mysql)); \ - throw DatabaseException (resultCode, __FILE__, __LINE__); \ - } \ - } -#endif -} -} -} - -#endif