APPComp

class labpyproject.core.app.app_components.APPComp(channellist=None)[source]

Bases : labpyproject.core.app.app_components.ThreadableComp, labpyproject.core.queue.queue_tools.QueueSwitcher

Composant d’application servant de routeur pour la gestion des piles de tâches.

Constructeur

Paramètres

channellist – liste de tuples (nom de canal, queue_code_in, queue_code_out)

Rq: codes dans le sens COMP -> APP.

Attributes Summary

APPTOBUSINESS_KEYCODE

marque un queue_code de app vers métier

APPTOGUI_KEYCODE

marque un queue_code de app à gui

APPTONET_KEYCODE

marque un queue_code de app vers net

BUSINESSTOAPP_KEYCODE

marque un queue_code de métier vers app

BUSINESS_CHANNEL

canal d’échange métier

GUITOAPP_KEYCODE

marque un queue_code de gui à app

GUI_CHANNEL

canal d’échange d’interface

NETTOAPP_KEYCODE

marque un queue_code de net vers app

NET_CHANNEL

canal d’échange réseau

Methods Summary

ask_APP_info(exobj)

Un satellite demande une infos à l’application.

get_SAT_info(channelname, dictargs)

L’application envoie au satellite associé à channelname une demande d’info décrite dans dictargs.

handleAPPQueues()

Route les piles de cmd en attente provenant des canaux d’échanges.

handleGUIExchange(exobj)

Appelée dans la méthode APPComp.handleAPPQueues avant routage de l’objet d’échange.

handleNETExchange(exobj)

Appelée dans la méthode APPComp.handleAPPQueues avant routage de l’objet d’échange.

handle_SAT_info(exobj)

Un satellite transmet une infos à l’application.

on_GUI_Ready(exobj)

Méthode appelée lorsque l’application détecte un GUIExchangeObject de type GUI_READY signalant que l’interface est prête à réagir.

on_threads_started()

Pseudo événement appelé à la fin du process de démarrage et join des threads.

register_child_component(child)

Enregistre un composant interne.

run_component_thread()

Méthode run du thread associé.

sendBusinessTask(task)

En cas de filtrage du routage, permet d’envoyer une tâche spécifique au composant métier.

set_APP_info(channelname, dictargs)

L’application transmet au satellite associé à channelname une information décrite dans dictargs.

shutdown()

Clôture de l’application après propagation d’un ordre de clôture à l’ensemble des composants.

start_and_join_threads([join, count])

Démarre et joint au besoin tous les threads de la hiérarchie de composants.

Attributes Documentation

APPTOBUSINESS_KEYCODE = 'APPTOBUSINESS_KEYCODE'

marque un queue_code de app vers métier

APPTOGUI_KEYCODE = 'APPTOGUI_KEYCODE'

marque un queue_code de app à gui

APPTONET_KEYCODE = 'APPTONET_KEYCODE'

marque un queue_code de app vers net

BUSINESSTOAPP_KEYCODE = 'BUSINESSTOAPP_KEYCODE'

marque un queue_code de métier vers app

BUSINESS_CHANNEL = 'BUSINESS_CHANNEL'

canal d’échange métier

GUITOAPP_KEYCODE = 'GUITOAPP_KEYCODE'

marque un queue_code de gui à app

GUI_CHANNEL = 'GUI_CHANNEL'

canal d’échange d’interface

NETTOAPP_KEYCODE = 'NETTOAPP_KEYCODE'

marque un queue_code de net vers app

NET_CHANNEL = 'NET_CHANNEL'

canal d’échange réseau

Methods Documentation

ask_APP_info(exobj)[source]

Un satellite demande une infos à l’application.

Paramètres

exobj (SatelliteExchangeObject) – exobj.typeexchange=SatelliteExchangeObject.GET_APP_INFO

get_SAT_info(channelname, dictargs)[source]

L’application envoie au satellite associé à channelname une demande d’info décrite dans dictargs.

Paramètres
  • channelname (str) – nom de canal dans [APPComp.NET_CHANNEL, APPComp.GUI_CHANNEL, APPComp.BUSINESS_CHANNEL]

  • dictargs (dict) –

Renvoie

objet d’échange générique avec exobj.typeexchange=SatelliteExchangeObject.GET_SAT_INFO

Type renvoyé

SatelliteExchangeObject

handleAPPQueues()[source]

Route les piles de cmd en attente provenant des canaux d’échanges.

A appeler dans la méthode run du thread associé à l’application.

handleGUIExchange(exobj)[source]

Appelée dans la méthode APPComp.handleAPPQueues avant routage de l’objet d’échange.

Paramètres

exobj (GUIExchangeObject) –

Renvoie

indiquant si la tâche doit être routée

Type renvoyé

boolean

handleNETExchange(exobj)[source]

Appelée dans la méthode APPComp.handleAPPQueues avant routage de l’objet d’échange.

Paramètres

exobj (NETExchangeObject) –

Renvoie

indiquant si la tâche doit être routée

Type renvoyé

boolean

handle_SAT_info(exobj)[source]

Un satellite transmet une infos à l’application.

Paramètres

exobj (SatelliteExchangeObject) – exobj.typeexchange=SatelliteExchangeObject.SET_SAT_INFO

on_GUI_Ready(exobj)[source]

Méthode appelée lorsque l’application détecte un GUIExchangeObject de type GUI_READY signalant que l’interface est prête à réagir.

Paramètres

exobj (GUIExchangeObject) –

on_threads_started()[source]

Pseudo événement appelé à la fin du process de démarrage et join des threads.

register_child_component(child)[source]

Enregistre un composant interne.

Paramètres

child (ThreadableComp) –

run_component_thread()[source]

Méthode run du thread associé.

sendBusinessTask(task)[source]

En cas de filtrage du routage, permet d’envoyer une tâche spécifique au composant métier.

Paramètres

task (object) –

set_APP_info(channelname, dictargs)[source]

L’application transmet au satellite associé à channelname une information décrite dans dictargs.

Paramètres
  • channelname (str) – nom de canal dans [APPComp.NET_CHANNEL, APPComp.GUI_CHANNEL, APPComp.BUSINESS_CHANNEL]

  • dictargs (dict) –

Renvoie

objet d’échange générique avec exobj.typeexchange=SatelliteExchangeObject.SET_APP_INFO

Type renvoyé

SatelliteExchangeObject

shutdown()[source]

Clôture de l’application après propagation d’un ordre de clôture à l’ensemble des composants.

start_and_join_threads(join=True, count=0)[source]

Démarre et joint au besoin tous les threads de la hiérarchie de composants.

Paramètres
  • join (boolean) – doit on joindre les threads

  • count (int) – nombre de tentatives successives