設定工廠
public
class
ConfigurationFactory
extends Object
implements
IConfigurationFactory
java.lang.Object | |
↳ | com.android.tradefed.config.ConfigurationFactory |
建立 IConfiguration
的工廠。
摘要
巢狀類別 | |
---|---|
class |
ConfigurationFactory.ConfigLoader
實作 IConfigDefLoader,從 根設定,然後在循環 include 上擲回例外狀況。 |
class |
ConfigurationFactory.ExceptionLoader
|
受保護的建構函式 | |
---|---|
ConfigurationFactory()
|
公用方法 | |
---|---|
void
|
clearMapConfig()
在特殊情況下,我們必須清除地圖。 |
IConfiguration
|
createConfigurationFromArgs(String[] arrayArgs,
透過指令列引數建立 |
IConfiguration
|
createConfigurationFromArgs(String[] arrayArgs,
使用金鑰儲存庫的指令列引數建立 |
IConfiguration
|
createConfigurationFromArgs(String[] arrayArgs)
呼叫 |
IGlobalConfiguration
|
createGlobalConfigurationFromArgs(String[] arrayArgs,
透過指令列引數建立 |
IConfiguration
|
createPartialConfigurationFromArgs(String[] arrayArgs, IKeyStoreClient keyStoreClient,
建立僅包含一組所選物件的設定。 |
void
|
dumpConfig(String configName, PrintStream out)
將設定內容傾印至指定的 |
|
getConfigList(String subPath, boolean loadFromEnv)
|
|
getConfigList()
傳回在類別路徑的 JAR 中找到的所有設定名稱清單。 |
static
IConfigurationFactory
|
getInstance()
取得單例模式 |
void
|
loadAllConfigs(boolean discardExceptions)
載入在類別路徑和測試案例目錄中找到的所有設定。 |
void
|
loadAndPrintAllConfigs()
檢查所有設定是否都可以載入、剖析 已設定所有選項值。 |
void
|
printHelp(PrintStream out)
列印這台工廠的說明輸出內容。 |
void
|
printHelpForConfig(String[] args, boolean importantOnly, PrintStream out)
列印指令列引數中指定的
如果「args」代表已知的設定,系統會建立 |
保護方法 | |
---|---|
InputStream
|
getBundledConfigStream(String name)
|
String
|
getConfigPrefix()
傳回類別路徑中 config xml 檔案的路徑前置字串 公開,以便模擬單元測試。 |
BufferedInputStream
|
getConfigStream(String name)
載入指定設定名稱的 InputStream |
ConfigurationDef
|
getConfigurationDef(String name, boolean isGlobal,
擷取指定名稱的 |
|
getMapConfig()
公開測試。 |
boolean
|
isDirectConfiguration(String configName)
|
String[]
|
reorderArgs(String[] args)
重新排序引數,將 templates:map args 全數移至最前方。 |
IRemoteFileResolver.ResolvedFile
|
resolveRemoteFile(URI configURI, URI destDir)
|
受保護的建構函式
設定工廠
protected ConfigurationFactory ()
公用方法
ClearMapConfig
public void clearMapConfig ()
在特殊情況下,我們必須清除地圖。
createConfigurationFromArgs
public IConfiguration createConfigurationFromArgs (String[] arrayArgs,unconsumedArgs)
透過指令列引數建立 IConfiguration
。
預期格式為「設定 [選項]」,其中 CONFIG 為內建設定名稱或 設定檔路徑
參數 | |
---|---|
arrayArgs |
String :指令列引數 |
unconsumedArgs |
:要填入非引數的清單
所消耗的物件。如果這是
null ,則實作將會擲回
ConfigurationException 表示有任何未處理的引數。 |
傳回 | |
---|---|
IConfiguration |
載入的 IConfiguration 。委派物件「Option 」欄位有
就會填入 args 的值。 |
擲回 | |
---|---|
ConfigurationException |
createConfigurationFromArgs
public IConfiguration createConfigurationFromArgs (String[] arrayArgs,unconsumedArgs, IKeyStoreClient keyStoreClient)
使用金鑰儲存庫的指令列引數建立 IConfiguration
。
預期格式為「設定 [選項]」,其中 CONFIG 為內建設定名稱或 設定檔路徑
參數 | |
---|---|
arrayArgs |
String :指令列引數 |
unconsumedArgs |
:要填入非引數的清單
所消耗的物件。如果這是
null ,則實作將會擲回
ConfigurationException 表示有任何未處理的引數。 |
keyStoreClient |
IKeyStoreClient :IKeyStoreClient ,用於取得機密資訊
引數 |
傳回 | |
---|---|
IConfiguration |
載入的 IConfiguration 。委派物件「Option 」欄位有
就會填入 args 的值。 |
擲回 | |
---|---|
ConfigurationException |
createConfigurationFromArgs
public IConfiguration createConfigurationFromArgs (String[] arrayArgs)
呼叫 ERROR(/#createConfigurationFromArgs(String[],List))
的便利方法
呼叫 null
秒即可啟動函式因此,如果發生以下情況,系統會擲回 ConfigurationException
所有未消耗的引數都會保留下來。
參數 | |
---|---|
arrayArgs |
String |
傳回 | |
---|---|
IConfiguration |
擲回 | |
---|---|
ConfigurationException |
createGlobalConfigurationFromArgs
public IGlobalConfiguration createGlobalConfigurationFromArgs (String[] arrayArgs,remainingArgs)
透過指令列引數建立 IGlobalConfiguration
。
預期格式為「設定 [選項]」,其中 CONFIG 為內建設定名稱或 設定檔路徑
參數 | |
---|---|
arrayArgs |
String :指令列引數 |
remainingArgs |
:要填入未定義引數的清單
視為全域引數 |
傳回 | |
---|---|
IGlobalConfiguration |
載入的 IGlobalConfiguration 。委派物件 Option 欄位
而是填入 args 的值。 |
擲回 | |
---|---|
ConfigurationException |
createPartialConfigurationFromArgs
public IConfiguration createPartialConfigurationFromArgs (String[] arrayArgs, IKeyStoreClient keyStoreClient,allowedObjects, TradefedDelegator delegator)
建立僅包含一組所選物件的設定。
參數 | |
---|---|
arrayArgs |
String :指令列引數 |
keyStoreClient |
IKeyStoreClient :IKeyStoreClient ,用於取得
引數。 |
allowedObjects |
:要建立的允許物件組合 |
delegator |
TradefedDelegator |
傳回 | |
---|---|
IConfiguration |
已載入的 IConfiguration 。 |
擲回 | |
---|---|
ConfigurationException |
轉儲設定
public void dumpConfig (String configName, PrintStream out)
將設定內容傾印至指定的 ERROR(/PrintStream)
參數 | |
---|---|
configName |
String :設定名稱 |
out |
PrintStream :指定要將輸出內容轉儲到哪個 ERROR(/PrintStream) |
getConfigList
publicgetConfigList (String subPath, boolean loadFromEnv)
getConfigList()
的變化,用於指定是否要一併載入
從環境複製設定
參數 | |
---|---|
subPath |
String :要尋找的子目錄名稱。若為空值,將會有
行為與 getConfigList() 相同 |
loadFromEnv |
boolean :如果我們要在環境變數中載入設定,則為「是」。 |
傳回 | |
---|---|
|
getConfigList
publicgetConfigList ()
傳回在類別路徑的 JAR 中找到的所有設定名稱清單。 不會嘗試載入任何設定,因此可能會在設定期間失效 。
傳回 | |
---|---|
|
getInstance
public static IConfigurationFactory getInstance ()
取得單例模式 IConfigurationFactory
執行個體。
傳回 | |
---|---|
IConfigurationFactory |
loadAllConfig
public void loadAllConfigs (boolean discardExceptions)
載入在類別路徑和測試案例目錄中找到的所有設定。
參數 | |
---|---|
discardExceptions |
boolean :如果任何 ConfigurationException 應忽略,則為 true。 |
擲回 | |
---|---|
|
com.android.tradefed.config.ConfigurationException |
ConfigurationException |
loadAndPrintAllConfigs
public void loadAndPrintAllConfigs ()
檢查所有設定是否都可以載入、剖析 已設定所有選項值。 僅公開,以便取決於專案驗證設定。 不應在控制台中公開。
擲回 | |
---|---|
ConfigurationException |
無法載入一或多項設定 |
列印說明
public void printHelp (PrintStream out)
列印這台工廠的說明輸出內容。
列印一般說明資訊,並列出所有可用設定。
參數 | |
---|---|
out |
PrintStream :指定要將輸出內容轉儲到哪個 ERROR(/PrintStream) |
printHelpForConfig
public void printHelpForConfig (String[] args, boolean importantOnly, PrintStream out)
列印指令列引數中指定的 IConfiguration
說明輸出內容。
如果「args」代表已知的設定,系統會建立 IConfiguration
物件
並輸出 IConfiguration
的說明注意所有其他的「args」
值將被忽略 (也就是說,說明文字將描述 Option
s 目前的值
從 XML 載入,不會反映指令列引數所設定的選項值。
如果「args」未參照已知的 IConfiguration
(通用產品)
系統隨即會顯示printHelp(PrintStream)
說明。
參數 | |
---|---|
args |
String :指令列引數 |
importantOnly |
boolean :如果為 true ,則只顯示列出縮寫說明
重要細節 |
out |
PrintStream :指定要將輸出內容轉儲到哪個 ERROR(/PrintStream) |
保護方法
getBundledConfigStream
protected InputStream getBundledConfigStream (String name)
參數 | |
---|---|
name |
String |
傳回 | |
---|---|
InputStream |
getConfigPrefix
protected String getConfigPrefix ()
傳回類別路徑中 config xml 檔案的路徑前置字串
公開,以便模擬單元測試。
傳回 | |
---|---|
String |
String 路徑結尾/結尾/ |
getConfigStream
protected BufferedInputStream getConfigStream (String name)
載入指定設定名稱的 InputStream
參數 | |
---|---|
name |
String :要載入的設定名稱 |
傳回 | |
---|---|
BufferedInputStream |
用於讀取設定內容的 ERROR(/BufferedInputStream) |
擲回 | |
---|---|
ConfigurationException |
如果找不到設定 |
getConfigurationDef
protected ConfigurationDef getConfigurationDef (String name, boolean isGlobal,templateMap)
擷取指定名稱的 ConfigurationDef
參數 | |
---|---|
name |
String :要載入的內建設定名稱,或是設定檔的檔案路徑
載入 |
isGlobal |
boolean |
templateMap |
|
傳回 | |
---|---|
ConfigurationDef |
ConfigurationDef |
擲回 | |
---|---|
ConfigurationException |
載入設定時發生錯誤。 |
getMapConfig
protectedgetMapConfig ()
公開測試。傳回地圖副本。
傳回 | |
---|---|
|
isDirectConfiguration
protected boolean isDirectConfiguration (String configName)
參數 | |
---|---|
configName |
String |
傳回 | |
---|---|
boolean |
重新排序 Args
protected String[] reorderArgs (String[] args)
重新排序引數,將 templates:map args 全數移至最前方。
參數 | |
---|---|
args |
String |
傳回 | |
---|---|
String[] |
helpRemoteFile
protected IRemoteFileResolver.ResolvedFile resolveRemoteFile (URI configURI, URI destDir)
參數 | |
---|---|
configURI |
URI |
destDir |
URI |
傳回 | |
---|---|
IRemoteFileResolver.ResolvedFile |
擲回 | |
---|---|
BuildRetrievalError |