ANNA Suite  2020b
Multipurpose development suite for Telco applications
Public Member Functions | Protected Member Functions | Friends | List of all members
anna::dbos::Loader Class Referenceabstract

#include <Loader.hpp>

Inheritance diagram for anna::dbos::Loader:
Inheritance graph
[legend]
Collaboration diagram for anna::dbos::Loader:
Collaboration graph
[legend]

Public Member Functions

virtual const char * getClassName () const
 
- Public Member Functions inherited from anna::dbos::Accesor
virtual ~Accesor ()
 
Id getId () const
 
dbms::StatementgetStatement () noexcept(false)
 
bool hasDataBase () const
 
dbms::DatabasegetDatabase ()
 
dbms::ConnectiongetConnection () noexcept(false)
 
virtual std::string asString () const =0
 
- Public Member Functions inherited from anna::Mutex
 Mutex (const Mode::_v mode=Mode::Recursive)
 
virtual ~Mutex ()
 
virtual void lock () noexcept(false)
 
virtual void unlock ()
 
bool trylock () noexcept(false)
 
 operator const pthread_mutex_t * () const
 

Protected Member Functions

 Loader (dbms::Database &database, const Id id=0)
 
 Loader (const Id id=0)
 
virtual Index getIndex () const noexcept(false)=0
 
virtual void upload (CrossedLoader &crossedLoader) noexcept(false)
 
- Protected Member Functions inherited from anna::dbos::Accesor
 Accesor (dbms::Database &database, const Id id)
 
 Accesor (dbms::Database &database, const Id id, const Exception::Mode::_v emode)
 
 Accesor (const Id id)
 
virtual dbms::Statementinitialize (dbms::Database &database) noexcept(false)=0
 
- Protected Member Functions inherited from anna::Safe
 Safe ()
 

Friends

class StorageArea
 

Additional Inherited Members

- Public Types inherited from anna::dbos::Accesor
typedef short Id
 

Detailed Description

Interfaz que deben cumplir los objetos encargados de cargar el objeto desde el medio fisico, que normalmente sera alguna base de datos, y pasarlo un ambito de objetos en C++.

Constructor & Destructor Documentation

◆ Loader() [1/2]

anna::dbos::Loader::Loader ( dbms::Database database,
const Id  id = 0 
)
inlineprotected

Constructor.

Parameters
databaseBase 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.
idIdentificador de este accesor.
45 : Accesor(database, id) {;}
Accesor(dbms::Database &database, const Id id)
Definition: Accesor.hpp:108

◆ Loader() [2/2]

anna::dbos::Loader::Loader ( const Id  id = 0)
inlineprotected

Constructor.

Parameters
idIdentificador de este accesor.
51 : Accesor(id) {;}
Accesor(dbms::Database &database, const Id id)
Definition: Accesor.hpp:108

Member Function Documentation

◆ getClassName()

virtual const char* anna::dbos::Loader::getClassName ( ) const
inlinevirtual

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 namespaces a la que pertenece la clase.

Returns
Una cadena con el nombre de este selector.

Implements anna::dbos::Accesor.

36 { return "anna::dbos::Loader"; }

◆ getIndex()

virtual Index anna::dbos::Loader::getIndex ( ) const
protectedpure virtualnoexcept

Devuelve el indice usado para ubicar en memoria el objeto que vamos a cargar.

Returns
El indice usado para ubicar en memoria el objeto que vamos a cargar.

◆ upload()

virtual void anna::dbos::Loader::upload ( CrossedLoader crossedLoader)
inlineprotectedvirtualnoexcept

Este método debe ser reescrito para poder obtener los datos de la clave principal usada para localizar los objetos en un área del almacenamiento.

Parameters
crossedLoaderInstancia del cargador alternativo que habrá calculado la clave principal en a lo clave alternativa contenida en él.
66 {;}

Friends And Related Function Documentation

◆ StorageArea

friend class StorageArea
friend

The documentation for this class was generated from the following file: