Tâche #24645
Scénario #24336: Bareos : permettre de configurer un serveurs EOLE en tant que Client seul
Creole : pouvoir utiliser des options descriptions dynamiques
Début:
24/08/2018
Echéance:
% réalisé:
100%
Restant à faire (heures):
0.0
Description
L'idée est d'avoir des optiondescriptions qui se crées suivent le contenu d'une variable.
Voici un exemple via tiramisu :
[gnunux@localhost tiramisu]$ python3 Python 3.6.5 (default, Mar 29 2018, 18:20:46) [GCC 8.0.1 20180317 (Red Hat 8.0.1-0.19)] on linux Type "help", "copyright", "credits" or "license" for more information. >>> def calc_val(val): ... return val ... >>> from tiramisu.config import Config >>> from tiramisu.option import UnicodeOption, DynOptionDescription, OptionDescription >>> src = UnicodeOption('src', '', multi=True) >>> option = UnicodeOption('option_', '') >>> dod = DynOptionDescription('dod_', '', [option], callback=calc_val, callback_params={'': ((src, False),)}) >>> config = Config(OptionDescription('root', '', [src, dod]))
Si on regarde le contenu de la configuration on ne voit aucune option nommé "option_" :
>>> config.make_dict() {'src': []}
Si on ajouter une valeurs à src :
>>> config.src.append(u'test1')
Une option description "od_test1" apparait ('od_' + la valeur de src) avec dedans une option "option_test1" ('option_' + la valeur de src) :
>>> config.make_dict() {'src': ['test1'], 'dod_test1.option_test1': None}
Ainsi de suite :
>>> config.src.append(u'test2') >>> config.make_dict() {'src': ['test1', 'test2'], 'dod_test1.option_test1': None, 'dod_test2.option_test2': None}
Historique
#1 Mis à jour par Emmanuel GARETTE il y a plus de 5 ans
- Statut changé de Nouveau à Résolu
- Assigné à mis à Emmanuel GARETTE
- % réalisé changé de 0 à 100
Commit dans la branche Creole.
#2 Mis à jour par Emmanuel IHRY il y a plus de 5 ans
- Statut changé de Résolu à Fermé
- Restant à faire (heures) mis à 0.0