88 lines
2.5 KiB
Markdown
88 lines
2.5 KiB
Markdown
# Famille
|
|
|
|
## Une famille
|
|
|
|
Une famille est un conteneur de variables.
|
|
|
|
Pour décrire une famille il faut mettre au minimum un nom :
|
|
|
|
```
|
|
<family name="my_family"/>
|
|
```
|
|
|
|
Cette famille doit être placé dans une balise "variables" :
|
|
|
|
```
|
|
<variables>
|
|
<family name="my_family"/>
|
|
</variables>
|
|
```
|
|
|
|
## Description et aide de la famille
|
|
|
|
En plus d'un nom, il est possible de mettre une "description" à la famille. C'est une information "utilisateur" qui nous permettra d'avoir des informations complémentaires sur le contenu de cette famille :
|
|
|
|
```
|
|
<family name="my_family" description="This is a great family"/>
|
|
```
|
|
|
|
En plus de la description, il est possible de préciser une aide complémentaire :
|
|
|
|
```
|
|
<family name="my_family" help="This is a great family"/>
|
|
```
|
|
|
|
## Mode de la famille
|
|
|
|
Le [mode](./mode.md) par défaut d'une famille correspond au [mode](./mode.md) le plus petite des variables dans cette famille.
|
|
|
|
Changer le [mode](./mode.md) d'une famille permet de définir le [mode](./mode.md) par défaut des variables inclusent dans cette famille.
|
|
|
|
Pour définir le [mode](./mode.md) :
|
|
|
|
```
|
|
<family name="my_family" mode="expert"/>
|
|
```
|
|
|
|
## Famille invisible
|
|
|
|
Il est possible de cacher une famille, ainsi toutes les variables inclusent dans cette famille.
|
|
|
|
Cacher une famille signifie qu'elle ne sera pas visible lorsqu'on modifie la configuration du service.
|
|
Par contre ces variables sont accessibles lorsqu'on va utiliser ces variables.
|
|
|
|
Pour cacher une famille :
|
|
|
|
```
|
|
<family name="my_family" hidden="True"/>
|
|
```
|
|
|
|
## Famille crées dynamiquement
|
|
|
|
Pour créer une famille crées dynamiquement, il faut créer une family fictive lié à une variable.
|
|
Le nom et la description de la famille et des variables qu'elle contient sera en réalité le prefix du nouveau nom/description. Le suffix viendra de la variable liée.
|
|
|
|
Par exemple :
|
|
|
|
```
|
|
<family name='my_family'>
|
|
<variable name='varname' multi="True">
|
|
<value>val1</value>
|
|
<value>val2</value>
|
|
</variable>
|
|
</family>
|
|
<family name='my_dyn_family_' dynamic="varname description="Describe "">
|
|
<variable name='my_dyn_var_'/>
|
|
</family>
|
|
```
|
|
|
|
Créera trois familles :
|
|
|
|
- la famille : "my_family"
|
|
- la famille dynamique : "my_dyn_family_val1" avec la description "Describe val1"
|
|
- la famille dynamique : "my_dyn_family_val2" avec la description "Describe val2"
|
|
|
|
Dans la famille dynamique "my_dyn_family_val1" on retrouvera une variable "my_dyn_var_val1".
|
|
|
|
Bien évidement si le contenu de "varname" venait a évolué, de nouvelles familles dynamiques pouvent apparaitre ou des familles dynamiques peuvent disparaître.
|