配置工廠
public class ConfigurationFactory
extends Object
implements IConfigurationFactory
java.lang.Object | |
↳ | com.android.tradefed.config.ConfigurationFactory |
用於創建IConfiguration
工廠。
概括
嵌套類 | |
---|---|
class | ConfigurationFactory.ConfigLoader |
class | ConfigurationFactory.ExceptionLoader
|
受保護的構造函數 | |
---|---|
ConfigurationFactory () |
公共方法 | |
---|---|
void | clearMapConfig () 在某些特定情況下,我們需要清除地圖。 |
IConfiguration | createConfigurationFromArgs (String[] arrayArgs, unconsumedArgs) createConfigurationFromArgs (String[] arrayArgs, unconsumedArgs) 從命令行參數創建 |
IConfiguration | createConfigurationFromArgs (String[] arrayArgs, unconsumedArgs, IKeyStoreClient keyStoreClient) createConfigurationFromArgs (String[] arrayArgs, unconsumedArgs, IKeyStoreClient keyStoreClient) 使用密鑰存儲從命令行參數創建 |
IConfiguration | createConfigurationFromArgs (String[] arrayArgs) 一種使用 |
IGlobalConfiguration | createGlobalConfigurationFromArgs (String[] arrayArgs, remainingArgs) createGlobalConfigurationFromArgs (String[] arrayArgs, remainingArgs) 從命令行參數創建 |
IConfiguration | createPartialConfigurationFromArgs (String[] arrayArgs, IKeyStoreClient keyStoreClient, allowedObjects, TradefedDelegator delegator) createPartialConfigurationFromArgs (String[] arrayArgs, IKeyStoreClient keyStoreClient, allowedObjects, TradefedDelegator delegator) 創建僅包含一組選定對象的配置。 |
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) 打印命令行參數中指定的 IConfiguration 對象,並輸出該IConfiguration 的幫助。 |
受保護的方法 | |
---|---|
InputStream | getBundledConfigStream (String name) |
String | getConfigPrefix () 返回類路徑上配置 xml 文件的路徑前綴 公開以便單元測試可以模擬。 |
BufferedInputStream | getConfigStream (String name) 為給定的配置名稱加載一個 InputStream |
ConfigurationDef | getConfigurationDef (String name, boolean isGlobal, templateMap) getConfigurationDef (String name, boolean isGlobal, templateMap) 檢索給定名稱的 |
getMapConfig () 暴露測試。 | |
boolean | isDirectConfiguration (String configName) |
String[] | reorderArgs (String[] args) 重新排序 args,以便 template:map args 全部移到前面。 |
IRemoteFileResolver.ResolvedFile | resolveRemoteFile (URI configURI, URI destDir) |
受保護的構造函數
配置工廠
protected ConfigurationFactory ()
公共方法
clearMapConfig
public void clearMapConfig ()
在某些特定情況下,我們需要清除地圖。
createConfigurationFromArgs
public IConfiguration createConfigurationFromArgs (String[] arrayArgs,unconsumedArgs)
從命令行參數創建IConfiguration
。
參數 | |
---|---|
arrayArgs | String :命令行參數 |
unconsumedArgs | null ,那麼如果仍有任何未處理的參數,則實現將拋出ConfigurationException 。 |
退貨 | |
---|---|
IConfiguration | 加載的IConfiguration 。委託對象Option 字段已使用 args 中的值填充。 |
投擲 | |
---|---|
ConfigurationException |
createConfigurationFromArgs
public IConfiguration createConfigurationFromArgs (String[] arrayArgs,unconsumedArgs, IKeyStoreClient keyStoreClient)
使用密鑰存儲從命令行參數創建IConfiguration
。
參數 | |
---|---|
arrayArgs | String :命令行參數 |
unconsumedArgs | null ,那麼如果仍有任何未處理的參數,則實現將拋出ConfigurationException 。 |
keyStoreClient | IKeyStoreClient :一個IKeyStoreClient ,用於獲取 args 中的敏感信息。 |
退貨 | |
---|---|
IConfiguration | 加載的IConfiguration 。委託對象Option 字段已使用 args 中的值填充。 |
投擲 | |
---|---|
ConfigurationException |
createConfigurationFromArgs
public IConfiguration createConfigurationFromArgs (String[] arrayArgs)
一種使用null
第二個參數調用ERROR(/#createConfigurationFromArgs(String[],List))
便捷方法。因此,如果仍有任何未使用的參數,它將拋出ConfigurationException
。
參數 | |
---|---|
arrayArgs | String |
退貨 | |
---|---|
IConfiguration |
投擲 | |
---|---|
ConfigurationException |
createGlobalConfigurationFromArgs
public IGlobalConfiguration createGlobalConfigurationFromArgs (String[] arrayArgs,remainingArgs)
從命令行參數創建IGlobalConfiguration
。
參數 | |
---|---|
arrayArgs | String :命令行參數 |
remainingArgs |
退貨 | |
---|---|
IGlobalConfiguration | 加載的IGlobalConfiguration 。委託對象Option 字段已使用 args 中的值填充。 |
投擲 | |
---|---|
ConfigurationException |
createPartialConfigurationFromArgs
public IConfiguration createPartialConfigurationFromArgs (String[] arrayArgs, IKeyStoreClient keyStoreClient,allowedObjects, TradefedDelegator delegator)
創建僅包含一組選定對象的配置。
參數 | |
---|---|
arrayArgs | String :命令行參數 |
keyStoreClient | IKeyStoreClient :一個IKeyStoreClient ,用於獲取 args 中的敏感信息。 |
allowedObjects | |
delegator | TradefedDelegator |
退貨 | |
---|---|
IConfiguration | 加載的IConfiguration 。 |
投擲 | |
---|---|
ConfigurationException |
轉儲配置
public void dumpConfig (String configName, PrintStream out)
將配置內容轉儲到給定的ERROR(/PrintStream)
參數 | |
---|---|
configName | String : 配置名稱 |
out | PrintStream :將輸出轉儲到的ERROR(/PrintStream) |
獲取配置列表
publicgetConfigList (String subPath, boolean loadFromEnv)
getConfigList()
的變體 where 可以指定我們是否還想從環境中加載配置。
參數 | |
---|---|
subPath | String :要查找配置的子目錄的名稱。如果為 null,將具有與getConfigList() 相同的行為。 |
loadFromEnv | boolean :如果我們應該在環境變量中加載配置,則為真。 |
退貨 | |
---|---|
獲取配置列表
publicgetConfigList ()
返回在類路徑上的 JAR 中找到的所有配置的名稱列表。不嘗試加載任何配置,因此此列表中可能有無效配置。
退貨 | |
---|---|
獲取實例
public static IConfigurationFactory getInstance ()
獲取單例IConfigurationFactory
實例。
退貨 | |
---|---|
IConfigurationFactory |
loadAllConfigs
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) |
打印配置幫助
public void printHelpForConfig (String[] args, boolean importantOnly, PrintStream out)
打印命令行參數中指定的IConfiguration
的幫助輸出,
IConfiguration
對象,並輸出該IConfiguration
的幫助。請注意,所有其他“args”值都將被忽略(即幫助文本將描述從 XML 加載的Option
的當前值,並且不會反映命令行 args 設置的選項值。如果“args”未引用已知的IConfiguration
,將顯示通用printHelp(PrintStream)
幫助。參數 | |
---|---|
args | String :命令行參數 |
importantOnly | boolean :如果為true ,則打印一個僅列出重要細節的簡短幫助 |
out | PrintStream :將輸出轉儲到的ERROR(/PrintStream) |
受保護的方法
getBundledConfigStream
protected InputStream getBundledConfigStream (String name)
參數 | |
---|---|
name | String |
退貨 | |
---|---|
InputStream |
獲取配置前綴
protected String getConfigPrefix ()
返回類路徑上配置 xml 文件的路徑前綴
公開以便單元測試可以模擬。
退貨 | |
---|---|
String | 帶有尾隨 / 的ERROR(/String) 路徑 |
獲取配置流
protected BufferedInputStream getConfigStream (String name)
為給定的配置名稱加載一個 InputStream
參數 | |
---|---|
name | String : 要加載的配置名稱 |
退貨 | |
---|---|
BufferedInputStream | 讀取配置內容的ERROR(/BufferedInputStream) |
投擲 | |
---|---|
ConfigurationException | 如果找不到配置 |
獲取配置定義
protected ConfigurationDef getConfigurationDef (String name, boolean isGlobal,templateMap)
檢索給定名稱的ConfigurationDef
參數 | |
---|---|
name | String : 要加載的內置配置的名稱或要加載的配置文件的文件路徑 |
isGlobal | boolean |
templateMap |
退貨 | |
---|---|
ConfigurationDef | ConfigurationDef |
投擲 | |
---|---|
ConfigurationException | 如果加載配置時發生錯誤 |
獲取地圖配置
protectedgetMapConfig ()
暴露測試。返回地圖的副本。
退貨 | |
---|---|
isDirectConfiguration
protected boolean isDirectConfiguration (String configName)
參數 | |
---|---|
configName | String |
退貨 | |
---|---|
boolean |
重新排序參數
protected String[] reorderArgs (String[] args)
重新排序 args,以便 template:map args 全部移到前面。
參數 | |
---|---|
args | String |
退貨 | |
---|---|
String[] |
解析遠程文件
protected IRemoteFileResolver.ResolvedFile resolveRemoteFile (URI configURI, URI destDir)
參數 | |
---|---|
configURI | URI |
destDir | URI |
退貨 | |
---|---|
IRemoteFileResolver.ResolvedFile |
投擲 | |
---|---|
BuildRetrievalError |
這個頁面中的內容和程式碼範例均受《內容授權》中的授權所規範。Java 與 OpenJDK 是 Oracle 和/或其關係企業的商標或註冊商標。
上次更新時間:2023-03-30 (世界標準時間)。