submarine.connectors
Class XMLListener

java.lang.Object
  |
  +--submarine.connectors.XMLListener
All Implemented Interfaces:
Finalizable, ListeningFunction, SubmiterAware, XMLConfigurable

public class XMLListener
extends java.lang.Object
implements ListeningFunction, Finalizable


Inner Class Summary
static class XMLListener.Server
           
 
Field Summary
private  java.lang.String[] args
           
private  java.lang.String encoding
           
private  XMLListener.Server server
           
private  Submiter submiter
           
 
Constructor Summary
XMLListener()
           
 
Method Summary
 void finalize()
          Appelée sur une instance de PoolingFunction ou de WritingFunction avant la libération de celle-ci.
 void init(org.w3c.dom.Element xml)
           
 void listen()
          Se met en attente d'évènements externes pour toute la durée de vie de la ListeningFunction.
 void setSubmiter(Submiter s)
           
 
Methods inherited from class java.lang.Object
, clone, equals, getClass, hashCode, notify, notifyAll, registerNatives, toString, wait, wait, wait
 

Field Detail

server

private XMLListener.Server server

args

private java.lang.String[] args

submiter

private Submiter submiter

encoding

private java.lang.String encoding
Constructor Detail

XMLListener

public XMLListener()
Method Detail

init

public void init(org.w3c.dom.Element xml)
Specified by:
init in interface XMLConfigurable
Following copied from interface: submarine.core.XMLConfigurable
Parameters:
xml -  
Throws:
java.lang.Exception -  

listen

public void listen()
Description copied from interface: ListeningFunction
Se met en attente d'évènements externes pour toute la durée de vie de la ListeningFunction.
L'implémentation de listen doit être bloquante et ne doit se terminer que dans l'un des deux cas suivants: Pour toutes autres raison (Exception non bloquante, timeout, ...) la ListeningFuntion doit rester active. La ListeningFunction doit tester de manière régulière (5 sec au max) l'état d'interruption de son Thread!
En d'autre mots, il est conseillé d'implémenter une ListeningFunction de la manière suivante:
 	while ( !Thread.interrupted() ) try { 
 	// votre code ici ... durant moins de 5 secondes.
 	} catch( Exception e ) {
 	// Traitement de l'exception
 	}
 
Specified by:
listen in interface ListeningFunction

setSubmiter

public void setSubmiter(Submiter s)
Specified by:
setSubmiter in interface SubmiterAware
Following copied from interface: submarine.core.SubmiterAware
Parameters:
s -  

finalize

public void finalize()
Description copied from interface: Finalizable
Appelée sur une instance de PoolingFunction ou de WritingFunction avant la libération de celle-ci.
Specified by:
finalize in interface Finalizable
Overrides:
finalize in class java.lang.Object

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