ConfigurationFactory

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, List<String> unconsumedArgs, IKeyStoreClient keyStoreClient)

की स्टोर की मदद से, कमांड लाइन आर्ग्युमेंट से IConfiguration बनाएं.

IConfiguration createConfigurationFromArgs(String[] arrayArgs, List<String> unconsumedArgs)

कमांड लाइन आर्ग्युमेंट से IConfiguration बनाएं.

IConfiguration createConfigurationFromArgs(String[] arrayArgs)

यह एक आसान तरीका है, जो createConfigurationFromArgs(String[],List) को null सेकंड आर्ग्युमेंट के साथ कॉल करता है.

IGlobalConfiguration createGlobalConfigurationFromArgs(String[] arrayArgs, List<String> remainingArgs)

कमांड लाइन आर्ग्युमेंट से IGlobalConfiguration बनाएं.

IConfiguration createPartialConfigurationFromArgs(String[] arrayArgs, IKeyStoreClient keyStoreClient, Set<String> allowedObjects, TradefedDelegator delegator)

ऐसा कॉन्फ़िगरेशन बनाएं जिसमें सिर्फ़ चुने गए ऑब्जेक्ट का सेट शामिल हो.

void dumpConfig(String configName, PrintStream out)

कॉन्फ़िगरेशन के कॉन्टेंट को दिए गए PrintStream में डंप करता है

List<String> getConfigList(String subPath, boolean loadFromEnv)

getConfigList() का वैरिएशन. इसमें यह तय किया जा सकता है कि हमें एनवायरमेंट से कॉन्फ़िगरेशन लोड करना है या नहीं.

List<String> getConfigList()

क्लाथपाथ पर मौजूद JAR में मिले सभी कॉन्फ़िगरेशन के नामों की सूची दिखाता है.

static IConfigurationFactory getInstance()

सिंगलटन IConfigurationFactory इंस्टेंस पाएं.

void loadAllConfigs(boolean discardExceptions)

यह क्लासपाथ और टेस्ट केस डायरेक्ट्री में मौजूद सभी कॉन्फ़िगरेशन लोड करता है.

void loadAndPrintAllConfigs()

यह एक यूटिलिटी मेथड है. इससे यह पता चलता है कि सभी कॉन्फ़िगरेशन लोड किए जा सकते हैं, पार्स किए जा सकते हैं, और सभी विकल्प वैल्यू सेट की जा सकती हैं.

void printHelp(PrintStream out)

इस फ़ैक्ट्री के लिए, सहायता आउटपुट प्रिंट करता है.

void printHelpForConfig(String[] args, boolean importantOnly, PrintStream out)

कमांड लाइन आर्ग्युमेंट में दिए गए IConfiguration के लिए, मदद से जुड़ा आउटपुट प्रिंट करता है,

अगर 'args' किसी जाने-पहचाने कॉन्फ़िगरेशन को दिखाता है, तो एक्सएमएल से एक IConfiguration ऑब्जेक्ट बनाया जाएगा. साथ ही, उस IConfiguration के लिए सहायता आउटपुट की जाएगी.

प्रोटेक्टेड मेथड

InputStream getBundledConfigStream(String name)
String getConfigPrefix()

क्लाथपाथ पर मौजूद कॉन्फ़िगरेशन वाली XML फ़ाइलों का पाथ प्रीफ़िक्स दिखाता है

इसे इसलिए दिखाया जाता है, ताकि यूनिट टेस्ट मॉक कर सकें.

BufferedInputStream getConfigStream(String name)

कॉन्फ़िगरेशन के दिए गए नाम के लिए InputStream लोड करता है

ConfigurationDef getConfigurationDef(String name, boolean isGlobal, Map<String, String> templateMap)

दिए गए नाम के लिए ConfigurationDef वापस पाएं

Map<ConfigurationFactory.ConfigId, ConfigurationDef> getMapConfig()

टेस्टिंग के लिए उपलब्ध है.

boolean isDirectConfiguration(String configName)
String[] reorderArgs(String[] args)

आर्ग्युमेंट का क्रम बदलें, ताकि template:map आर्ग्युमेंट सबसे आगे आ जाएं.

IRemoteFileResolver.ResolvedFile resolveRemoteFile(URI configURI, URI destDir)

प्रोटेक्टेड कंस्ट्रक्टर

ConfigurationFactory

protected ConfigurationFactory ()

पब्लिक मेथड

clearMapConfig

public void clearMapConfig ()

कुछ मामलों में, हमें मैप को मिटाना पड़ता है.

createConfigurationFromArgs

public IConfiguration createConfigurationFromArgs (String[] arrayArgs, 
                List<String> unconsumedArgs, 
                IKeyStoreClient keyStoreClient)

की स्टोर की मदद से, कमांड लाइन आर्ग्युमेंट से IConfiguration बनाएं.

फ़ॉर्मैट "CONFIG [options]" होना चाहिए. इसमें CONFIG, बिल्ट-इन कॉन्फ़िगरेशन का नाम या कॉन्फ़िगरेशन वाली एक्सएमएल फ़ाइल का पाथ होता है.

पैरामीटर
arrayArgs String: कमांड लाइन आर्ग्युमेंट

unconsumedArgs List: एक ऐसी सूची जिसमें उन आर्ग्युमेंट को शामिल किया जाएगा जिनका इस्तेमाल, तय किए गए कॉन्फ़िगरेशन से जुड़े ऑब्जेक्ट ने नहीं किया है. अगर यह null है, तो लागू करने के दौरान ConfigurationException दिखेगा. ऐसा तब होगा, जब कोई भी बिना प्रोसेस किया गया आर्ग्युमेंट बचा हो.

keyStoreClient IKeyStoreClient: यह एक IKeyStoreClient है, जिसका इस्तेमाल args में संवेदनशील जानकारी पाने के लिए किया जाता है.

रिटर्न
IConfiguration लोड किए गए IConfiguration. डेलिगेट ऑब्जेक्ट Option फ़ील्ड में, args में मौजूद वैल्यू अपने-आप भर गई हैं.

थ्रो
ConfigurationException

createConfigurationFromArgs

public IConfiguration createConfigurationFromArgs (String[] arrayArgs, 
                List<String> unconsumedArgs)

कमांड लाइन आर्ग्युमेंट से IConfiguration बनाएं.

फ़ॉर्मैट "CONFIG [options]" होना चाहिए. इसमें CONFIG, बिल्ट-इन कॉन्फ़िगरेशन का नाम या कॉन्फ़िगरेशन वाली एक्सएमएल फ़ाइल का पाथ होता है.

पैरामीटर
arrayArgs String: कमांड लाइन आर्ग्युमेंट

unconsumedArgs List: यह एक ऐसी सूची होती है जिसमें उन आर्ग्युमेंट को शामिल किया जाता है जिनका इस्तेमाल, कॉन्फ़िगरेशन से जुड़े ऑब्जेक्ट ने नहीं किया है. अगर यह null है, तो लागू करने के दौरान ConfigurationException दिखेगा. ऐसा तब होगा, जब कोई भी बिना प्रोसेस किया गया आर्ग्युमेंट बचा हो.

रिटर्न
IConfiguration लोड किए गए IConfiguration. डेलिगेट ऑब्जेक्ट Option फ़ील्ड में, args में मौजूद वैल्यू अपने-आप भर गई हैं.

थ्रो
ConfigurationException

createConfigurationFromArgs

public IConfiguration createConfigurationFromArgs (String[] arrayArgs)

यह एक आसान तरीका है, जो createConfigurationFromArgs(String[],List) को null सेकंड आर्ग्युमेंट के साथ कॉल करता है. इसलिए, अगर कोई भी तर्क इस्तेमाल नहीं किया जाता है, तो यह ConfigurationException दिखाएगा.

पैरामीटर
arrayArgs String

रिटर्न
IConfiguration

थ्रो
ConfigurationException

createGlobalConfigurationFromArgs

public IGlobalConfiguration createGlobalConfigurationFromArgs (String[] arrayArgs, 
                List<String> remainingArgs)

कमांड लाइन आर्ग्युमेंट से IGlobalConfiguration बनाएं.

फ़ॉर्मैट "CONFIG [options]" होना चाहिए. इसमें CONFIG, बिल्ट-इन कॉन्फ़िगरेशन का नाम या कॉन्फ़िगरेशन वाली एक्सएमएल फ़ाइल का पाथ होता है.

पैरामीटर
arrayArgs String: कमांड लाइन आर्ग्युमेंट

remainingArgs List: एक ऐसी सूची जिसमें वे तर्क शामिल होंगे जिन्हें ग्लोबल तर्क के तौर पर प्रोसेस नहीं किया गया है

रिटर्न
IGlobalConfiguration लोड किए गए IGlobalConfiguration. डेलिगेट ऑब्जेक्ट Option फ़ील्ड में, args में मौजूद वैल्यू अपने-आप भर गई हैं.

थ्रो
ConfigurationException

createPartialConfigurationFromArgs

public IConfiguration createPartialConfigurationFromArgs (String[] arrayArgs, 
                IKeyStoreClient keyStoreClient, 
                Set<String> allowedObjects, 
                TradefedDelegator delegator)

ऐसा कॉन्फ़िगरेशन बनाएं जिसमें सिर्फ़ चुने गए ऑब्जेक्ट का सेट शामिल हो.

पैरामीटर
arrayArgs String: कमांड लाइन आर्ग्युमेंट

keyStoreClient IKeyStoreClient: यह एक IKeyStoreClient है, जिसका इस्तेमाल args में संवेदनशील जानकारी पाने के लिए किया जाता है.

allowedObjects Set: बनाए जा सकने वाले ऑब्जेक्ट का सेट

delegator TradefedDelegator

रिटर्न
IConfiguration लोड किया गया IConfiguration.

थ्रो
ConfigurationException

dumpConfig

public void dumpConfig (String configName, 
                PrintStream out)

कॉन्फ़िगरेशन के कॉन्टेंट को दिए गए PrintStream में डंप करता है

पैरामीटर
configName String: कॉन्फ़िगरेशन का नाम

out PrintStream: वह PrintStream जिसमें आउटपुट को डंप करना है

getConfigList

public List<String> getConfigList (String subPath, 
                boolean loadFromEnv)

getConfigList() का वैरिएशन. इसमें यह तय किया जा सकता है कि हमें एनवायरमेंट से कॉन्फ़िगरेशन लोड करना है या नहीं.

पैरामीटर
subPath String: कॉन्फ़िगरेशन के लिए, जिन सब-डायरेक्ट्री में देखना है उनके नाम. अगर यह वैल्यू शून्य है, तो इसका व्यवहार getConfigList() जैसा ही होगा.

loadFromEnv boolean: अगर हमें एनवायरमेंट वैरिएबल में कॉन्फ़िगरेशन लोड करना है, तो यह वैल्यू सही होती है.

रिटर्न
List<String>

getConfigList

public List<String> getConfigList ()

क्लाथपाथ पर मौजूद JAR में मिले सभी कॉन्फ़िगरेशन के नामों की सूची दिखाता है. यह किसी भी कॉन्फ़िगरेशन को लोड करने की कोशिश नहीं करता. इसलिए, इस सूची में ऐसे कॉन्फ़िगरेशन हो सकते हैं जो काम नहीं करते.

रिटर्न
List<String>

getInstance

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 अगर एक या उससे ज़्यादा कॉन्फ़िगरेशन लोड नहीं हो पाते हैं, तो

printHelp

public void printHelp (PrintStream out)

इस फ़ैक्ट्री के लिए, सहायता आउटपुट प्रिंट करता है.

यह सामान्य मदद की जानकारी प्रिंट करता है. साथ ही, उपलब्ध सभी कॉन्फ़िगरेशन की सूची दिखाता है.

पैरामीटर
out PrintStream: वह PrintStream जिसमें आउटपुट को डंप करना है

printHelpForConfig

public void printHelpForConfig (String[] args, 
                boolean importantOnly, 
                PrintStream out)

कमांड लाइन आर्ग्युमेंट में दिए गए IConfiguration के लिए, मदद से जुड़ा आउटपुट प्रिंट करता है,

अगर 'args' किसी जाने-पहचाने कॉन्फ़िगरेशन को दिखाता है, तो एक्सएमएल से एक IConfiguration ऑब्जेक्ट बनाया जाएगा. साथ ही, उस IConfiguration के लिए सहायता आउटपुट की जाएगी. ध्यान दें कि 'args' की अन्य सभी वैल्यू को अनदेखा कर दिया जाएगा. इसका मतलब है कि सहायता टेक्स्ट में, Options की मौजूदा वैल्यू के बारे में बताया जाएगा. ये वैल्यू, एक्सएमएल से लोड की गई हैं. साथ ही, इसमें कमांड लाइन आर्ग्युमेंट से सेट किए गए विकल्प की वैल्यू नहीं दिखेंगी.

अगर 'args' किसी जाने-पहचाने IConfiguration का रेफ़रंस नहीं देता है, तो सामान्य printHelp(PrintStream) सहायता दिखेगी.

पैरामीटर
args String: कमांड लाइन आर्ग्युमेंट

importantOnly boolean: अगर true है, तो मदद से जुड़ी जानकारी को छोटा करके प्रिंट करें. इसमें सिर्फ़ ज़रूरी जानकारी शामिल करें

out PrintStream: वह PrintStream जिसमें आउटपुट को डंप करना है

प्रोटेक्टेड मेथड

getBundledConfigStream

protected InputStream getBundledConfigStream (String name)

पैरामीटर
name String

रिटर्न
InputStream

getConfigPrefix

protected String getConfigPrefix ()

क्लाथपाथ पर मौजूद कॉन्फ़िगरेशन वाली XML फ़ाइलों का पाथ प्रीफ़िक्स दिखाता है

इसे इसलिए दिखाया जाता है, ताकि यूनिट टेस्ट मॉक कर सकें.

रिटर्न
String String पाथ के आखिर में /

getConfigStream

protected BufferedInputStream getConfigStream (String name)

कॉन्फ़िगरेशन के दिए गए नाम के लिए InputStream लोड करता है

पैरामीटर
name String: लोड किए जाने वाले कॉन्फ़िगरेशन का नाम

रिटर्न
BufferedInputStream कॉन्फ़िगरेशन के कॉन्टेंट को पढ़ने के लिए BufferedInputStream

थ्रो
ConfigurationException अगर कॉन्फ़िगरेशन नहीं मिला

getConfigurationDef

protected ConfigurationDef getConfigurationDef (String name, 
                boolean isGlobal, 
                Map<String, String> templateMap)

दिए गए नाम के लिए ConfigurationDef वापस पाएं

पैरामीटर
name String: लोड करने के लिए, पहले से मौजूद कॉन्फ़िगरेशन का नाम या कॉन्फ़िगरेशन फ़ाइल का पाथ

isGlobal boolean

templateMap Map

रिटर्न
ConfigurationDef ConfigurationDef

थ्रो
ConfigurationException अगर कॉन्फ़िगरेशन लोड करते समय कोई गड़बड़ी हुई है

getMapConfig

protected Map<ConfigurationFactory.ConfigId, ConfigurationDef> getMapConfig ()

टेस्टिंग के लिए उपलब्ध है. मैप की कॉपी दिखाता है.

रिटर्न
Map<ConfigurationFactory.ConfigId, ConfigurationDef>

isDirectConfiguration

protected boolean isDirectConfiguration (String configName)

पैरामीटर
configName String

रिटर्न
boolean

reorderArgs

protected String[] reorderArgs (String[] args)

आर्ग्युमेंट का क्रम बदलें, ताकि template:map आर्ग्युमेंट सबसे आगे आ जाएं.

पैरामीटर
args String

रिटर्न
String[]

resolveRemoteFile

protected IRemoteFileResolver.ResolvedFile resolveRemoteFile (URI configURI, 
                URI destDir)

पैरामीटर
configURI URI

destDir URI

रिटर्न
IRemoteFileResolver.ResolvedFile

थ्रो
BuildRetrievalError