Subkomponentenliste
Im Beispiel
interface Config extends ConfigurationItem {
List<A> getListA();
interface A extends ConfigurationItem {
...
}
}
wird die Subkomponentenliste getListA()
in einem XML-Element list-a
gespeichert. Der (lokale) Name dieses Elements entspricht dem Konfigurationsnamen der listenwertigen Eigenschaft. Jeder Listeneintrag wird durch ein innerers XML-Element des Listen-Elements gespeichert. Ist nichts angegeben, wird entry
als Tag-Name für die Listeneinträge verwendet:
<config>
<list-a>
<entry .../>
<entry .../>
<entry .../>
</list-a>
</config>
Der Tag-Name der Listenelemente kann über die Annotation @EntryTag
bestimt werden:
interface Config extends ConfigurationItem {
@EntryTag("a")
List<A> getListA();
}
In obigem Beispiel wird die Liste dann folgendermaßen konfiguriert:
<config>
<list-a>
<a .../>
<a .../>
<a .../>
</list-a>
</config>