Format des fichiers wak.ini
Chaque Kit doit nécessairement inclure un fichier de meta-donnés, placé à sa racine et nommé wak.ini
. Voici la description du format :
Section [kit]
La première section contient les meta-données à porté générale.
- version
- La version du kit. Est pris en compte pour la gestion des dépendances.
- desc
- Un bref descriptif, sur une ligne
- phprange (optionnel mais recommandé)
- Indiquez une fourchette de versions de PHP au sein desquelles le kit fonctionne. Par ex. 4.3-5.1, 5.*, 4.4+
- class (optionnel)
- La classe de l'instance du kit. Par defaut,
Webappkit
.
[kit]
; kit-wide meta informations
version = "0.1"
; kit version. Will be used later.
desc = "This is my first kit. It will rocks !"
; a short description. Single line to be INI compliant !
phprange = "4.3-5.*"
; define which PHP versions range compatibility (optional)
; you can use a single version string with jokers, as 4.*
Librairies et dépendances
Ces sections indiquent quels autres kits doivent être chargés avant celui-ci, puis quels sont les fichiers du kit à inclure, puis les sous-kits à charger ensuite. Elles sont toutes optionnelles. L'ordre dans lequel se trouvent les élements est important, ce sera l'ordre dans lequel ils seront chargés.
- [load_kits]
- La liste des kits à charger, de la forme identifiant = "version". L'ordre est préservé pour le chargement. Il est possible d'utiliser un joker
*
si la version importe peu. - [load_files]
- La liste des fichiers PHP à charger, de la forme index = "chemin/vers/le/fichier". La valeur de l'index n'est pas signifiante, seul l'ordre importe. Le chemin est un chemin relatif depuis la racine du kit. Tous ces fichiers seront chargés au chargement du kit.
- Il est possible de fournir un fichier pour chaque version de PHP, en les nommant
.php4
,.php5
etc. Dans ce cas, indiquez.php*
dans cette liste et le fichier inclus sera celui correspondant à la version courante de PHP. - [load_classes]
- Index des classes. Sous PHP5, ces classes seront indexées pour être chargées automatiquement lorsqu'elles seront requises par vos scripts. Sous PHP4, elles seront chargées directement comme pour [load_files]. Il est également possible d'avoir un fichier pour chaque version de PHP ici.
- [load_subkits]
- La liste des sous-kits à charger, de la forme identifiant = "version". L'identifiant des kits doit omettre la partie correspondant au kit parent. Par ex.
hello.world
fera ici référence àexample.hello.world
. Ces kits seront chargés à la fin du chargement du kit parent.
[load_kits]
; kits to load before self resources, order will be preserved.
; absolute.kit.id = "version range"
webappkit.datapath = "1.2+"
[load_files]
; self resources to load, order will be preserved.
; n = "relative/path/to/file"
10 = "myclass.class.php*"
20 = "mychildclass.class.php*"
[load_classes]
; classes index
; class = "relative/path/to/definition/file"
; class names MUST be lower case
anotherclass = "lib/anotherclass.php*"
[load_subkits]
; subkits to load after self resources, order will be preserved
; relative.subkit.id = "version range"
hello.world = "*"
Section [tools]
Cette section liste les Outils qui seront accessibles en tant qu'attributs de l'instance du kit. Les clefs sont les noms d'attribut et les valeurs la classe à utiliser.
[tools]
; name = "class"
realm = "HttpRealmTool"