配置工廠
public class ConfigurationFactory
extends Object
implements IConfigurationFactory
java.lang.Object | |
↳ | com.android.tradefed.config.ConfigurationFactory |
用於創建IConfiguration
工廠。
概括
嵌套類 | |
---|---|
class | ConfigurationFactory.ConfigLoader IConfigDefLoader 的實現,追蹤一個根配置中包含的配置,並在循環包含時引發異常。 |
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) 載入給定配置名稱的輸入流 |
ConfigurationDef | getConfigurationDef (String name, boolean isGlobal, templateMap) getConfigurationDef (String name, boolean isGlobal, templateMap) 檢索給定名稱的 |
getMapConfig () 暴露進行測試。 | |
boolean | isDirectConfiguration (String configName) |
String[] | reorderArgs (String[] args) 重新排序參數,使 template:map 參數全部移到前面。 |
IRemoteFileResolver.ResolvedFile | resolveRemoteFile (URI configURI, URI destDir) |
受保護的構造函數
配置工廠
protected ConfigurationFactory ()
公共方法
清除地圖配置
public void clearMapConfig ()
在某些特殊情況下,我們需要清除地圖。
從參數建立配置
public IConfiguration createConfigurationFromArgs (String[] arrayArgs,unconsumedArgs)
從命令列參數建立IConfiguration
。
參數 | |
---|---|
arrayArgs | String : 命令列參數 |
unconsumedArgs | null ,那麼如果仍有任何未處理的參數,實作將會拋出ConfigurationException 。 |
退貨 | |
---|---|
IConfiguration | 載入的IConfiguration 。委託物件Option 欄位已填入 args 中的值。 |
投擲 | |
---|---|
ConfigurationException |
從參數建立配置
public IConfiguration createConfigurationFromArgs (String[] arrayArgs,unconsumedArgs, IKeyStoreClient keyStoreClient)
使用金鑰儲存從命令列參數建立IConfiguration
。
參數 | |
---|---|
arrayArgs | String : 命令列參數 |
unconsumedArgs | null ,那麼如果仍有任何未處理的參數,實作將會拋出ConfigurationException 。 |
keyStoreClient | IKeyStoreClient :一個IKeyStoreClient ,用於取得參數中的敏感資訊。 |
退貨 | |
---|---|
IConfiguration | 載入的IConfiguration 。委託物件Option 欄位已填入 args 中的值。 |
投擲 | |
---|---|
ConfigurationException |
從參數建立配置
public IConfiguration createConfigurationFromArgs (String[] arrayArgs)
使用第二個參數為null
來呼叫ERROR(/#createConfigurationFromArgs(String[],List))
便利方法。因此,如果還有任何未使用的參數,它將拋出ConfigurationException
。
參數 | |
---|---|
arrayArgs | String |
退貨 | |
---|---|
IConfiguration |
投擲 | |
---|---|
ConfigurationException |
從參數建立全域配置
public IGlobalConfiguration createGlobalConfigurationFromArgs (String[] arrayArgs,remainingArgs)
從命令列參數建立IGlobalConfiguration
。
參數 | |
---|---|
arrayArgs | String : 命令列參數 |
remainingArgs |
退貨 | |
---|---|
IGlobalConfiguration | 載入的IGlobalConfiguration 。委託物件Option 欄位已填入 args 中的值。 |
投擲 | |
---|---|
ConfigurationException |
從參數建立部分配置
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) |
取得配置列表
publicgetConfigList (String subPath, boolean loadFromEnv)
getConfigList()
的變體可以指定我們是否也想從環境中載入配置。
參數 | |
---|---|
subPath | String :要尋找配置的子目錄的名稱。如果為 null,將具有與getConfigList() 相同的行為。 |
loadFromEnv | boolean :如果我們應該在環境變數中載入配置,則為 True。 |
退貨 | |
---|---|
取得配置列表
publicgetConfigList ()
傳回在類別路徑上的 JAR 中找到的所有配置的名稱清單。不嘗試載入任何配置,因此此清單中可能有非工作配置。
退貨 | |
---|---|
取得實例
public static IConfigurationFactory getInstance ()
取得單例IConfigurationFactory
實例。
退貨 | |
---|---|
IConfigurationFactory |
載入所有配置
public void loadAllConfigs (boolean discardExceptions)
載入類別路徑和測試案例目錄中找到的所有配置。
參數 | |
---|---|
discardExceptions | boolean :如果應忽略任何 ConfigurationException,則為 true。 |
投擲 | |
---|---|
| com.android.tradefed.config.ConfigurationException |
ConfigurationException |
載入並列印所有配置
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' 未引用已知的IConfiguration
,則會顯示通用printHelp(PrintStream)
幫助。參數 | |
---|---|
args | String : 命令列參數 |
importantOnly | boolean :如果true ,則列印簡短的幫助,僅列出重要的詳細信息 |
out | PrintStream :將輸出轉儲到的ERROR(/PrintStream) |
受保護的方法
取得BundledConfigStream
protected InputStream getBundledConfigStream (String name)
參數 | |
---|---|
name | String |
退貨 | |
---|---|
InputStream |
取得配置前綴
protected String getConfigPrefix ()
在返回類別路徑上配置 xml 檔案的路徑前綴
暴露出來以便單元測試可以模擬。
退貨 | |
---|---|
String | 尾隨 / 的String 路徑 |
取得配置流程
protected BufferedInputStream getConfigStream (String name)
載入給定配置名稱的輸入流
參數 | |
---|---|
name | String : 要載入的設定名稱 |
退貨 | |
---|---|
BufferedInputStream | 讀取配置內容時ERROR(/BufferedInputStream) |
投擲 | |
---|---|
ConfigurationException | 如果找不到配置 |
取得配置定義
protected ConfigurationDef getConfigurationDef (String name, boolean isGlobal,templateMap)
檢索給定名稱的ConfigurationDef
參數 | |
---|---|
name | String :要載入的內建設定的名稱或要載入的設定檔的檔案路徑 |
isGlobal | boolean |
templateMap |
退貨 | |
---|---|
ConfigurationDef | ConfigurationDef |
投擲 | |
---|---|
ConfigurationException | 如果載入配置時發生錯誤 |
取得地圖配置
protectedgetMapConfig ()
暴露進行測試。返回地圖的副本。
退貨 | |
---|---|
是直接配置
protected boolean isDirectConfiguration (String configName)
參數 | |
---|---|
configName | String |
退貨 | |
---|---|
boolean |
重新排序參數
protected String[] reorderArgs (String[] args)
重新排序參數,使 template:map 參數全部移到前面。
參數 | |
---|---|
args | String |
退貨 | |
---|---|
String[] |
解析遠端文件
protected IRemoteFileResolver.ResolvedFile resolveRemoteFile (URI configURI, URI destDir)
參數 | |
---|---|
configURI | URI |
destDir | URI |
退貨 | |
---|---|
IRemoteFileResolver.ResolvedFile |
投擲 | |
---|---|
BuildRetrievalError |
這個頁面中的內容和程式碼範例均受《內容授權》中的授權所規範。Java 與 OpenJDK 是 Oracle 和/或其關係企業的商標或註冊商標。
上次更新時間:2023-12-01 (世界標準時間)。