कमांड शेड्यूलर

public class CommandScheduler
extends Object implements ICommandScheduler

java.lang.ऑब्जेक्ट
com.android.tradefed.command.CommandScheduler


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

उनके निष्पादन समय की कुल संख्या के आधार पर कमांड को चलाने के लिए प्राथमिकता देने का प्रयास किया जाएगा। उदाहरण के लिए कम या तेजी से चलने वाले कमांड को लंबे समय तक चलने वाले कमांड पर प्राथमिकता दी जाएगी।

शटडाउन होने तक पृष्ठभूमि में हमेशा चलता रहता है।

सारांश

सार्वजनिक निर्माणकर्ता

CommandScheduler ()

एक CommandScheduler बनाता है।

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

Pair <Boolean, Integer> addCommand (String[] args)

शेड्यूलर में एक कमांड जोड़ता है।

void addCommandFile (String cmdFilePath, extraArgs) addCommandFile (String cmdFilePath, extraArgs)

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

void await ()

शेड्यूलर के चलने की प्रतीक्षा करता है, जिसमें लागू होने पर पुराने टीएफ से हैंडओवर पूरा होने की प्रतीक्षा भी शामिल है।

static TradefedDelegator checkDelegation (String[] args)

यह देखने के लिए कि क्या हमें रन को प्रतिनिधि बनाने की आवश्यकता है, कमांड लाइन के आधार पर एक प्रतिनिधि बनाएं।

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 मानों के साथ कमांड के लिए विस्तारित xml फ़ाइल को डंप करें।

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

पहले से आवंटित डिवाइस पर सीधे कमांड निष्पादित करें।

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

किसी डिवाइस को सीधे आवंटित करता है और पहले से मौजूद IInvocationContext उपयोग करके कमांड कतार में जोड़े बिना एक कमांड निष्पादित करता है।

long 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 ()
boolean isDeviceInInvocationThread ( ITestDevice device)

यदि डिवाइस का उपयोग सक्रिय इनवोकेशन थ्रेड द्वारा किया जाता है तो यह सत्य लौटाता है।

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

शेड्यूलर से सभी कमांड हटाएँ

void run ()

इस थ्रेड का मुख्य निष्पादन ब्लॉक।

void setClearcutClient (ClearcutClient client)

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

boolean shouldShutdownOnCmdfileError ()

यदि हमें कमांड त्रुटियों पर शेड्यूलर को बंद करने की आवश्यकता है तो सही लौटें

void shutdown (boolean notifyStop)

कमांड शेड्यूलर को शालीनता से बंद करने का प्रयास करें।

void shutdownHard (boolean killAdb)

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

void shutdownHard ()

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

void shutdownOnEmpty ()

shutdown() के समान, लेकिन इसके बजाय बाहर निकलने से पहले सभी आदेशों के निष्पादित होने की प्रतीक्षा की जाएगी।

void start ()

लॉगिंग की स्थापना, DeviceManager के इनिट आदि सहित शेड्यूलर प्रारंभ करता है

boolean stopInvocation ( ITestInvocation invocation)

चल रहे आह्वान को रोकें.

boolean stopInvocation (int invocationId, String cause)

चल रहे आह्वान को उसकी आईडी निर्दिष्ट करके रोकें।

void stopScheduling ()

नए परीक्षणों को शेड्यूल करना और स्वीकार करना बंद कर देता है लेकिन ट्रेडफेड को नहीं रोकता है।

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

void cleanUp ()

हमारे छोड़ने से पहले लॉग बंद कर देता है और कोई अन्य आवश्यक सफ़ाई करता है।

IConfiguration createConfiguration (String[] args)
IInvocationContext createInvocationContext ()
void dryRunCommandReporting ( ICommandScheduler.IScheduledInvocationListener handler, IConfiguration config)

निर्धारित करता है कि क्या दिया गया आदेश ड्राई-रन है।

long execCommand ( IInvocationContext context, ICommandScheduler.IScheduledInvocationListener listener, reservedDevices, String[] args) execCommand ( IInvocationContext context, ICommandScheduler.IScheduledInvocationListener listener, reservedDevices, String[] args)
IConfigurationFactory getConfigFactory ()

IConfigurationFactory का संदर्भ प्राप्त करने के लिए फ़ैक्टरी विधि

DeviceManagementGrpcServer getDeviceManagementServer ()
IDeviceManager getDeviceManager ()

IDeviceManager का संदर्भ प्राप्त करने के लिए फ़ैक्टरी विधि

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

IGlobalConfiguration में घोषित IKeyStoreFactory का उपयोग करके IKeyStoreClient प्राप्त करता है या यदि कोई परिभाषित नहीं है तो शून्य कर देता है।

TestInvocationManagementServer getTestInvocationManagementServer ()
void initLogging ()

Ddmlib लॉग को प्रारंभ करता है।

boolean isShutdown ()
void processReadyCommands ( IDeviceManager manager)

सार्वजनिक निर्माणकर्ता

कमांड शेड्यूलर

public CommandScheduler ()

एक CommandScheduler बनाता है।

नोट: उपयोग से पहले स्टार्ट को कॉल किया जाना चाहिए।

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

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

इंतजार

public void await ()

शेड्यूलर के चलने की प्रतीक्षा करता है, जिसमें लागू होने पर पुराने टीएफ से हैंडओवर पूरा होने की प्रतीक्षा भी शामिल है।

प्रतिनिधिमंडल की जाँच करें

public static TradefedDelegator checkDelegation (String[] args)

यह देखने के लिए कि क्या हमें रन को प्रतिनिधि बनाने की आवश्यकता है, कमांड लाइन के आधार पर एक प्रतिनिधि बनाएं।

पैरामीटर
args String

रिटर्न
TradefedDelegator

फेंकता
com.android.tradefed.config.ConfigurationException
ConfigurationException

createReleaseMap

public static  createReleaseMap (IInvocationContext context, 
                Throwable e)

डिवाइस की स्थिति का एक मानचित्र बनाएं ताकि उन्हें उचित रूप से जारी किया जा सके।

पैरामीटर
context IInvocationContext

e Throwable

रिटर्न

सैंडबॉक्स बनाएं

public ISandbox createSandbox ()

एक ISandbox बनाएं जिसका उपयोग मंगलाचरण चलाने के लिए किया जाएगा।

रिटर्न
ISandbox

डिस्प्लेकमांडक्यू

public void displayCommandQueue (PrintWriter printWriter)

कमांड निष्पादन कतार की स्थिति पर विस्तृत डिबग जानकारी आउटपुट करें।

डिस्प्लेकमांडइन्फो

public void displayCommandsInfo (PrintWriter printWriter, 
                String regex)

वर्तमान आदेशों की एक सूची आउटपुट करें।

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

regex String : वह नियमित अभिव्यक्ति जिससे मुद्रित होने के लिए आदेशों का मिलान किया जाना चाहिए। यदि शून्य है, तो सभी आदेश मुद्रित होंगे।

प्रदर्शनआमंत्रणजानकारी

public void displayInvocationsInfo (PrintWriter printWriter)

वर्तमान आमंत्रणों की सूची प्रदर्शित करता है.

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

डंपकमांडएक्सएमएल

public void dumpCommandsXml (PrintWriter printWriter, 
                String regex)

सभी मौजूदा कमांड के लिए निर्दिष्ट सभी Option मानों के साथ कमांड के लिए विस्तारित xml फ़ाइल को डंप करें।

पैरामीटर
printWriter PrintWriter : स्थिति को आउटपुट करने के लिए ERROR(/PrintWriter)

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

execCommand

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

पहले से आवंटित डिवाइस पर सीधे कमांड निष्पादित करें।

पैरामीटर
listener ICommandScheduler.IScheduledInvocationListener : ICommandScheduler.IScheduledInvocationListener को सूचित किया जाना चाहिए

reservedDevices : ERROR(/List ) 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

getHostState

public CommandScheduler.HostState getHostState ()

रिटर्न
CommandScheduler.HostState

getInvocationInfo

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

isDeviceInInvocationThread

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 ()

इस थ्रेड का मुख्य निष्पादन ब्लॉक।

setClearcutClient

public void setClearcutClient (ClearcutClient client)

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

पैरामीटर
client ClearcutClient

canShutdownOnCmdfileत्रुटि

public boolean shouldShutdownOnCmdfileError ()

यदि हमें कमांड त्रुटियों पर शेड्यूलर को बंद करने की आवश्यकता है तो सही लौटें

रिटर्न
boolean

शट डाउन

public void shutdown (boolean notifyStop)

कमांड शेड्यूलर को शालीनता से बंद करने का प्रयास करें।

पैरामीटर
notifyStop boolean : यदि सत्य है, तो टीएफ शटडाउन के आह्वान को सूचित करता है।

शटडाउनकठोर

public void shutdownHard (boolean killAdb)

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

shutdown() के समान, लेकिन तेजी से पूरा करने के लिए प्रगति में आह्वान को 'प्रेरित' करने के प्रयास में, वैकल्पिक रूप से एडीबी कनेक्शन को भी मार देगा।

पैरामीटर
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

createInvocationContext

protected IInvocationContext createInvocationContext ()

रिटर्न
IInvocationContext

ड्राईरनकमांडरिपोर्टिंग

protected void dryRunCommandReporting (ICommandScheduler.IScheduledInvocationListener handler, 
                IConfiguration config)

निर्धारित करता है कि क्या दिया गया आदेश ड्राई-रन है। यदि आदेश ड्राई-रन है, तो इसे सत्यापित करें। यदि कोई कॉन्फ़िगरेशन समस्या है, तो यह कॉन्फ़िगरेशन अपवाद फेंक देगा।

पैरामीटर
handler ICommandScheduler.IScheduledInvocationListener : ड्राई-रन सत्यापन के लिए ईवेंट की रिपोर्ट करने में ERROR(/InvocationEventHandler)

config IConfiguration

रिटर्न
void यदि कमांड ड्राई रन है तो सही है, अन्यथा गलत है।

फेंकता
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

getFeatureServer

protected TradefedFeatureServer getFeatureServer ()

रिटर्न
TradefedFeatureServer

getHostOptions

protected IHostOptions getHostOptions ()

रिटर्न
IHostOptions

getKeyStoreClient

protected IKeyStoreClient getKeyStoreClient ()

IGlobalConfiguration में घोषित IKeyStoreFactory का उपयोग करके IKeyStoreClient प्राप्त करता है या यदि कोई परिभाषित नहीं है तो शून्य कर देता है।

रिटर्न
IKeyStoreClient IKeyStoreClient

getTestInvocationManagementServer

protected TestInvocationManagementServer getTestInvocationManagementServer ()

रिटर्न
TestInvocationManagementServer

initLogging

protected void initLogging ()

Ddmlib लॉग को प्रारंभ करता है।

उजागर ताकि इकाई परीक्षण नकल कर सकें।

बंद है

protected boolean isShutdown ()

रिटर्न
boolean

प्रोसेसरेडीकमांड

protected void processReadyCommands (IDeviceManager manager)

पैरामीटर
manager IDeviceManager