submarine.core
Class InternalListener

java.lang.Object
  |
  +--submarine.core.InternalListener
All Implemented Interfaces:
ListeningFunction, SubmiterAware, XMLConfigurable

public class InternalListener
extends java.lang.Object
implements ListeningFunction

Une ListeningFunction un peut particulière, interne au Systeme. Son rôle est de donner un accès en consultation par l'intermédiaire d'une console telnet aux différents états du systèmes (Threads, Queues) ainsi que de l'arrêter proprement lorsque le Systeme EAI est lancé comme programme indépendant. Un seul client peut se connecter simultanément au système. Cette PoolingFunction se paramètre dans les informations globales de la configuration.


Inner Class Summary
(package private)  class InternalListener.EchoReader
          Une surchage de java.io.Reader qui retourne tout ce qu'elle lit vers un Writer.
 
Field Summary
private  EAISystem eai
          Le système EAI.
private  int port
          Le port d'écoute.
private  boolean traceJVM
           
 
Constructor Summary
InternalListener()
           
 
Method Summary
 void display_help(java.io.PrintWriter pout)
          Affiche sur la console du client l'aide pour l'utilisation de ce listener.
 int getListenPort()
           
 void init(org.w3c.dom.Element xml)
          Configure le Listener à partir d'un élément XML.
 void listen()
          Se met en écoute des connections.
 void print_env(java.io.PrintWriter pout)
           
 void print_jndi(java.io.PrintWriter pout)
           
 void print_threads(java.io.PrintWriter pout)
          Affiche tous les Threads et ThreadGroups depuis la racine des Threads.
 void print_ThreadsAndGroup(java.lang.ThreadGroup tg, java.io.PrintWriter pout)
          Affiche la liste des Threads et Groupes de Threads depuis le ThreadGroup tg.
 void setSubmiter(Submiter s)
          Implémentation de SubmiterAware.
 boolean traite_cmd(java.lang.String cmd, java.io.PrintWriter pout)
          Traite la commande cmd et affiche le résultat sur pout.
 
Methods inherited from class java.lang.Object
, clone, equals, finalize, getClass, hashCode, notify, notifyAll, registerNatives, toString, wait, wait, wait
 

Field Detail

traceJVM

private boolean traceJVM

port

private int port
Le port d'écoute. Par défaut si non spécifié, c'est 9090.

eai

private EAISystem eai
Le système EAI.
Constructor Detail

InternalListener

public InternalListener()
Method Detail

getListenPort

public int getListenPort()

init

public void init(org.w3c.dom.Element xml)
Configure le Listener à partir d'un élément XML. Impléménetation de XMLConfigurable.
Specified by:
init in interface XMLConfigurable
Parameters:
xml -  

display_help

public void display_help(java.io.PrintWriter pout)
Affiche sur la console du client l'aide pour l'utilisation de ce listener.
Parameters:
pout -  

print_ThreadsAndGroup

public void print_ThreadsAndGroup(java.lang.ThreadGroup tg,
                                  java.io.PrintWriter pout)
Affiche la liste des Threads et Groupes de Threads depuis le ThreadGroup tg. Fonction récursive.
Parameters:
tg - Le Threadgroup en cours.
pout - La sortie vers laquelle l'affichage doit se faire.

print_threads

public void print_threads(java.io.PrintWriter pout)
Affiche tous les Threads et ThreadGroups depuis la racine des Threads. Utilise print_ThreadsAndGroup(java.lang.ThreadGroup, java.io.PrintWriter).
Parameters:
pout - La sortie vers laquelle l'affichage doit se faire.

print_env

public void print_env(java.io.PrintWriter pout)

print_jndi

public void print_jndi(java.io.PrintWriter pout)

traite_cmd

public boolean traite_cmd(java.lang.String cmd,
                          java.io.PrintWriter pout)
Traite la commande cmd et affiche le résultat sur pout.
Parameters:
cmd - La commande
pout - Le flux de sortie de l'affichage.
Returns:
boolean

listen

public void listen()
Se met en écoute des connections. Une seule connection peut être établie simultanément. Les autres client potentiels sont mis en attente par le système.
Specified by:
listen in interface ListeningFunction

setSubmiter

public void setSubmiter(Submiter s)
Implémentation de SubmiterAware.
Specified by:
setSubmiter in interface SubmiterAware
Parameters:
s - le Submiter attendu.

Submarine project. free distribution of this software must include the opensource licence.
Guénolé de Cadoudal.