+++ /dev/null
-// 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_dbos_Creator_hpp
-#define anna_dbos_Creator_hpp
-
-#include <anna/dbos/Accesor.hpp>
-
-namespace anna {
-
-namespace dbos {
-
-/**
- Interfaz que deben cumplir los objetos encargados de crear un nuevo objeto que sera ubicado
- en el area de almacenamiento asociado a un medio fisico.
-*/
-class Creator : public Accesor {
-public:
- /**
- Metodo de debemos re-escribir para devolver el nombre completo del selector de recursos.
- Para evitar ambigüedades este nombre deberia incluir la lista completa de \em namespaces
- a la que pertenece la clase.
- \return Una cadena con el nombre de este selector.
- */
- virtual const char* getClassName() const throw() { return "anna::dbos::Creator"; }
-
-protected:
- /**
- Constructor.
- \param database Base de datos asociada a este cargador y que deberia servir para
- obtener los datos de un objeto. Debe tener la misma disponibilidad que este cargador.
- \param id Identificador de este accesor.
- */
- Creator(dbms::Database& database, const Id id = 0) : Accesor(database, id) {;}
-
- /**
- Constructor.
- \param id Identificador de este accesor.
- */
- Creator(const Id id = 0) : Accesor(id) {;}
-
- /**
- Devuelve el indice usado para ubicar en memoria el objeto que vamos a cargar.
- @return El indice usado para ubicar en memoria el objeto que vamos a cargar.
- */
- virtual Index getIndex() const throw(RuntimeException) = 0;
-
-private:
- dbms::Statement* initialize(dbms::Database&) throw(RuntimeException) { return NULL;}
-
- friend class StorageArea;
-};
-
-}
-}
-
-#endif
-
-
-