Die Tradefed-XML-Konfiguration wird geparst und daraus wird ein Configuration
-Objekt erstellt, das die vollständige Konfiguration beschreibt.
Das Objekt wird durch die IConfiguration-Schnittstelle beschrieben.Es enthält eine Instanz aller im XML 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>
Das Ergebnis ist:
IConfiguration#getBuildProvider()
, um eineBootstrapBuildProvider
-Instanz zurückzugeben.IConfiguration#getTargetPreparers()
, um eine Liste vonITargetPreparer
zurückzugeben, die eine Instanz vonPreloadedClassesPreparer
enthalten.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 die XML-Definition kennen, wissen Sie also in der Regel, was Sie vom Konfigurationsobjekt erwarten können.