Tradefed XML yapılandırması ayrıştırılır ve bu yapılandırmadan tüm yapılandırmayı açıklayan bir Configuration
nesnesi oluşturulur.
Nesne, IConfiguration arayüzü tarafından tanımlanır.XML'de tanımlanan tüm nesnelerin bir örneğini içerir.
Bu örnekte:
<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>
Sonuç olarak:
IConfiguration#getBuildProvider()
BootstrapBuildProvider
örneği döndürür.IConfiguration#getTargetPreparers()
,PreloadedClassesPreparer
örneği içerenITargetPreparer
öğelerinin listesini döndürür.HostTest
örneği içerenIRemoteTest
öğelerinin listesini döndürmek içinIConfiguration#getTests()
.
Yapılandırma nesnesinde bulunan her nesne XML tanımı ile eşlenebilir. Bu nedenle, XML tanımını anlamak genellikle yapılandırma nesnesinden ne bekleneceğini anlamanıza yardımcı olur.