La mise à jour d'un fichier JAVA source consiste à :
Il existe des example dans le répertoire Components/CodeUpdater/Java du catalogue usecases-catalog.
Ceci nécéssite de :
<models>
<model key="javaClass" type="java" />
</models>Voici un exemple qui permet d'ajouter un contenu field dans le fichier source JAVA :
<output>
<file key="javaClass" >
<insert path="field" >
<template uri="/ftl/CodeUpdater/Java/AddJavaField.ftl" />
</insert>
</file>
</file>
</output>Pour indiquer le fichier JAVA source à modifier (qui a été définit dans le modèle), l'attribut key de l'élement file doit faire référence à l'attribut key de l'élement model.
private String ${fieldName}; La définition d'un modèle de type java et de key javaClass qui permet d'indiquer le fichier JAVA à mettre à jour s'effectue comme ceci :
... <models> <model type="java" key="javaClass" /> ... </models> ...
L'élement file est contenu dans l'élement output. Il permet de décrire la mise à jour à effectuer sur le fichier JAVA source qui a été définit dans le modèle. La mise à jour du fichier JAVA définit dans le modèle de key javaClass s'effectue comme ceci :
...
<output>
<file key="javaClass" >
...
</file>
</output>
...L'élement insert est contenu dans l'élement file. Il permet d'insérer le code method/field à l'aide de l'attribut path :
...
<file key="javaClass" >
<insert path="method|field" >
<template uri="..." />
</insert>
</file>
...Le code method/field à insérer est généré. Cette génération de code s'effectue à partir d'un template (Freemarker, velocity, XSL,...).
Pour générer un le contenu de method/field à l'aide du template path_of_myTemplate, insert doit contenir :
... <insert path="method|field" > <template uri="path_of_myTemplate" /> </insert> ...