This is an old revision of the document!
L'objectif est de maintenir la liste des Analysis
non seulement lors de l'exécution d'eP-Back mais également d'une exécution sur l'autre. Ceci permet de faire un refresh light afin de ne lire que les nouvelles acquisitions ….. D'un point de vue techono, le choix d'XStream a été fait.
Plutot que de gérer le cache d'une liste, nous avons choisi de maintenir un cache sur les Analysis
elles-mêmes.
( En effet, le cache de la liste oblige à faire automatiquement et/ou manuellement des refresh de la liste relativement souvent : dès qu'une nouvelle acquisition a été réalisée sur l'instrument par exemple …. )
Une configuration est une association instrument, donc type de format, et répertoire source (entre autres… voir chapitre epbackconfig).
Lors de l'accès à une configuration donnée, le !DataFormat associé doit permettre d'obtenir la liste des Analysis
pour le répertoire source spécifié. Ce sont donc aux implémentations de !DataFormat (ou aux factory qu'ils utilisent ) de s'assurer que les Analysis
qu'ils référencent ne sont pas dans le cache avant de les créer effectivement. Pour cela, ils font appel à un gestionnaire de cache qui permet de récupérer les Analysis
qui ont déjà été créées. Par conséquent, seules les Analysis
n'ayant jamais été accédées sont créées.
Le gestionnaire de cache enregistre les caractéristiques des Analysis
de chaque configuration dans un fichier séparé. Si l'on souhaite un rafraîchissement complet, il suffit de supprimer le fichier cache associé à la configuration avant l'ouverture d'eP-Back.
Le gestionnaire de cache (!CacheManager) gère une liste d'Analysis
pour chaque configuration. Lors du premier accès à une configurations, le !CacheManager crée son cache à partir du fichier correspondant à la configuration. Par la suite, il doit permettre une mise à jour et la sauvegarde dans le fichier cache de cette liste. La mise à jour comprend l'ajout de nouvelles acquisitions mais également la suppression des acquisitions qui ont été supprimées physiquement …. Il a été choisi de sauvegarder les changements dans le fichier “cache” lors d'un changement de configuration et à la fin de l'application.