1 // ANNA - Anna is Not Nothingness Anymore //
3 // (c) Copyright 2005-2015 Eduardo Ramos Testillano & Francisco Ruiz Rayo //
5 // See project site at http://redmine.teslayout.com/projects/anna-suite //
6 // See accompanying file LICENSE or copy at http://www.teslayout.com/projects/public/anna.LICENSE //
9 #ifndef anna_dbos_Eraser_hpp
10 #define anna_dbos_Eraser_hpp
12 #include <anna/dbos/Accesor.hpp>
21 Interfaz que deben cumplir los objetos encargados de borrar el objeto del medio fisico,
22 que normalmente sera alguna base de datos.
24 class Eraser : public Accesor {
27 Devuelve la instancia establecida por #setObject.
28 \return La instancia establecida por #setObject. Puede ser NULL.
30 Object* getObject() throw() { return a_object; }
33 Establece la instancia del objeto sobre el que vamos a actuar.
34 \param object Instancia del objeto sobre el que vamos a actuar.
36 void setObject(Object* object) throw() { a_object = object; }
39 Metodo de debemos re-escribir para devolver el nombre completo del selector de recursos.
40 Para evitar ambigüedades este nombre deberia incluir la lista completa de \em namespaces
41 a la que pertenece la clase.
42 \return Una cadena con el nombre de este selector.
44 virtual const char* getClassName() const throw() { return "anna::dbos::Eraser"; }
49 \param database Base de datos asociada a este cargador y que deberia servir para
50 obtener los datos de un objeto. Debe tener la misma disponibilidad que este cargador.
51 \param id Identificador de este accesor.
53 Eraser(dbms::Database& database, const Id id = 0) :
54 Accesor(database, id),
61 Index getIndex() const throw() { return 0; } // No se usa