|
|
EADELIA |
||
(B) (C) |
Paragraphe d'utilisation
onStart / onStop / onError / onMessage
Syntaxe
BRK_RECUP_CONF NomPropriété <variable résultat>
NomPropriété |
→ |
ValeurSpéciale | NomPropriétéAlpha |
ValeurSpéciale |
→ |
*BRK_NOM | *BRK_PROTOCOL | *BRK_VERSION | *BRK_IMPL |
Description
Cet ordre permet de récupérer des informations sur le contexte d'exécution du souscripteur Adélia. Chaque information est définie par une clé (le paramètre NomPropriété) et a une valeur associée (le paramètre variable résultat) typée.
La clé peut être définie soit par une valeur spéciale, soit dans le cas de NomPropriétéAlpha par une variable alphanumérique ou un littéral alphanumérique.
Clé valeur spéciale
Valeur Spéciale | Description de la propriété | Type de la propriété |
---|---|---|
*BRK_NOM | Nom du courtier de message auquel le souscripteur est connecté | ALPHA(n) |
*BRK_PROTOCOL | Nom du protocole utilisé pour l'échange de messages entre le courtier et le souscripteur | ALPHA(n) |
*BRK_VERSION | Version du protocole utilisé pour l'échange de messages entre le courtier et le souscripteur | ALPHA(n) |
*BRK_IMPL | Identifiant d'implémentation du souscripteur natif assurant la communication entre le courtier et le souscripteur Adélia | ALPHA(n) |
En fonction du courtier de message ciblé, ces valeurs spéciales ont les valeurs suivantes :
Courtier | *BRK_NOM | *BRK_PROTOCOL | *BRK_VERSION | *BRK_IMPL |
---|---|---|---|---|
Kafka | KAFKA | KAFKA | 2.8.0 | org.apache.kafka:kafka-clients:2.8.0 |
MQTT v3 | MQTT_BROKER | MQTT | 3.1.1 | org.eclipse.paho:org.eclipse.paho.client.mqttv3:1.2.5 |
MQTT v5 | MQTT_BROKER | MQTT | 5 | org.eclipse.paho:org.eclipse.paho.mqttv5.client:1.2.5 |
Nats Jetsteam | NATS JETSTREAM | NATS JETSTREAM | 2.6.2 | io.nats:jnats:2.12.0 |
Nats Streaming | NATS STREAMING | NATS STREAMING | 2.2 | io.nats:java-nats-streaming:2.2.3 |
RabbitMQ AMQP | RABBITMQ | AMQP | 0.9.1 | com.rabbitmq:amqp-client:5.7.3 |
Redis Pub/Sub | REDIS | REDIS | 2.6 | io.lettuce:lettuce-core:6.1.6.RELEASE |
Clé alphanumérique
Lorsque la clé est alphanumérique, elle peut soit désigner une propriété standard présente dans tous les souscripteurs Adélia, soit une propriété spécifique relative au courtier de messages associé.
Clé standard
La valeur est une chaine alphanumérique représentant une expression XPath et désignant une propriété relative à la définition d'un souscripteur.
Valeur de clé | Description de la propriété | Type de la propriété |
---|---|---|
subconf/id | Identifiant du souscripteur Adélia | ALPHA(n) |
subconf/startOnCreation | Indique si le souscripteur Adélia doit être démarré à sa création | BOOL |
subconf/config | ||
subconf/config | Configuration (exportable) du souscripteur Adélia | N / A |
subconf/config/adeliaPoolName | Nom du pool nommé Adélia utilisé pour paramétrer les connexions BD au sein du programme EADELIA associé | ALPHA(n) |
subconf/config/adeliaPgm | ||
subconf/config/adeliaPgm | Configuration du programme EADELIA associé au souscripteur | N / A |
subconf/config/adeliaPgm/objectFileName | Nom du fichier objet issu de la génération du programme EADELIA associé | ALPHA(6) |
subconf/config/adeliaPgm/javaPackage | Nom du package Java défini pour la génération du programme EADELIA associé | ALPHA(256) |
subconf/config/adeliaPgm/parameters | Liste des paramètres alphanumériques passés au programme EADELIA associé lors de son exécution | Tableau de ALPHA(n) |
subconf/config/adeliaPgm/parameters[<index commençant à 1] | Valeur du paramètre d'index <index> dans la liste des paramètres alphanumériques passés au programme EADELIA associé lors de son exécution | ALPHA(n) |
subconf/config/adeliaPgm/customObjectMapper | Identifiant du Java Bean défini dans le fichier beans-context.xml, permettant de configurer les propriétés de transformation d'object JSON en instance de classe Adélia | ALPHA(n) |
subconf/config/brokerConfig/factory | ||
subconf/config/brokerConfig/factory | Informations sur la fabrique en charge de la création du souscripteur Adélia | N / A |
subconf/config/brokerConfig/factory/id | Identifiant de la fabrique utilisée pour la création du souscripteur Adélia | ALPHA(n) |
subconf/config/brokerConfig/factory/parameters/<nom parametre> | Valeur associée au paramètre de nom <nom paramètre> passé à la fabrique associée lors de la création. Le nom du paramètre dépend de la fabrique. | Le type dépend de la fabrique associée. |
adelUtils:mapKeys(subconf/config/brokerConfig/factory/parameters) | Liste des noms des paramètres passés à la fabrique associée lors de la création | Tableau de ALPHA(n) |
adelUtils:mapValues(subconf/config/brokerConfig/factory/parameters) | Liste des valeurs des paramètres passés à la fabrique associée lors de la création | Tableau à une dimension. Le type dépend de la fabrique associée. Ce type doit être homogène pour tous les paramètres |
Clé spécifique
A l'instar d'une clé standard, sa valeur est une chaîne alphanumérique représentant une expression XPath. Une clé spécifique permet de désigner une propriété relative aux informations de connexion au courtier de messages ainsi qu'aux informations de souscription aux catégories de messages que le souscripteur veut traiter. Chaque clé spécifique dépend donc du courtier ciblé (et de la fabrique associée) :
. Kafka
. MQTT v3
. MQTT v5
. Nats Jetstream
. Nats Streaming
. RabbitMQ AMQP
. Redis Pub/Sub
Après l'exécution de cet ordre, le mot réservé *CODE_RETOUR peut prendre les valeurs suivantes :
0 (*NORMAL) |
L'opération s'est bien déroulée. |
-1 |
Erreur interne. |
-2 |
Erreur de syntaxe XPath lors de l'évaluation du paramètre NomPropriété. |
-3 |
Le paramètre mot réservé est inconnu. |
-4 |
La clé correspond à une information qui n'existe pas ou qui n'a pas de valeur. |
-11 | La valeur associée à la clé ne peut pas être convertie en type Adélia. |
-32 | La variable résultat doit être une variable de type ALPHA ou REF_CLASSE. |
-33 | La variable résultat ALPHA a une longueur trop petite. |
-53 | La variable résultat doit être une variable numérique. |
-54 | La variable résultat NUM_E / NUM_P a une taille trop petite. |
-55 | La variable résultat NUM_E / NUM_P a une partie entière trop petite. |
-56 | La variable résultat NUM_E / NUM_P a une partie décimale trop petite. |
-57 | La variable résultat a un type non compatible avec une valeur numérique. |
-58 | La variable résultat NUM_BIN_2 a une taille trop petite. |
-59 | La variable résultat NUM_BIN_4 a une taille trop petite. |
-60 | La variable résultat NUM_BIN_8 a une taille trop petite. |
-61 | La valeur associée à la clé ne peut pas être convertie en type TIMESTAMP. |
-74 | La variable résultat doit être une variable booléenne. |
-95 | La variable résultat doit être une variable DATE, TIME ou TIMESTAMP. |
-116 | La variable résultat doit être une variable IMAGE. |
-117 | La valeur associée à la clé ne peut pas être convertie en tableau d'octets. |
-137 | La variable résulta doit être une variable REF_CLASSE. |
-138 | La valeur associée à la clé ne peut pas être converti en classe Adélia. |
-300 | La variable résultat doit être une variable tableau. |
-301 | La variable résultat doit être une variable tableau à une dimension. |
-302 | La variable résultat tableau a une taille trop petite. |
-303 | Les items de la liste valeur de la clé ont un type qui ne peut pas être converti en valeur numérique. |
-304 | Les items de la liste valeur de la clé ont un type qui ne peut pas être converti en valeur alphanumérique. |
-305 | Les items de la liste valeur de la clé ont un type qui ne peut pas être converti en valeur booléenne. |
-306 | Les items de la liste valeur de la clé ont un type qui ne peut pas être converti en valeur image. |
-307 | Les items de la liste valeur de la clé ont un type qui ne peut pas être converti en valeur de classe Adélia. |
-308 | Le type de la variable résultat n'est pas supporté. |
-309 | Les items de la liste valeur de la clé ont un type qui ne peut pas être converti en valeur date/time/timestamp. |
-332 | La variable tableau résultat doit être de type ALPHA ou REF_CLASSE. |
-333 | La variable tableau résultat ALPHA a une longueur alphanumérique trop petite. |
-353 | La variable tableau résultat doit être de type numérique. |
-354 | La variable tableau résultat NUM_E / NUM_P définit des numériques de taille trop petite. |
-355 | La variable tableau résultat NUM_E / NUM_P définit des numériques de partie entière trop petite. |
-356 | La variable tableau résultat NUM_E / NUM_P définit des numériques de partie décimale trop petite. |
-357 | Les items de la liste valeur de la clé ont un type qui ne peut pas être converti en valeur numérique. |
-358 | La variable tableau résultat NUM_BIN_2 définit des entiers de taille trop petite. |
-359 | La variable tableau résultat NUM_BIN_4 définit des entiers de taille trop petite. |
-360 | La variable tableau résultat NUM_BIN_8 définit des entiers de taille trop petite. |
-361 | Les items de la liste valeur de la clé ont une valeur qui ne peut pas être converti en type TIMESTAMP. |
-374 | La variable tableau résultat doit être de type booléen. |
-395 | La variable tableau résultat doit être de type date, time ou timestamp. |
-416 | La variable tableau résultat doit être de type image. |
-417 | Les items de la liste valeur de la clé ont un type qui ne peut pas être converti en tableau d'octets. |
-437 | La variable tableau résultat doit être de type REF_CLASSE. |
-438 | Les items de la liste valeur de la clé ont un type qui ne peut pas être converti en classe Adélia. |
-600 | La valeur associée à la clé ne peut pas être convertie en type Adélia. |
-621 | La valeur alphanumérique associée à la clé ne peut pas être désérialisée en classe Adélia. |
-642 | La valeur numérique associée à la clé ne peut pas être convertie en type numérique Adélia. |
-705 | Erreur lors de la récupération du tableau d'octets depuis une instance ByteBuffer. |
-706 | L'instance de ByteBuffer n'a pas de tableau d'octets accessible. |
-707 | La valeur tableau d'octets associée à la clé ne peut pas être désérialisée en classe Adélia. |
-900 | La valeur associée à la clé ne peut pas être convertie en type Adélia. |
-1521 | La valeur alphanumérique associée à la clé ne peut pas être désérialisée en classe Adélia. |
-1542 | La valeur numérique associée à la clé ne peut pas être convertie en type numérique Adélia. |
-1605 | Erreur lors de la récupération du tableau d'octets depuis une instance ByteBuffer. |
-1606 | L'instance de ByteBuffer n'a pas de tableau d'octets accessible. |
-1607 | La valeur tableau d'octets associée à la clé ne peut pas être désérialisée en classe Adélia. |
Par exemple
* Récupération du nom du courtier
ALPHA(128) BROKER_NAME
BRK_RECUP_CONF *BRK_NOM BROKER_NAME
* Récupération du nom du souscripteur
ALPHA(128) SUBSCRIBER_ID
BRK_RECUP_CONF 'subconf/id' SUBSCRIBER_ID
* Récupération de la liste des topics souscrits
ALPHA(64) TOPICS_ARRAY (3)
BRK_RECUP_CONF 'subconf/config/brokerConfig/subscribeTopic/topics' TOPICS_ARRAY