CommandScheduler
public
class
CommandScheduler
extends Object
implements
ICommandScheduler
java.lang.Object | |
↳ | com.android.tradefed.command.CommandScheduler |
सभी उपलब्ध डिवाइसों पर ट्रेडफ़ेडरेशन कमांड चलाने के लिए शेड्यूलर.
लागू किए जाने की कुल संख्या के आधार पर, कमांड को प्राथमिकता देने की कोशिश की जाएगी समय. उदाहरण के लिए, कभी-कभी या तेज़ी से चलने वाले निर्देशों को ज़्यादा समय तक चलने वाले निर्देशों के मुकाबले प्राथमिकता दी जाएगी.
शटडाउन होने तक बैकग्राउंड में हमेशा काम करता है.
खास जानकारी
सार्वजनिक कंस्ट्रक्टर | |
---|---|
CommandScheduler()
यह |
सार्वजनिक तरीके | |
---|---|
Pair<Boolean, Integer>
|
addCommand(String[] args)
शेड्यूलर में कोई निर्देश जोड़ता है. |
void
|
addCommandFile(String cmdFilePath,
दी गई फ़ाइल के सभी निर्देशों को शेड्यूलर में जोड़ता है |
void
|
await()
शेड्यूलर के चलने की इंतज़ार करता है, जिसमें पुराने TF के हैंडओवर के पूरा होने की इंतज़ार करना भी शामिल है अगर लागू हो. |
static
TradefedDelegator
|
checkDelegation(String[] args)
कमांड लाइन के आधार पर एक डेलिगेटर बनाएं, ताकि यह देखा जा सके कि क्या हमें रन मैनेज करने की ज़रूरत है. |
static
|
createReleaseMap(IInvocationContext context, Throwable e)
डिवाइसों की स्थिति का एक मैप बनाएं, ताकि उन्हें सही तरीके से रिलीज़ किया जा सके. |
ISandbox
|
createSandbox()
एक |
void
|
displayCommandQueue(PrintWriter printWriter)
निर्देश लागू करने की सूची की स्थिति के बारे में ज़्यादा जानकारी वाला डीबग फ़ंक्शन. |
void
|
displayCommandsInfo(PrintWriter printWriter, String regex)
मौजूदा निर्देशों की सूची आउटपुट करें. |
void
|
displayInvocationsInfo(PrintWriter printWriter)
इस्तेमाल किए जाने वाले मौजूदा नामों की सूची दिखाता है. |
void
|
dumpCommandsXml(PrintWriter printWriter, String regex)
कमांड के लिए, बड़ी की गई एक्सएमएल फ़ाइल को सभी
सभी मौजूदा निर्देशों के लिए, |
long
|
execCommand(ICommandScheduler.IScheduledInvocationListener listener,
पहले से असाइन किए गए डिवाइसों पर सीधे तौर पर निर्देश लागू करें. |
long
|
execCommand(IInvocationContext context, ICommandScheduler.IScheduledInvocationListener listener, String[] args)
डिवाइस को सीधे तौर पर असाइन करता है और निर्देश को कमांड क्यू में जोड़े बिना लागू करता है
पहले से मौजूद |
long
|
execCommand(ICommandScheduler.IScheduledInvocationListener listener, String[] args)
डिवाइस को सीधे असाइन करता है और कमांड को कमांड क्यू में जोड़े बिना ही एक्ज़ीक्यूट करता है. |
CommandFileWatcher
|
getCommandFileWatcher()
इस शेड्यूलर के लिए सही CommandFileWatcher पाएं |
int
|
getExecutingCommandCount()
लागू किए जाने के स्टेटस में कमांड की संख्या दिखाता है. |
CommandScheduler.HostState
|
getHostState()
|
String
|
getInvocationInfo(int invocationId)
इनवोकेशन आईडी को बताने वाले इनवोकेशन बू पर जानकारी दें. |
CommandRunner.ExitCode
|
getLastInvocationExitCode()
पिछली बार शुरू किए गए प्रॉम्प्ट का गड़बड़ी का कोड दिखाएं. |
Throwable
|
getLastInvocationThrowable()
पिछली बार शुरू हुए सवाल से |
int
|
getReadyCommandCount()
सूची में तैयार स्थिति में कमांड की संख्या दिखाता है. |
long
|
getShutdownTimeout()
|
boolean
|
isDeviceInInvocationThread(ITestDevice device)
अगर डिवाइस का इस्तेमाल न्योता देने वाले किसी चालू थ्रेड से किया जाता है, तो 'सही' दिखाता है. |
boolean
|
isShuttingDown()
|
void
|
notifyFileChanged(File cmdFile,
|
void
|
removeAllCommands()
शेड्यूलर से सभी निर्देश हटाएं |
void
|
run()
इस थ्रेड को चलाने का मुख्य ब्लॉक. |
void
|
setClearcutClient(ClearcutClient client)
हार्नेस डेटा की रिपोर्ट करने के लिए क्लाइंट सेट करें |
boolean
|
shouldShutdownOnCmdfileError()
अगर हमें कमांड से जुड़ी गड़बड़ियों की वजह से शेड्यूलर को बंद करना पड़े, तो 'सही' दिखाता है |
void
|
shutdown(boolean notifyStop)
आदेश शेड्यूलर को ग्रेसफ़ुली शटडाउन करने का प्रयास करें. |
void
|
shutdownHard(boolean killAdb)
कमांड शेड्यूलर को ज़बरदस्ती बंद करने की कोशिश करना. |
void
|
shutdownHard()
कमांड शेड्यूलर को ज़बरदस्ती बंद करने की कोशिश करना. |
void
|
shutdownOnEmpty()
यह |
void
|
start()
शेड्यूलर को शुरू करता है. इसमें लॉगिंग, |
boolean
|
stopInvocation(ITestInvocation invocation)
चल रहे न्योते को बंद करें. |
boolean
|
stopInvocation(int invocationId, String cause)
किसी चल रहे न्योते का आईडी बताकर उसे बंद करें. |
void
|
stopScheduling()
नए टेस्ट शेड्यूल करने और स्वीकार करने से रोकता है, लेकिन ट्रेडफ़ेड को नहीं रोकता. |
सार्वजनिक कंस्ट्रक्टर
CommandScheduler
public CommandScheduler ()
यह CommandScheduler
बनाता है.
ध्यान दें: इस्तेमाल शुरू करने से पहले कॉल किया जाना ज़रूरी है.
सार्वजनिक तरीके
addCommand
public Pair<Boolean, Integer> addCommand (String[] args)
शेड्यूलर में कोई निर्देश जोड़ता है.
निर्देश, चलाने के लिए कॉन्फ़िगरेशन का एक ज़रूरी इंस्टेंस होता है. साथ ही, इससे जुड़े निर्देश आर्ग्युमेंट.
अगर "--help" है, तो तर्क दिया जाता है, तो कॉन्फ़िगरेशन के लिए सहायता टेक्स्ट stdout पर भेजा जाएगा. ऐसा न करने पर, कॉन्फ़िगरेशन को सूची में जोड़ दिया जाएगा.
पैरामीटर | |
---|---|
args |
String : कॉन्फ़िगरेशन के आर्ग्युमेंट. |
रिटर्न | |
---|---|
Pair<Boolean, Integer> |
वैल्यू का जोड़ा, अगर निर्देश जोड़ा गया हो, तो पहली वैल्यू बूलियन true होती है
का इस्तेमाल किया जा सकता है. दूसरा मान ज्ञात कमांड ट्रैकर आईडी(गैर-ऋणात्मक मान) होता है, अगर
आदेश सफलतापूर्वक जोड़ा गया, सभी डिवाइस के लिए आदेश जोड़े जाने पर 0 दिखाएं, अन्यथा 0 दिखाएं
-1. |
थ्रो | |
---|---|
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 |
थ्रो | |
---|---|
|
com.android.tradefed.config.Configurationअपवाद |
ConfigurationException |
रिलीज़ मैप बनाएं
public staticcreateReleaseMap (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 long execCommand (ICommandScheduler.IScheduledInvocationListener listener,reservedDevices, String[] args)
पहले से असाइन किए गए डिवाइसों पर सीधे तौर पर निर्देश लागू करें.
पैरामीटर | |
---|---|
listener |
ICommandScheduler.IScheduledInvocationListener : सूचित किया जाने वाला ICommandScheduler.IScheduledInvocationListener |
reservedDevices |
: इस्तेमाल करने के लिए ERROR(/List |
args |
String : कमांड आर्ग्युमेंट |
रिटर्न | |
---|---|
long |
शेड्यूल किए गए निर्देश का शुरू करने का आईडी. |
थ्रो | |
---|---|
ConfigurationException |
एक्ज़ीक्यूट करें
public long execCommand (IInvocationContext context, ICommandScheduler.IScheduledInvocationListener listener, String[] args)
डिवाइस को सीधे तौर पर असाइन करता है और निर्देश को कमांड क्यू में जोड़े बिना लागू करता है
पहले से मौजूद IInvocationContext
का इस्तेमाल करके.
पैरामीटर | |
---|---|
context |
IInvocationContext : पहले से मौजूद IInvocationContext . |
listener |
ICommandScheduler.IScheduledInvocationListener : सूचित किया जाने वाला ICommandScheduler.IScheduledInvocationListener |
args |
String : कमांड आर्ग्युमेंट |
रिटर्न | |
---|---|
long |
थ्रो | |
---|---|
ConfigurationException |
|
NoDeviceException |
एक्ज़ीक्यूट करें
public long execCommand (ICommandScheduler.IScheduledInvocationListener listener, String[] args)
डिवाइस को सीधे असाइन करता है और कमांड को कमांड क्यू में जोड़े बिना ही एक्ज़ीक्यूट करता है.
पैरामीटर | |
---|---|
listener |
ICommandScheduler.IScheduledInvocationListener : सूचित किया जाने वाला ICommandScheduler.IScheduledInvocationListener |
args |
String : कमांड आर्ग्युमेंट |
रिटर्न | |
---|---|
long |
शेड्यूल किए गए निर्देश का शुरू करने का आईडी. |
थ्रो | |
---|---|
ConfigurationException |
|
NoDeviceException |
getCommandFileWatcher
public CommandFileWatcher getCommandFileWatcher ()
इस शेड्यूलर के लिए सही CommandFileWatcher पाएं
रिटर्न | |
---|---|
CommandFileWatcher |
getexeutingCommandCount
public int getExecutingCommandCount ()
लागू किए जाने के स्टेटस में कमांड की संख्या दिखाता है.
रिटर्न | |
---|---|
int |
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 |
isDeviceInvocationThread
public boolean isDeviceInInvocationThread (ITestDevice device)
अगर डिवाइस का इस्तेमाल न्योता देने वाले किसी चालू थ्रेड से किया जाता है, तो 'सही' दिखाता है.
पैरामीटर | |
---|---|
device |
ITestDevice |
रिटर्न | |
---|---|
boolean |
बंद है
public boolean isShuttingDown ()
रिटर्न | |
---|---|
boolean |
सूचना देने वाली फ़ाइल में बदलाव किया गया
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 (boolean notifyStop)
आदेश शेड्यूलर को ग्रेसफ़ुली शटडाउन करने का प्रयास करें.
पैरामीटर | |
---|---|
notifyStop |
boolean : अगर सही है, तो TF के बंद होने की सूचना देता है. |
शटडाउन हार्ड
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 |
सही है अगर शुरू करना रोका गया था, तो गलत है, नहीं तो गलत |
शेड्यूल करना रोकें
public void stopScheduling ()
नए टेस्ट शेड्यूल करने और स्वीकार करने से रोकता है, लेकिन ट्रेडफ़ेड को नहीं रोकता. इसका मकसद, यह सुविधा चालू करना है दो चरणों में बंद होने के बाद, पहले हम सभी मौजूदा टेस्ट पूरे कर लेते हैं. इसके बाद, ट्रेडफ़ेड को बंद कर देते हैं प्रोसेस.
सुरक्षित तरीके
क्लीनअप करें
protected void cleanUp ()
लॉग बंद करता है और हमारे बाहर निकलने से पहले कोई भी अन्य ज़रूरी क्लीनअप करता है.
इसलिए दिखाया गया है, ताकि यूनिट टेस्ट की नकल की जा सके.
बनाएंकॉन्फ़िगरेशन
protected IConfiguration createConfiguration (String[] args)
पैरामीटर | |
---|---|
args |
String |
रिटर्न | |
---|---|
IConfiguration |
थ्रो | |
---|---|
ConfigurationException |
बनाने के लिए प्रॉम्प्ट
protected IInvocationContext createInvocationContext ()
रिटर्न | |
---|---|
IInvocationContext |
dryRunCommandReporting
protected void dryRunCommandReporting (ICommandScheduler.IScheduledInvocationListener handler, IConfiguration config)
यह तय करता है कि दिया गया निर्देश, ड्राई रन है या नहीं. अगर निर्देश ड्राई रन किया गया है, तो उसकी पुष्टि करें. अगर आपने कॉन्फ़िगरेशन से जुड़ी कोई समस्या हो, तो कॉन्फ़िगरेशन अपवाद दिखेगा.
पैरामीटर | |
---|---|
handler |
ICommandScheduler.IScheduledInvocationListener : ड्राय रन की पुष्टि करने के लिए, इवेंट की रिपोर्ट करने के लिए ERROR(/InvocationEventHandler) . |
config |
IConfiguration |
रिटर्न | |
---|---|
void |
सही है, अगर कमांड ड्राय रन है, नहीं तो गलत. |
थ्रो | |
---|---|
|
com.android.tradefed.config.Configurationअपवाद |
ConfigurationException |
एक्ज़ीक्यूट करें
protected long execCommand (IInvocationContext context, ICommandScheduler.IScheduledInvocationListener listener,reservedDevices, String[] args)
पैरामीटर | |
---|---|
context |
IInvocationContext |
listener |
ICommandScheduler.IScheduledInvocationListener |
reservedDevices |
|
args |
String |
रिटर्न | |
---|---|
long |
थ्रो | |
---|---|
ConfigurationException |
गेट कॉन्फ़िगरेशनफ़ैक्ट्री
protected IConfigurationFactory getConfigFactory ()
IConfigurationFactory
का रेफ़रंस पाने का फ़ैक्ट्री तरीका
रिटर्न | |
---|---|
IConfigurationFactory |
IConfigurationFactory का इस्तेमाल करना है |
getDeviceManagementServer
protected DeviceManagementGrpcServer getDeviceManagementServer ()
रिटर्न | |
---|---|
DeviceManagementGrpcServer |
'डिवाइस मैनेजर' पाएं
protected IDeviceManager getDeviceManager ()
IDeviceManager
का रेफ़रंस पाने का फ़ैक्ट्री तरीका
रिटर्न | |
---|---|
IDeviceManager |
IDeviceManager का इस्तेमाल करना है |
getKeyStoreClient
protected IKeyStoreClient getKeyStoreClient ()
IGlobalConfiguration
में बताए गए IKeyStoreFactory
या शून्य का इस्तेमाल करके IKeyStoreClient
फ़ेच करता है, अगर कोई भी तय नहीं किया गया है.
रिटर्न | |
---|---|
IKeyStoreClient |
IKeyStoreClient |
getTestInvocationManagementServer
protected TestInvocationManagementServer getTestInvocationManagementServer ()
रिटर्न | |
---|---|
TestInvocationManagementServer |
इनिटलॉगिंग
protected void initLogging ()
ddmlib लॉग को शुरू करता है.
इसलिए दिखाया गया है, ताकि यूनिट टेस्ट की नकल की जा सके.
बंद है
protected boolean isShutdown ()
रिटर्न | |
---|---|
boolean |
प्रोसेस के लिए तैयार निर्देश
protected void processReadyCommands (IDeviceManager manager)
पैरामीटर | |
---|---|
manager |
IDeviceManager |