Die XML-Konfiguration der Tradefeeds wird geparst und daraus wird ein Configuration
-Objekt erstellt, das die vollständige Konfiguration beschreibt.
Das Objekt wird durch die IConfiguration-Schnittstelle beschrieben und enthält eine Instanz aller in der XML-Datei definierten Objekte.
In diesem Beispiel:
<configuration description="<description of the configuration>">
<!-- A build provider that takes local device information -->
<build_provider class="com.android.tradefed.build.BootstrapBuildProvider" />
<!-- Some target preparation, disabled by default -->
<target_preparer class="com.android.tradefed.targetprep.PreloadedClassesPreparer">
<option name="disable" value="true" />
</target_preparer>
<!-- One test running some unit tests -->
<test class="com.android.tradefed.testtype.HostTest">
<option name="class" value="com.android.tradefed.build.BuildInfoTest" />
</test>
</configuration>
Dies hat folgende Auswirkungen:
IConfiguration#getBuildProvider()
, umBootstrapBuildProvider
zurückzugeben Instanz.IConfiguration#getTargetPreparers()
, um eine Liste vonITargetPreparer
mit einer Instanz vonPreloadedClassesPreparer
zurückzugeben.IConfiguration#getTests()
, um eine Liste vonIRemoteTest
mit einer Instanz vonHostTest
zurückzugeben.
Jedes einzelne Objekt im Konfigurationsobjekt kann der XML-Definition zugeordnet werden. Wenn Sie also die XML-Definition verstehen, können Sie in der Regel besser nachvollziehen, was Sie vom Konfigurationsobjekt erwarten können.