|
bool | getAutoBind () const |
|
void | setAutoBind (const bool autoBind) |
|
Session * | createSession (const char *url, const char *user, const char *password, const int category=0) noexcept(false) |
|
Session * | createSession (const char *url, const int id, const char *user, const char *password, const int category=0) noexcept(false) |
|
Session * | createSession (const char *url, const int category=0) noexcept(false) |
|
Session * | findSession (const char *url, const char *user, Exception::Mode::_v emode=Exception::Mode::Throw) noexcept(false) |
|
Session * | findSession (const char *url, const int id, Exception::Mode::_v emode=Exception::Mode::Throw) noexcept(false) |
|
Session * | findSession (const char *url, Exception::Mode::_v emode=Exception::Mode::Throw) noexcept(false) |
|
void | closeSession (Session *session) noexcept(false) |
|
virtual xml::Node * | asXML (xml::Node *parent) const |
|
virtual | ~Component () |
|
void | attach () noexcept(false) |
|
virtual std::string | asString () const |
|
const char * | getClassName () const |
|
| 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 |
|
Gestor general de conexiones realizadas a diversos servidores LDAP.
Optimiza la creacion, busqueda y liberacion de las sesiónes establecidas contra un numero indeterminado de servidores LDAP.
El siguiente codigo muestra un ejemplo de implementacion:
class MyEngine : public ldap::Engine {
public:
MyEngine () {;}
private:
MySession* aux = static_cast <MySession*> (session);
}
};
Session* anna::ldap::Engine::createSession |
( |
const char * |
url, |
|
|
const char * |
user, |
|
|
const char * |
password, |
|
|
const int |
category = 0 |
|
) |
| |
|
noexcept |
Crea o reusa una sesión LDAP con los parámetros recibidos.
Las sesiónes LDAP estaran definidas univocamente por la pareja (url, user) si al invocar a este metodo ya existiera una sesión identificada por los mismos parámetros recibidos, se devolvera su instancia.
Si no existe una sesión identificada por la pareja (url, user) se creara mediate la llamada al metodo virtual puro (allocateSession), se realizara la peticion de conexion y se devolvera esta nueva instancia.
Dependiendo del indicador de conexión automática se solicitará la conexión al servidor o será el programador quien tenga que invocarlo mediate la llamada al método ldap::Session::bind.
- Parameters
-
url | Direccion donde atiende peticiones el servidor LDAP. |
user | Usuario requerido para establecer la conexion contra el servidor LDAP. |
password | Password requerido para establecer la conexion contra el servidor LDAP. |
category | Identifica el tipo de sesión a crear. |
- Returns
- La session identificada por la url y user indicados como parametro.
- Warning
- La conexion no estara totalmente operativa hasta que no se reciba la notificacion correspondiente en el metodo Session::eventResponse confirmando que el ClassCode::Bind se ha realizado correctamente.
Session* anna::ldap::Engine::createSession |
( |
const char * |
url, |
|
|
const int |
id, |
|
|
const char * |
user, |
|
|
const char * |
password, |
|
|
const int |
category = 0 |
|
) |
| |
|
noexcept |
Crea o reusa una sesión LDAP con los parámetros recibidos.
Las sesiónes LDAP estaran definidas univocamente por la pareja (url, id) si al invocar a este metodo ya existiera una sesión identificada por los mismos parámetros recibidos, se devolvera su instancia.
Si no existe una sesión identificada por la pareja (url, id) se creara mediate la llamada al metodo virtual puro (allocateSession), se realizara la peticion de conexion y se devolvera esta nueva instancia.
Dependiendo del indicador de conexión automática se solicitará la conexión al servidor o será el programador quien tenga que invocarlo mediate la llamada al método ldap::Session::bind.
- Parameters
-
url | Direccion donde atiende peticiones el servidor LDAP. |
id | Identificador usado para identificar la sesión. |
user | Usuario requerido para establecer la conexion contra el servidor LDAP. |
password | Password requerido para establecer la conexion contra el servidor LDAP. |
category | Identifica el tipo de sesión a crear. |
- Returns
- La session identificada por la url y id indicados como parametro.
- Warning
- La conexion no estara totalmente operativa hasta que no se reciba la notificacion correspondiente en el metodo Session::eventResponse confirmando que el ClassCode::Bind se ha realizado correctamente.
Session* anna::ldap::Engine::createSession |
( |
const char * |
url, |
|
|
const int |
category = 0 |
|
) |
| |
|
inlinenoexcept |
Crea o reusa una sesión LDAP con los parámetros recibidos a un servidor que no requiera identificar el usuario que solicita la conexion.
Las sesiónes LDAP estaran definidas univocamente por la pareja (url, user="") si al invocar a este metodo ya existiera una sesión identificada por los mismos parámetros recibidos, se devolvera su instancia.
Si no existe una sesión identificada por la pareja (url, user="") se creara mediate la llamada al metodo virtual puro (allocateSession), se realizara la peticion de conexion y se devolvera esta nueva instancia.
- Parameters
-
url | Direccion donde atiende peticiones el servidor LDAP. |
category | Identifica el tipo de sesión a crear. |
- Returns
- La session identificada por la url indicada como parametro.
- Warning
- La conexion no estara totalmente operativa hasta que no se reciba la notificacion correspondiente en el metodo Session::eventResponse confirmando que el ClassCode::Bind se ha realizado correctamente.
Session * createSession(const char *url, const char *user, const char *password, const int category=0) noexcept(false)