Documents multilingues : spécification
Interface
Ajout de documents:
Trois façons de procéder:
- document monolingue: l'utilisateur indique simplement la langue de celui-ci.
- document multilingue (1): l'utilisateur doit fournir un fichier nommé index_lang.htm(l) ou
default_lang.htm(l) (où lang est un code de langue) pour chaque langue du document.
Détection des langues présentes en fonction du nom des index.
- document multilingue (2): l'utilisateur fournit une archive contenant autant de répertoires
qu'il y a de langues. Chaque répertoire porte le nom code de sa langue et doit contenir un
index.htm(l) ou default.htm(l). Détection des langues présentes en fonction du nom des
répertoires.
Une modification de document se fait sur l'ensemble des langues: on doit renvoyer le
document complet à chaque modification.
Consultation
Choix de la langue à côté du titre du document. Le titre n'est plus un lien.
Implémentation
Base de données
Ajout d'un attribut language dans la table InformationFiles. Cet attribut n'a de valeur que
pour les fichiers dont l'attribut isIndexFile vaut vrai. (on a juste besoin des bons "points
d'entrée" dans le document pour chaque langue, sauf si on veut changer dynamiquement de
langue pendant la consultation d'un doc).
Presentation Object
Modification de AdminInformations.java et ConsultInformations.java pour faire afficher les
langues disponibles pour chaque document.
Modification de AdminInformations.java pour ajouter une liste déroulante permettant de
choisir la langue du document envoyé ou au contraire de préciser qu'il est multilingue.
Business
InformationFileFactory.java: modification de findIndexFileForDocument qui renverra
désormais un tableau de fichiers index (un fichier pour chaque langue disponible pour le
document).
ImportTarFile.java: reconnaissance et traitement des deux cas d'ajout de documents
multilingues.