CommandScheduler

public class CommandScheduler
extends Object implements ICommandScheduler

java.lang.Object
com.android.tradefed.command.CommandScheduler


सभी उपलब्ध डिवाइसों पर ट्रेडफ़ेडरेशन कमांड चलाने के लिए शेड्यूलर.

लागू किए जाने की कुल संख्या के आधार पर, कमांड को प्राथमिकता देने की कोशिश की जाएगी समय. उदाहरण के लिए, कभी-कभी या तेज़ी से चलने वाले निर्देशों को ज़्यादा समय तक चलने वाले निर्देशों के मुकाबले प्राथमिकता दी जाएगी.

शटडाउन होने तक बैकग्राउंड में हमेशा काम करता है.

खास जानकारी

नेस्ट की गई क्लास

enum CommandScheduler.HostState

होस्ट की अलग-अलग स्थिति की संख्या

सार्वजनिक कंस्ट्रक्टर

CommandScheduler()

यह CommandScheduler बनाता है.

सार्वजनिक तरीके

boolean addCommand(String[] args)

शेड्यूलर में कोई निर्देश जोड़ता है.

void addCommandFile(String cmdFilePath, extraArgs)

दी गई फ़ाइल के सभी निर्देशों को शेड्यूलर में जोड़ता है

void await()

शेड्यूलर के चलने की इंतज़ार करता है, जिसमें पुराने TF के हैंडओवर के पूरा होने की इंतज़ार करना भी शामिल है अगर लागू हो.

static TradefedDelegator checkDelegation(String[] args)

कमांड लाइन के आधार पर एक डेलिगेटर बनाएं, ताकि यह देखा जा सके कि क्या हमें रन मैनेज करने की ज़रूरत है.

void completeHandover()

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

static createReleaseMap(IInvocationContext context, Throwable e)

डिवाइसों की स्थिति का एक मैप बनाएं, ताकि उन्हें सही तरीके से रिलीज़ किया जा सके.

ISandbox createSandbox()

एक ISandbox बनाएं, जिसका इस्तेमाल शुरू करने वाले को चलाने के लिए किया जाएगा.

void displayCommandQueue(PrintWriter printWriter)

निर्देश लागू करने की सूची की स्थिति के बारे में ज़्यादा जानकारी वाला डीबग फ़ंक्शन.

void displayCommandsInfo(PrintWriter printWriter, String regex)

मौजूदा निर्देशों की सूची आउटपुट करें.

void displayInvocationsInfo(PrintWriter printWriter)

इस्तेमाल किए जाने वाले मौजूदा नामों की सूची दिखाता है.

void dumpCommandsXml(PrintWriter printWriter, String regex)

कमांड के लिए, बड़ी की गई एक्सएमएल फ़ाइल को सभी सभी मौजूदा निर्देशों के लिए, Option वैल्यू दी गई हैं.

void execCommand(ICommandScheduler.IScheduledInvocationListener listener, ITestDevice device, String[] args)

पहले से असाइन किए गए डिवाइस पर सीधे तौर पर निर्देश लागू करें.

void execCommand(IInvocationContext context, ICommandScheduler.IScheduledInvocationListener listener, String[] args)

डिवाइस को सीधे तौर पर असाइन करता है और निर्देश को कमांड क्यू में जोड़े बिना लागू करता है पहले से मौजूद IInvocationContext का इस्तेमाल करके.

void execCommand(ICommandScheduler.IScheduledInvocationListener listener, String[] args)

डिवाइस को सीधे असाइन करता है और कमांड को कमांड क्यू में जोड़े बिना ही एक्ज़ीक्यूट करता है.

CommandFileWatcher getCommandFileWatcher()

इस शेड्यूलर के लिए सही CommandFileWatcher चुनें

int getExecutingCommandCount()

लागू किए जाने के स्टेटस में कमांड की संख्या दिखाता है.

CommandScheduler.HostState getHostState()
String getInvocationInfo(int invocationId)

इनवोकेशन आईडी को बताने वाले इनवोकेशन बू पर जानकारी दें.

CommandRunner.ExitCode getLastInvocationExitCode()

पिछली बार शुरू किए गए प्रॉम्प्ट का गड़बड़ी का कोड दिखाएं.

Throwable getLastInvocationThrowable()

पिछली बार शुरू हुए सवाल से Throwable को वापस भेजें.

int getReadyCommandCount()

सूची में तैयार स्थिति में कमांड की संख्या दिखाता है.

long getShutdownTimeout()
void handoverInitiationComplete()

कमांड शेड्यूलर को यह सूचना देता है कि इस्तेमाल किए जा रहे डिवाइसों और कमांड का शुरुआती हैंडओवर लेन-देन किया जा रहा है पूरा हो जाता है और शेड्यूल करने की कार्रवाई शुरू हो सकती है.

boolean handoverShutdown(int handoverPort)

shutdown() शुरू करता है और इसी होस्ट पर ट्रेड की गई किसी दूसरी प्रोसेस को सौंप देता है.

void notifyFileChanged(File cmdFile, extraArgs)
void removeAllCommands()

शेड्यूलर से सभी निर्देश हटाएं

void run()

इस थ्रेड को चलाने का मुख्य ब्लॉक.

void setClearcutClient(ClearcutClient client)

हार्नेस डेटा की रिपोर्ट करने के लिए क्लाइंट सेट करें

boolean shouldShutdownOnCmdfileError()

अगर हमें कमांड से जुड़ी गड़बड़ियों की वजह से शेड्यूलर को बंद करना पड़े, तो 'सही' दिखाता है

void shutdown()

आदेश शेड्यूलर को ग्रेसफ़ुली शटडाउन करने का प्रयास करें.

void shutdownHard(boolean killAdb)

कमांड शेड्यूलर को ज़बरदस्ती बंद करने की कोशिश करना.

void shutdownHard()

कमांड शेड्यूलर को ज़बरदस्ती बंद करने की कोशिश करना.

void shutdownOnEmpty()

यह shutdown() के जैसा है, लेकिन इसके बजाय सभी निर्देशों के लागू होने का इंतज़ार करेगा पर क्लिक करें.

void start()

शेड्यूलर को शुरू करता है. इसमें लॉगिंग, DeviceManager शुरू वगैरह को सेट अप करना शामिल है

boolean stopInvocation(ITestInvocation invocation)

चल रहे न्योते को बंद करें.

boolean stopInvocation(int invocationId, String cause)

किसी चल रहे न्योते का आईडी बताकर उसे बंद करें.

सुरक्षित तरीके

void cleanUp()

लॉग बंद करता है और हमारे बाहर निकलने से पहले कोई भी अन्य ज़रूरी क्लीनअप करता है.

IConfiguration createConfiguration(String[] args)
IInvocationContext createInvocationContext()
IConfigurationFactory getConfigFactory()

IConfigurationFactory का रेफ़रंस पाने का फ़ैक्ट्री तरीका

IDeviceManager getDeviceManager()

IDeviceManager का रेफ़रंस पाने का फ़ैक्ट्री तरीका

TradefedFeatureServer getFeatureServer()
IHostOptions getHostOptions()
IKeyStoreClient getKeyStoreClient()

IKeyStoreFactory का इस्तेमाल करके IKeyStoreClient फ़ेच करता है IGlobalConfiguration में बताया गया या अगर कोई तय नहीं किया गया है, तो शून्य या शून्य में.

void initLogging()

ddmlib लॉग को शुरू करता है.

boolean isShutdown()
boolean isShuttingDown()
void processReadyCommands(IDeviceManager manager)
void waitForAllInvocationThreads()

न्योता भेजने वाले सभी थ्रेड के पूरा होने तक इंतज़ार करें.

सार्वजनिक कंस्ट्रक्टर

CommandScheduler

public CommandScheduler ()

यह CommandScheduler बनाता है.

ध्यान दें: इस्तेमाल शुरू करने से पहले कॉल किया जाना ज़रूरी है.

सार्वजनिक तरीके

addCommand

public boolean addCommand (String[] args)

शेड्यूलर में कोई निर्देश जोड़ता है.

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

अगर "--help" है, तो तर्क के लिए सहायता टेक्स्ट दिया गया है कॉन्फ़िगरेशन stdout पर भेजा जाएगा. ऐसा न करने पर, कॉन्फ़िगरेशन को सूची में जोड़ दिया जाएगा दौड़ना.

पैरामीटर
args String: कॉन्फ़िगरेशन के आर्ग्युमेंट.

रिटर्न
boolean अगर निर्देश सफलतापूर्वक जोड़ा गया था, तो true

थ्रो
ConfigurationException

addCommandफ़ाइल

public void addCommandFile (String cmdFilePath, 
                 extraArgs)

दी गई फ़ाइल के सभी निर्देशों को शेड्यूलर में जोड़ता है

पैरामीटर
cmdFilePath String: comand फ़ाइल का फ़ाइल सिस्टम पाथ

extraArgs : पार्स किए गए हर निर्देश में जोड़ने के लिए String का ERROR(/List) आर्ग्युमेंट फ़ाइल से. इसे खाली छोड़ा जा सकता है, लेकिन यह शून्य नहीं होना चाहिए.

थ्रो
ConfigurationException

इंतज़ार करो

public void await ()

शेड्यूलर के चलने की इंतज़ार करता है, जिसमें पुराने TF के हैंडओवर के पूरा होने की इंतज़ार करना भी शामिल है अगर लागू हो.

सही का पता लगाना

public static TradefedDelegator checkDelegation (String[] args)

कमांड लाइन के आधार पर एक डेलिगेटर बनाएं, ताकि यह देखा जा सके कि क्या हमें रन मैनेज करने की ज़रूरत है.

पैरामीटर
args String

रिटर्न
TradefedDelegator

थ्रो
ConfigurationException

पूराहैंडओवर

public void completeHandover ()

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

रिलीज़ मैप बनाएं

public static  createReleaseMap (IInvocationContext context, 
                Throwable e)

डिवाइसों की स्थिति का एक मैप बनाएं, ताकि उन्हें सही तरीके से रिलीज़ किया जा सके.

पैरामीटर
context IInvocationContext

e Throwable

रिटर्न

क्रिएट सैंडबॉक्स

public ISandbox createSandbox ()

एक ISandbox बनाएं, जिसका इस्तेमाल शुरू करने वाले को चलाने के लिए किया जाएगा.

रिटर्न
ISandbox

DisplayCommandसूची

public void displayCommandQueue (PrintWriter printWriter)

निर्देश लागू करने की सूची की स्थिति के बारे में ज़्यादा जानकारी वाला डीबग फ़ंक्शन.

DisplayCommandsInfo

public void displayCommandsInfo (PrintWriter printWriter, 
                String regex)

मौजूदा निर्देशों की सूची आउटपुट करें.

पैरामीटर
printWriter PrintWriter: आउटपुट करने के लिए ERROR(/PrintWriter).

regex String: वह रेगुलर एक्सप्रेशन जिससे कमांड का मिलान होने के लिए प्रिंट किया गया. अगर इस एट्रिब्यूट की वैल्यू नहीं दी गई है, तो सभी निर्देश प्रिंट कर दिए जाएंगे.

DisplayInvocationsInfo

public void displayInvocationsInfo (PrintWriter printWriter)

इस्तेमाल किए जाने वाले मौजूदा नामों की सूची दिखाता है.

पैरामीटर
printWriter PrintWriter: आउटपुट करने के लिए ERROR(/PrintWriter).

dumpCommandsXml

public void dumpCommandsXml (PrintWriter printWriter, 
                String regex)

कमांड के लिए, बड़ी की गई एक्सएमएल फ़ाइल को सभी सभी मौजूदा निर्देशों के लिए, Option वैल्यू दी गई हैं.

पैरामीटर
printWriter PrintWriter: स्टेटस दिखाने के लिए ERROR(/PrintWriter).

regex String: वह रेगुलर एक्सप्रेशन जिससे निर्देशों का मिलान होना चाहिए xml फ़ाइल को डंप किया जाएगा. अगर इस फ़ील्ड में कोई वैल्यू नहीं है, तो सभी निर्देश छोड़ दिए जाएंगे.

एक्ज़ीक्यूट करें

public void execCommand (ICommandScheduler.IScheduledInvocationListener listener, 
                ITestDevice device, 
                String[] args)

पहले से असाइन किए गए डिवाइस पर सीधे तौर पर निर्देश लागू करें.

पैरामीटर
listener ICommandScheduler.IScheduledInvocationListener: सूचित किया जाने वाला ICommandScheduler.IScheduledInvocationListener

device ITestDevice: इस्तेमाल करने के लिए ITestDevice

args String: कमांड आर्ग्युमेंट

थ्रो
ConfigurationException

एक्ज़ीक्यूट करें

public void execCommand (IInvocationContext context, 
                ICommandScheduler.IScheduledInvocationListener listener, 
                String[] args)

डिवाइस को सीधे तौर पर असाइन करता है और निर्देश को कमांड क्यू में जोड़े बिना लागू करता है पहले से मौजूद IInvocationContext का इस्तेमाल करके.

पैरामीटर
context IInvocationContext: पहले से मौजूद IInvocationContext.

listener ICommandScheduler.IScheduledInvocationListener: सूचित किया जाने वाला ICommandScheduler.IScheduledInvocationListener

args String: कमांड आर्ग्युमेंट

थ्रो
ConfigurationException
NoDeviceException

एक्ज़ीक्यूट करें

public void execCommand (ICommandScheduler.IScheduledInvocationListener listener, 
                String[] args)

डिवाइस को सीधे असाइन करता है और कमांड को कमांड क्यू में जोड़े बिना ही एक्ज़ीक्यूट करता है.

पैरामीटर
listener ICommandScheduler.IScheduledInvocationListener: सूचित किया जाने वाला ICommandScheduler.IScheduledInvocationListener

args String: कमांड आर्ग्युमेंट

थ्रो
ConfigurationException
NoDeviceException

getCommandFileWatcher

public CommandFileWatcher getCommandFileWatcher ()

इस शेड्यूलर के लिए सही CommandFileWatcher चुनें

रिटर्न
CommandFileWatcher

getexeutingCommandCount

public int getExecutingCommandCount ()

लागू किए जाने के स्टेटस में कमांड की संख्या दिखाता है.

रिटर्न
int

getHostState

public CommandScheduler.HostState getHostState ()

रिटर्न
CommandScheduler.HostState

CANNOT TRANSLATE

public String getInvocationInfo (int invocationId)

इनवोकेशन आईडी को बताने वाले इनवोकेशन बू पर जानकारी दें.

पैरामीटर
invocationId int: शुरू करने के अनुरोध का ट्रैकिंग आईडी.

रिटर्न
String एक String, जिसमें शुरू करने की जानकारी दी गई हो.

getLastInvocationExitCode

public CommandRunner.ExitCode getLastInvocationExitCode ()

पिछली बार शुरू किए गए प्रॉम्प्ट का गड़बड़ी का कोड दिखाएं. अगर अभी तक कोई कॉल शुरू नहीं किया गया है, तो रिटर्न 0 (कोई गड़बड़ी नहीं) होगा.

रिटर्न
CommandRunner.ExitCode

getLastInvocationThrowable

public Throwable getLastInvocationThrowable ()

पिछली बार शुरू हुए सवाल से Throwable को वापस भेजें. अगर थ्रॉ करने लायक कोई डेटा उपलब्ध नहीं है, तो वैल्यू को शून्य कर दें.

रिटर्न
Throwable

getReadyCommandCount

public int getReadyCommandCount ()

सूची में तैयार स्थिति में कमांड की संख्या दिखाता है.

रिटर्न
int

गेट शटडाउन टाइम आउट

public long getShutdownTimeout ()

रिटर्न
long

हैंडओवरइनीशिएशन कंप्लीट

public void handoverInitiationComplete ()

कमांड शेड्यूलर को यह सूचना देता है कि इस्तेमाल किए जा रहे डिवाइसों और कमांड का शुरुआती हैंडओवर लेन-देन किया जा रहा है पूरा हो जाता है और शेड्यूल करने की कार्रवाई शुरू हो सकती है.

हैंडओवरशटडाउन

public boolean handoverShutdown (int handoverPort)

shutdown() शुरू करता है और इसी होस्ट पर ट्रेड की गई किसी दूसरी प्रोसेस को सौंप देता है.

शेड्यूलर, रिमोट ट्रेडेड प्रोसेस की जानकारी देगा. ऐसा उन डिवाइसों के पोर्ट के आधार पर किया जाएगा जो बिना शुल्क के उपलब्ध हैं जैसे-जैसे वे उपलब्ध होते हैं.

पैरामीटर
handoverPort int

रिटर्न
boolean true, अगर हैंडओवर की शुरुआत सफल रही, false अन्य मामलों में

सूचना देने वाली फ़ाइल में बदलाव किया गया

public void notifyFileChanged (File cmdFile, 
                 extraArgs)

पैरामीटर
cmdFile File

extraArgs

सभी कमांड हटाएँ

public void removeAllCommands ()

शेड्यूलर से सभी निर्देश हटाएं

रन

public void run ()

इस थ्रेड को चलाने का मुख्य ब्लॉक.

सेटक्लियरकटक्लाइंट

public void setClearcutClient (ClearcutClient client)

हार्नेस डेटा की रिपोर्ट करने के लिए क्लाइंट सेट करें

पैरामीटर
client ClearcutClient

चाहिए शटडाउनऑन CmdfileError

public boolean shouldShutdownOnCmdfileError ()

अगर हमें कमांड से जुड़ी गड़बड़ियों की वजह से शेड्यूलर को बंद करना पड़े, तो 'सही' दिखाता है

रिटर्न
boolean

शटडाउन

public void shutdown ()

आदेश शेड्यूलर को ग्रेसफ़ुली शटडाउन करने का प्रयास करें.

जांच किए जाने वाले कमांड को हटाता है. साथ ही, उन निर्देशों को हटाता है जो शुरू किए जा रहे हों CANNOT TRANSLATE

शटडाउन को कॉल करने के बाद, शेड्यूलर का मेन लूप सभी कॉल को प्रोसेस किए जाने तक इंतज़ार करेगा पर क्लिक करें.

शटडाउन हार्ड

public void shutdownHard (boolean killAdb)

कमांड शेड्यूलर को ज़बरदस्ती बंद करने की कोशिश करना.

shutdown() के समान, लेकिन यह वैकल्पिक रूप से adb कनेक्शन को भी बंद कर देगा 'प्रेरणा' करने की कोशिश शुरू करने की प्रक्रिया को तेज़ी से पूरा करना.

पैरामीटर
killAdb boolean

शटडाउन हार्ड

public void shutdownHard ()

कमांड शेड्यूलर को ज़बरदस्ती बंद करने की कोशिश करना. शटडाउन हार्ड(सही) की तरह.

शटडाउनचालू

public void shutdownOnEmpty ()

यह shutdown() के जैसा है, लेकिन इसके बजाय सभी निर्देशों के लागू होने का इंतज़ार करेगा पर क्लिक करें.

ध्यान दें कि अगर कोई निर्देश लूप मोड में है, तो शेड्यूलर कभी भी बंद नहीं होगा.

शुरू करें

public void start ()

शेड्यूलर को शुरू करता है. इसमें लॉगिंग, DeviceManager शुरू वगैरह को सेट अप करना शामिल है

शुरू करना बंद करो

public boolean stopInvocation (ITestInvocation invocation)

चल रहे न्योते को बंद करें.

पैरामीटर
invocation ITestInvocation

रिटर्न
boolean सही है अगर शुरू करना रोका गया था, तो गलत है, नहीं तो गलत

शुरू करना बंद करो

public boolean stopInvocation (int invocationId, 
                String cause)

किसी चल रहे न्योते का आईडी बताकर उसे बंद करें.

पैरामीटर
invocationId int: शुरू करने के अनुरोध का ट्रैकिंग आईडी.

cause String: शुरू करने की प्रक्रिया को रोकने की वजह.

रिटर्न
boolean सही है अगर शुरू करना रोका गया था, तो गलत है, नहीं तो गलत

सुरक्षित तरीके

क्लीनअप करें

protected void cleanUp ()

लॉग बंद करता है और हमारे बाहर निकलने से पहले कोई भी अन्य ज़रूरी क्लीनअप करता है.

इसलिए दिखाया गया है, ताकि यूनिट टेस्ट की नकल की जा सके.

बनाएंकॉन्फ़िगरेशन

protected IConfiguration createConfiguration (String[] args)

पैरामीटर
args String

रिटर्न
IConfiguration

थ्रो
ConfigurationException

बनाने के लिए प्रॉम्प्ट

protected IInvocationContext createInvocationContext ()

रिटर्न
IInvocationContext

गेट कॉन्फ़िगरेशनफ़ैक्ट्री

protected IConfigurationFactory getConfigFactory ()

IConfigurationFactory का रेफ़रंस पाने का फ़ैक्ट्री तरीका

रिटर्न
IConfigurationFactory IConfigurationFactory का इस्तेमाल करना है

'डिवाइस मैनेजर' पाएं

protected IDeviceManager getDeviceManager ()

IDeviceManager का रेफ़रंस पाने का फ़ैक्ट्री तरीका

रिटर्न
IDeviceManager IDeviceManager का इस्तेमाल करना है

getFeatureServer

protected TradefedFeatureServer getFeatureServer ()

रिटर्न
TradefedFeatureServer

getHostOptions

protected IHostOptions getHostOptions ()

रिटर्न
IHostOptions

getKeyStoreClient

protected IKeyStoreClient getKeyStoreClient ()

IKeyStoreFactory का इस्तेमाल करके IKeyStoreClient फ़ेच करता है IGlobalConfiguration में बताया गया या अगर कोई तय नहीं किया गया है, तो शून्य या शून्य में.

रिटर्न
IKeyStoreClient IKeyStoreClient

इनिटलॉगिंग

protected void initLogging ()

ddmlib लॉग को शुरू करता है.

इसलिए दिखाया गया है, ताकि यूनिट टेस्ट की नकल की जा सके.

बंद है

protected boolean isShutdown ()

रिटर्न
boolean

बंद है

protected boolean isShuttingDown ()

रिटर्न
boolean

प्रोसेस के लिए तैयार निर्देश

protected void processReadyCommands (IDeviceManager manager)

पैरामीटर
manager IDeviceManager

preventForAllInvocationThreads

protected void waitForAllInvocationThreads ()

न्योता भेजने वाले सभी थ्रेड के पूरा होने तक इंतज़ार करें.