Callbacks
- Version 4.x
- Version 3.x
- Version 2.x
Jaxon permet définir des callbacks qui vont être appelées à différents étapes de l'exécution de chaque requête.
Avant l'exécution de la requête
$jaxon->register(Jaxon::PROCESSING_EVENT, Jaxon::PROCESSING_EVENT_BEFORE, 'functionName');
$jaxon->register(Jaxon::PROCESSING_EVENT, Jaxon::PROCESSING_EVENT_BEFORE, array($object, 'methodName'));
La fonction à appeler prend en paramètre un booléen $bEndRequest
passé par référence, et retourne une réponse Jaxon. La paramètre à la valeur false
avant l'appel à la fonction.
Si dans la fonction il est modifié et prend la valeur true
, le traitement est arrêté, et la réponse de la requête est celle renvoyée par la fonction.
function preProcess(&$bEndRequest)
{
}
Après l'exécution de la requête
$jaxon->register(Jaxon::PROCESSING_EVENT, Jaxon::PROCESSING_EVENT_AFTER, 'functionName');
$jaxon->register(Jaxon::PROCESSING_EVENT, Jaxon::PROCESSING_EVENT_AFTER, array($object, 'methodName'));
La fonction à appeler prend en paramètre un booléen, qui est le même qui a été passé à la fonction de pre-processing
. Il indique donc si la requête Jaxon a été traitée.
Si cette fonction renvoie une réponse Jaxon, elle est ajoutée à la réponse courante.
function postProcess($bEndRequest)
{
}
En cas de requête invalide
$jaxon->register(Jaxon::PROCESSING_EVENT, Jaxon::PROCESSING_EVENT_INVALID, 'functionName');
$jaxon->register(Jaxon::PROCESSING_EVENT, Jaxon::PROCESSING_EVENT_INVALID, array($object, 'methodName'));
La fonction à appeler prend en paramètre le message d'erreur renvoyé lors du traitement de la requête. La réponse Jaxon à la requête est réinitialisée, et si cette fonction en renvoie une, ce sera aussi celle de la requête.
function invalidRequest($sMessage)
{
}
En cas d'erreur lors de l'exécution de la requête
Cette callback a été ajoutée à la version 2.
$jaxon->register(Jaxon::PROCESSING_EVENT, Jaxon::PROCESSING_EVENT_ERROR, 'functionName');
$jaxon->register(Jaxon::PROCESSING_EVENT, Jaxon::PROCESSING_EVENT_ERROR, array($object, 'methodName'));
La fonction à appeler prend en paramètre l'exception levée lors du traitement de la requête. La réponse Jaxon à la requête est réinitialisée, et si cette fonction en renvoie une, ce sera aussi celle de la requête.
function invalidRequest($xException)
{
}