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