Interface Rule

All Superinterfaces:
NecessaryResult
All Known Implementing Classes:
AbstractRule

public interface Rule extends NecessaryResult
Interface d'une regle. setValue et getValue permet de stocker des informations liées a l'instance de la règle.

Lorsqu'on implante une rule, les paramètres que l'on souhaite qu'elle ait, doivent etre des attributs public commencant par param.

Les types acceptable pour un parametre sont:

  • un nombre (int, long, float, double, ...)
  • un boolean
  • une chaine String
  • un objet Date (TimeStep)
  • un objet Month (Month)
  • Le type d'une entité (@see fr.ifremer.isisfish.entities)

Pour supporter d'autre type il faut créer des converters commons-beanutils //RuleHelper.getRuleAsProperties(int, org.nuiton.topia.TopiaContext, Rule) Created: 12 janv. 2006 17:02:43

Version:
$Revision$ Last update: $Date$ by : $Author$
Author:
poussin
  • Method Details

    • getDescription

      String getDescription() throws Exception
      Permet d'afficher a l'utilisateur une aide sur la regle.
      Returns:
      L'aide ou la description de la regle
      Throws:
      Exception
    • init

      void init(SimulationContext context) throws Exception
      Appelé au démarrage de la simulation, cette méthode permet d'initialiser la règle.
      Parameters:
      context - La simulation pour lequel on utilise cette regle
      Throws:
      Exception
    • condition

      boolean condition(SimulationContext context, TimeStep step, Metier metier) throws Exception
      La condition qui doit etre vrai pour faire les actions. Si la condition return vrai alors les methodes preAction(SimulationContext, TimeStep, Metier) et postAction(SimulationContext, TimeStep, Metier) seront appelée.
      Parameters:
      context - la simulation pour lequel on utilise cette regle
      step - le pas de temps courant
      metier - le metier
      Returns:
      vrai si on souhaite que les actions soit faites
      Throws:
      Exception - s'il y a une erreur, met fin a la simulation
    • preAction

      void preAction(SimulationContext context, TimeStep step, Metier metier) throws Exception
      Si la condition est vrai alors cette action est executée avant le pas de temps de la simulation.
      Parameters:
      context - la simulation pour lequel on utilise cette regle
      step - le pas de temps courant
      metier - le metier
      Throws:
      Exception - s'il y a une erreur, met fin a la simulation
    • postAction

      void postAction(SimulationContext context, TimeStep step, Metier metier) throws Exception
      Si la condition est vrai alors cette action est executée apres le pas de temps de la simulation.
      Parameters:
      context - la simulation pour lequel on utilise cette regle
      step - le pas de temps courant
      metier - le metier
      Throws:
      Exception - s'il y a une erreur, met fin a la simulation
    • getValue

      Object getValue(String name)
      Permet de recuperer une valeur prealablement stockée avec un setValue(String, Object).
      Parameters:
      name - le nom de la valeur souhaitée
      Returns:
      la valeur ou null si aucune valeur ne porte se nom
    • setValue

      void setValue(String name, Object value)
      Permet de stocker une valeur en fonction d'une cle.
      Parameters:
      name - le nom de la valeur
      value - la valeur