ANNA Suite  2020b
Multipurpose development suite for Telco applications
Public Types | Public Member Functions | Static Public Member Functions | List of all members
anna::ldap::Search Class Reference

#include <Search.hpp>

Inheritance diagram for anna::ldap::Search:
Inheritance graph
[legend]
Collaboration diagram for anna::ldap::Search:
Collaboration graph
[legend]

Public Types

typedef attribute_container::const_iterator const_attribute_iterator
 

Public Member Functions

 Search (const Request::OnExpiry::_v onExpiry=Request::OnExpiry::Abandon)
 
const std::string & getBase () const
 
Scope::_v getScope () const
 
const std::string & getFilter () const
 
bool getOnlyType () const
 
int getSizeLimit () const
 
void setBase (const std::string &base)
 
void setScope (const Scope::_v scope)
 
void setScope (const char *scope) noexcept(false)
 
void setFilter (const std::string &filter)
 
void setOnlyType (const bool onlyType)
 
void setSizeLimit (const int sizeLimit)
 
void clearFilter ()
 
void clearSizeLimit ()
 
void clearAttributes ()
 
void addAttribute (const std::string &attribute)
 
void clear ()
 
const_attribute_iterator attribute_begin () const
 
const_attribute_iterator attribute_end () const
 
int attribute_size () const
 
virtual std::string asString () const
 
virtual xml::NodeasXML (xml::Node *parent) const
 
- Public Member Functions inherited from anna::ldap::Request
ClassCode::_v getClassCode () const
 
OnExpiry::_v getOnExpiry () const
 
void setOnExpiry (const OnExpiry::_v onExpiry)
 

Static Public Member Functions

static const std::string & attribute (const_attribute_iterator ii)
 
- Static Public Member Functions inherited from anna::ldap::Request
static const char * asCString (const std::string &value)
 
static const char * asText (const std::string &value)
 

Additional Inherited Members

- Protected Member Functions inherited from anna::ldap::Request
 Request (const ClassCode::_v classCode, const OnExpiry::_v onExpiry)
 

Detailed Description

Modela las peticiones de busqueda realizadas contra un servidor LDAP.

Member Typedef Documentation

◆ const_attribute_iterator

typedef attribute_container::const_iterator anna::ldap::Search::const_attribute_iterator

Constructor & Destructor Documentation

◆ Search()

anna::ldap::Search::Search ( const Request::OnExpiry::_v  onExpiry = Request::OnExpiry::Abandon)
inline

Constructor.

Parameters
onExpiryIndica la acción a realizar si el temporizador de esta transación expira.
41 : Request(ClassCode::Search, onExpiry) { clear(); }
Request(const ClassCode::_v classCode, const OnExpiry::_v onExpiry)
Definition: Request.hpp:100
Definition: ClassCode.hpp:25
Here is the call graph for this function:

Member Function Documentation

◆ addAttribute()

void anna::ldap::Search::addAttribute ( const std::string &  attribute)
inline

Incorpora un elemento a la lista de atributos que deseamos obtener de cada una de las entradas que cumplen el filtro establecido. Si esta lista esta vacia se devolvera la informacion de todos los atributos implicados.

134  {
135  std::string* newString = st_attributes.create();
136  *newString = attribute;
137  a_attributes.push_back(newString);
138  }
T * create() noexcept(false)
Definition: Recycler.hpp:88
static const std::string & attribute(const_attribute_iterator ii)
Definition: Search.hpp:168
Here is the call graph for this function:

◆ asString()

virtual std::string anna::ldap::Search::asString ( ) const
virtual

Devuelve una cadena con la informacion referente a este objeto.

Returns
Una cadena con la informacion referente a este objeto.

Reimplemented from anna::ldap::Request.

◆ asXML()

virtual xml::Node* anna::ldap::Search::asXML ( xml::Node parent) const
virtual

Devuelve un nodo XML con la informacion referente a este objeto.

Parameters
parentNodo XML a partir del cual introducir la informacion.
Returns
Un nodo XML con la informacion referente a este objeto.

Reimplemented from anna::ldap::Request.

◆ attribute()

static const std::string& anna::ldap::Search::attribute ( const_attribute_iterator  ii)
inlinestatic

Devuelve el atributo apuntado por el iterador recibido.

Parameters
iiIterador con el que estamos recorriendo los atributos.
Returns
El atributo apuntado por el iterador recibido.
168 { return **ii; }
Here is the call graph for this function:

◆ attribute_begin()

const_attribute_iterator anna::ldap::Search::attribute_begin ( ) const
inline

Devuelve un iterador que apunta el primer atributo contenido en la consulta.

Returns
un iterador que apunta el primer atributo contenido en la consulta.
149 { return a_attributes.begin(); }

◆ attribute_end()

const_attribute_iterator anna::ldap::Search::attribute_end ( ) const
inline

Devuelve un iterador que apunta el ultimo atributo contenido en la consulta.

Returns
un iterador que apunta el ultimo atributo contenido en la consulta.
155 { return a_attributes.end(); }

◆ attribute_size()

int anna::ldap::Search::attribute_size ( ) const
inline

Devuelve el numero de atributos contenidos en la consulta.

Returns
El numero de atributos contenidos en la consulta.
161 { return a_attributes.size(); }

◆ clear()

void anna::ldap::Search::clear ( )
virtual

Inicializa el contenido de esta clase.

Implements anna::ldap::Request.

◆ clearAttributes()

void anna::ldap::Search::clearAttributes ( )

Elimina los atributos asociados a esta consulta.

◆ clearFilter()

void anna::ldap::Search::clearFilter ( )
inline

Elimina el filtro asociado a esta consulta.

117 { a_filter.clear(); }

◆ clearSizeLimit()

void anna::ldap::Search::clearSizeLimit ( )
inline

Elimina el limite en cuanto al numero de elementos indicados en la consulta.

122 { a_sizeLimit = 0; }
Here is the call graph for this function:

◆ getBase()

const std::string& anna::ldap::Search::getBase ( ) const
inline

Devuelve el DN de la entrada en la que se comienza la busqueda.

Returns
El DN de la entrada en la que se comienza la busqueda.
47 { return a_base; }

◆ getFilter()

const std::string& anna::ldap::Search::getFilter ( ) const
inline

Devuelve el filtro aplicado a la busqueda.

Returns
El filtro aplicado a la busqueda.
59 { return a_filter; }

◆ getOnlyType()

bool anna::ldap::Search::getOnlyType ( ) const
inline

Devuelve el indicador de tratamiento de busquedas.

Returns
El indicador de tratamiento de busquedas.
65 { return a_onlyType; }

◆ getScope()

Scope::_v anna::ldap::Search::getScope ( ) const
inline

Devuelve el ambito de la busqueda.

Returns
El ambito de la busqueda.
53 { return a_scope; }

◆ getSizeLimit()

int anna::ldap::Search::getSizeLimit ( ) const
inline

Devuelve el numero maximo de elementos devueltos como resultado de la consulta.

Returns
El numero maximo de elementos devueltos como resultado de la consulta.
See also
clearSizeLimit.
72 { return a_sizeLimit; }

◆ setBase()

void anna::ldap::Search::setBase ( const std::string &  base)
inline

Establece el DN de la entrada en la que comenzar la busqueda.

Parameters
baseDN de la entrada en la que comenzar la busqueda.
78 { a_base = base; }

◆ setFilter()

void anna::ldap::Search::setFilter ( const std::string &  filter)
inline

Establece el filtro aplicado a la busqueda.

Parameters
filterFiltro aplicado a la busqueda.
See also
clearFilter
98 { a_filter = filter; }

◆ setOnlyType()

void anna::ldap::Search::setOnlyType ( const bool  onlyType)
inline

Determina como se van a tratar los atributos.

Parameters
onlyTypeUn valor true indica que solo se requieren los tipos de atributos, un valor false indica que se requieren tipos y valores asociados a los atributos.
105 { a_onlyType = onlyType; }

◆ setScope() [1/2]

void anna::ldap::Search::setScope ( const Scope::_v  scope)
inline

Establece el ambito de la busqueda.

Parameters
scopeAmbito de la busqueda.
84 { a_scope = scope; }

◆ setScope() [2/2]

void anna::ldap::Search::setScope ( const char *  scope)
inlinenoexcept

Establece el ambito de la busqueda.

Parameters
scopeTexto que identifica el ambito de la busqueda. Si no se trata de un texto reconocido se devolvera una excepcion.
91 { a_scope = Scope::asEnumEx(scope); }

◆ setSizeLimit()

void anna::ldap::Search::setSizeLimit ( const int  sizeLimit)
inline

Establece el numero maximo de elementos devueltos como resultado de la consulta.

Parameters
sizeLimitNumero de entradas retornadas por la busqueda.
See also
clearSizeLimit.
112 { a_sizeLimit = sizeLimit; }

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