Benötigt eine Komponente A eine Liste von Subkomponenten B, so wird einfach eine typisiert Get-Methode List<B.Config> getBConfigs definiert. Die Annotation com.top_logic.basic.config.annotation.EntryTag gibt an wie das Tag der einzelnen Listeneinträge heißt.
public class A {
public interface Config extends PolymorphicConfiguration<A> {
@EntryTag("bConfig")
List<B.Config>getBConfigs();
}
List<B> bs;
public A(InstantiationContext context, A.Config config) {
this.bs = TypedConfiguration.getInstanceList(context, config.getBConfigs());
}
}
Bei der Instanziierung von A wird die Liste von B.Config Elementen zu einer Liste von Komponenten B aufgelöst.