Gestion de la configuration site, utilisateur et aide

Configuration site

Cette configuration se trouve dans le fichier FudaaCrue_Site.xml. Ce fichier est présent dans le dossier d'installation de Fudaa-Crue soit <INSTALL_DIR>\etc.
Par exemple, ce dossier pourra être P:\FudaaCrue\v1.0\etc ou C:\Program Files\FudaaCrue\v1.0\etc
Ce fichier n'est pas éditable depuis l'interface est il sera uniquement modifié manuellement par les installateurs. si absent, un fichier par défaut sera proposé par Fudaa-Crue et créé automatiquement.

La configuration du répertoire utilisateur ( voir prochain paragraphe) ne sera pas effectué dans ce fichier mais dans un fichier propre à Netbeans soit <INSTALL_DIR>/etc/fudaacrue.conf .

Le fichier FudaaCrue_Site.xml est constitué de la façon suivante:

<Configuration>
  <Site>
  <!--contient les informations non modifiables par l'utilisateur-->
    <Coeurs>
     <!--voir le paragraphe sur l'élément coeurs pour le détail-->
    </Coeurs>
<SiteAide Type="Relative">
<Commentaire>Aide Flare</Commentaire>
<SyDocActivation>False</SyDocActivation>
<!-- Chemin défini en relatif (car Type="Relative") -->
<CheminBase>aide/%1$s/SyDoC_HTML/Default.htm#cshid=</CheminBase>
<!-- Chemin défini en absolu (si Type="Absolu") -->
<!--
<CheminBase>//serveur/documentation/aide/%1$s/SyDoC_HTML/Default.htm#cshid=</CheminBase>
-->
</SiteAide> <SiteOptions>

<SiteOption Nom="availableLanguage" UserVisible="true">
<Commentaire>Langues disponibles</Commentaire>
<Valeur>fr_FR</Valeur>
</SiteOption>
<SiteOption Nom="maxComparisonItemsDisplayed" UserVisible="true">
<Commentaire>Nombre maximal de différences affichées</Commentaire>
<Valeur>1000</Valeur>
</SiteOption>
<SiteOption Nom="maxLogLinesRead" UserVisible="true">
<Commentaire>Nombre maximal de lignes lues dans un CR</Commentaire>
<Valeur>5000</Valeur>
</SiteOption>
<SiteOption Nom="maxComparisonResultsByEMH" UserVisible="true">
<Commentaire>Nombre maximal de différences sur les résultats de calcul par EMH</Commentaire>
<Valeur>500</Valeur>
</SiteOption>
<SiteOption Nom="crue10.rptr.exeOption" UserVisible="true">
<Commentaire>Crue 10: option pour demande de pre-traitement réseau.</Commentaire>
<Valeur>-r</Valeur>
</SiteOption>
<SiteOption Nom="crue10.rptg.exeOption" UserVisible="true">
<Commentaire>Crue 10: Demande de pre-traitement de la géometrie.</Commentaire>
<Valeur>-g</Valeur>
</SiteOption>
<SiteOption Nom="crue10.rpti.exeOption" UserVisible="true">
<Commentaire>Crue 10: Demande de pre-traitement des conditions initiales.</Commentaire>
<Valeur>-i</Valeur>
</SiteOption>
<SiteOption Nom="crue10.rcal.exeOption" UserVisible="true">
<Commentaire>Crue 10: Demande de calculs.</Commentaire>
<Valeur>-c</Valeur>
</SiteOption>

    </SiteOptions>
  </Site>
  <User>
  <!--contient les informations modifiables par l'utilisateur-->
  <UserOptions>

<UserOption Nom="userLanguage">
<Commentaire>Langue choisie pour l'utilisateur</Commentaire>
<Valeur>fr_FR</Valeur>
</UserOption>
<UserOption Nom="uiUpdateProgressFrequence">
<Commentaire>Fréquence de rafraîchissement en seconde de l'interface pendant le déroulement d'un run</Commentaire>
<Valeur>0.2</Valeur>
</UserOption>
<UserOption Nom="externalEditor">
<Commentaire>Chemin ou commande vers l'éditeur externe</Commentaire>
<Valeur>C:\Program Files (x86)\Notepad++\notepad++.exe</Valeur>
</UserOption>
<UserOption Nom="crue9Exe">
<Commentaire>Chemin ou commande vers l'exécutable Crue 9</Commentaire>
<!-- Pour version de prod
<Valeur>P:\Crue\Crue9\Appli\crue9.exe</Valeur>
-->
<!-- Pour versions de dev et qualif avec sollicitation IHM Crue9
-->
<Valeur>Q:\Qualif_Exec\Crue9\crue9.exe</Valeur>
<!-- Pour versions de dev et qualif avec sollicitation script Python
<Valeur>Q:\Qualif_Exec\Crue9\Crue9_FR.cmd</Valeur>
-->
</UserOption>

  </UserOptions>
  </User>
</Configuration>

Cette organisation permet à l'installateur de déterminer ce qui sera éditable par l'utilisateur. Dans l'exemple ci-dessus externalEditor est éditable alors que
crue10.rptr.exeOption ne l'est pas. Si l'installateur déplace l'entrée crue10.rptr.exeOption dans l'élément User, cette option deviendra éditable par l'utilisateur.

l'élément <SiteAide>

Cet élément contient la configuration du système d'aide en ligne utilisé.

  • <SyDocActivation> : Il existe deux modes d'aide en ligne : un mode SyDoc correspondant à l'aide en ligne SyDoc (client WEB embarqué dans FudaaCrue) et un mode non SyDoc correspondant à une aide en ligne externe (le client WEB du poste utilisant FudaaCrue est utilisé). La valeur 'True' permet d'activer le mode SyDoc et la valeur 'False' permet d'activer le mode non SyDoc.

  • <SiteAide> : L'attribut 'Type' n'est utile que dans le cadre du mode non SyDoc. Il permet de specifier l'utilsation du chemin de base. 

    • La valeur 'Aboslute' indique à FudaaCrue de prendre le contenu de <CheminBase> tel quel. 

    • La valeur 'Relative' indique à FudaaCrue de créer le chemin d'accés à l'aide en ligne en prenant le chemin du repertorie etc de la distribution et en y suffixant le contenu de <CheminBase>

  • <CheminBase> : cet élément n'est utile que dans le cadre du mode non SyDoc. Il s'agit du chemin de base de l'aide en ligne extérieur. Lors de l’utilisation de la touche 'F1' ou des boutons d'aide dans FudaaCrue, ce chemin de base sera utilisé et suffixé par l'élément défini dans le fichier SiteAide.xml correspondant à l'Id FudaaCrue généré en fonction du contexte de l'application au moment de l'appel à l'aide en ligne.

Configuration utilisateur

Le fichier FudaaCrue_User.xml est placé dans <DEFAULT_USERDIR>\config (La variable <DEFAULT_USERDIR> est configurable dans fudaacrue.conf ou en paramètre de l'appel à Fudaa-Crue).
Il permet de redéfinir les options utilisateur décrites dans le tag <UserOptions> du fichier FudaaCrue_Site.xml. C'est le seul fichier modifié par l'interface.
Ce fichier est automatiquement créé par Fudaa-Crue s'il est absent.

<Configuration>
<Commentaire></Commentaire>
<User> <!--contient les informations modifiables par l'utilisateur--> <UserOptions> <UserOption Nom="CheminEditeurTexte"> <Commentaire>Chemin vers un editeur texte</Commentaire> <Valeur>Notepad2</Valeur> </UserOption> </UserOptions> </User> </Configuration>

l'élément <coeurs>

Cet élément fichier contient la liste des coeurs utilisables dans l'application. Un coeur est défini par :

  1. un identifiant ( chaine de caractère) qui doit être unique.
  2. un chemin vers le dossier du coeur
  3. une version de grammaire
  4. une propriété indiquant si c'est le coeur par défaut pour la grammaire en question.

Si un seul coeur est défini pour une grammaire donnée, il devra avoir la propriété par défaut initiée à true.

<Coeurs>
 <Coeur id="coeur1">
     <Commentaire>Utile?<Commentaire>
     <VersionGrammaire>1.2<VersionGrammaire>
     <CoeurParDefaut>true</CoeurParDefaut>
     <DossierCoeur>C:\DossierCoeur<DossierCoeur> <!-- Chemin absolu-->
<!-- Si on veut utiliser le coeur c10m9 (ex: qualif_IR pour campagnes OTFA INDUSTRIEL_RES et INDUSTRIEL_PERF), il faut mettre Crue9Dependant à true
pour tous les coeurs, pour que FC gère le "scénario Crue9 lié" pour chaque scénario Crue10. Dans tous les autres cas, laisser Crue9Dependant à
false ou l'omettre --> 
<Crue9Dependant>false</Crue9Dependant>
 <Coeur>
</Coeurs>

Validation d'un élément Coeur

A l'ouverture les validations suivantes seront effectuées:

  1. vérification de l'unicité des identifiants de coeur
  2. pour une version de grammaire donnée, un seul coeur doit être défini comme coeur par défaut.
  3. chaque dossier doit être valide et unique 

Structure type d'un dossier Coeur

|- CrueConfigMetier.xml ( fichier de configuration des propriétés, epsilon, plage de validité,...)
|- exe
   |-crue10.exe 
|- fichiers_vierges ( dossier contenant les fichiers vierges Crue10 )
   |- 
|- xsd  ( dossier contenant les xsd pour  Crue10)
   |-*.xsd
|- msg  ( dossier contenant les fichiers de décodage des traces de Crue10 pour chaque langue)
   |-<langue>_<PAYS>.msg.xml

Un dossier coeur sera valide si:

  • il a la structure décrite ci-dessus.
  • Les fichiers vierges (dossier fichiers_vierges) sont décrits dans la même <VersionGrammaire> que celle définie dans le fichier FudaaCrue_Site.xml
  • Le dossier xsd est complet (xsd par type de fichier) et dans une version cohérente avec celle du coeur.
  • Le fichier CrueConfigMetier.xml est valide
  • Le dossier "exe" de chaque coeur contient un exécutable crue10.exe.

Chargement et validation de la configurations des coeurs

Le paramétrage des coeurs sera rechargé et validé :

  • à chaque ouverture d'étude en mode interactif,
  • à chaque ouverture de campagne dans la fonctionnalité OTFA.

Si une étude est ouverte, les modifications des fichiers de configurations ne seront pas rechargées. Seuls les fichiers de scénarios vierge sont relus à chaque usage (conversion, chargement scénario Crue 9).

Configuration Aide

Cette configuration est contenue dans le fichier FudaaCrue_Aide.xml. Ce fichier est présent dans le répertoire <INSTALL_DIR>\etc. Il contient la correspondance entre les ID FudaaCrue générés par l'application et les liens vers la documentation correspondante.

Exemple de contenu :

<Liens xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
     <Lien IdFudaaCrue="index">
        <Help>index</Help>
      </Lien>      
      <Lien IdFudaaCrue="DEFAUT">
         <Help>perspectives_etude_index</Help>
      </Lien>
<Lien IdFudaaCrue="perspectives_compteRendu_dialogues_comparerScenario">
<Help>perspectives_compteRendu_dialogues_comparerScenario</Help>
</Lien>
</Liens>

A chaque génération par FudaaCrue d'un ID (touche 'F1' ou bouton '?'), l'application recherche le lien <Help> correspondant. Ce lien est alors suffixé au chemin de base de l'aide en ligne configurée. Si l'ID FudaaCrue n'existe pas dans le fichier d'aide alors l'application utilise le lien <Help> de l'Id 'DEFAUT'. Cet ID 'DEFAUT' doit toujours être présent dans le fichier.