কমান্ড শিডিউলার

public class CommandScheduler
extends Object implements ICommandScheduler

java.lang.অবজেক্ট
com.android.tradefed.command.CommandScheduler


সমস্ত উপলব্ধ ডিভাইস জুড়ে ট্রেডফেডারেশন কমান্ড চালানোর জন্য একটি সময়সূচী।

কমান্ড চালানোর জন্য তাদের কার্যকর করার সময় মোট চলমান গণনার উপর ভিত্তি করে অগ্রাধিকার দেওয়ার চেষ্টা করবে। যেমন বিরল বা দ্রুত চলমান কমান্ডগুলি দীর্ঘ চলমান কমান্ডের চেয়ে অগ্রাধিকার পাবে।

শাটডাউন না হওয়া পর্যন্ত পটভূমিতে চিরতরে চলে।

সারসংক্ষেপ

নেস্টেড ক্লাস

enum CommandScheduler.HostState

হোস্টের বিভিন্ন স্ট্যাটাসের সংখ্যা

পাবলিক কনস্ট্রাক্টর

CommandScheduler ()

একটি CommandScheduler তৈরি করে।

পাবলিক পদ্ধতি

boolean addCommand (String[] args)

সময়সূচীতে একটি কমান্ড যোগ করে।

void addCommandFile (String cmdFilePath, extraArgs) 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 মান সহ কমান্ডের জন্য প্রসারিত xml ফাইলটি ডাম্প করুন।

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

IGlobalConfiguration এ ঘোষিত IKeyStoreFactory ব্যবহার করে একটি IKeyStoreClient আনে বা কোনোটি সংজ্ঞায়িত না থাকলে শূন্য।

void initLogging ()

ddmlib লগ আরম্ভ করে।

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

সমস্ত আহ্বান থ্রেড সম্পূর্ণ না হওয়া পর্যন্ত অপেক্ষা করুন।

পাবলিক কনস্ট্রাক্টর

কমান্ড শিডিউলার

public CommandScheduler ()

একটি CommandScheduler তৈরি করে।

দ্রষ্টব্য: ব্যবহারের আগে স্টার্ট কল করা আবশ্যক।

পাবলিক পদ্ধতি

addCommand

public boolean addCommand (String[] args)

সময়সূচীতে একটি কমান্ড যোগ করে।

একটি কমান্ড মূলত চালানোর জন্য একটি কনফিগারেশন এবং এর সাথে সম্পর্কিত আর্গুমেন্টের একটি উদাহরণ।

যদি "--help" আর্গুমেন্ট নির্দিষ্ট করা হয় তাহলে কনফিগারেশনের জন্য হেল্প টেক্সট stdout-এ আউটপুট করা হবে। অন্যথায়, কনফিগার চালানোর জন্য সারিতে যোগ করা হবে।

পরামিতি
args String : কনফিগার আর্গুমেন্ট।

রিটার্নস
boolean true যদি কমান্ড সফলভাবে যোগ করা হয়

নিক্ষেপ করে
ConfigurationException

addCommandFile

public void addCommandFile (String cmdFilePath, 
                 extraArgs)

প্রদত্ত ফাইল থেকে শিডিউলারে সমস্ত কমান্ড যোগ করে

পরামিতি
cmdFilePath String : কমান্ড ফাইলের ফাইল সিস্টেম পাথ

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

প্রদর্শন কমান্ড সারি

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) যাতে আউটপুট করতে হয়।

dumpCommandsXml

public void dumpCommandsXml (PrintWriter printWriter, 
                String regex)

সমস্ত বর্তমান কমান্ডের জন্য নির্দিষ্ট সমস্ত Option মান সহ কমান্ডের জন্য প্রসারিত xml ফাইলটি ডাম্প করুন।

পরামিতি
printWriter PrintWriter : স্ট্যাটাস আউটপুট করতে ERROR(/PrintWriter)

regex String : এক্সএমএল ফাইল ডাম্প করার জন্য যে রেগুলার এক্সপ্রেশনের সাথে কমান্ডগুলি মিলানো উচিত। যদি শূন্য হয়, তাহলে সমস্ত কমান্ড ডাম্প করা হবে।

execCommand

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

ইতিমধ্যে বরাদ্দ করা ডিভাইসে সরাসরি কমান্ড চালান।

পরামিতি
listener ICommandScheduler.IScheduledInvocationListener : ICommandScheduler.IScheduledInvocationListener কে জানানো হবে

device ITestDevice : ব্যবহার করার জন্য ITestDevice

args String : কমান্ড আর্গুমেন্ট

নিক্ষেপ করে
ConfigurationException

execCommand

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

সরাসরি একটি ডিভাইস বরাদ্দ করে এবং আগে থেকে বিদ্যমান IInvocationContext ব্যবহার করে কমান্ড সারিতে যোগ না করে একটি কমান্ড কার্যকর করে।

পরামিতি
context IInvocationContext : একটি বিদ্যমান IInvocationContext

listener ICommandScheduler.IScheduledInvocationListener : ICommandScheduler.IScheduledInvocationListener কে জানানো হবে

args String : কমান্ড আর্গুমেন্ট

নিক্ষেপ করে
ConfigurationException
NoDeviceException

execCommand

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

সরাসরি একটি ডিভাইস বরাদ্দ করে এবং কমান্ড সারিতে যোগ না করে একটি কমান্ড কার্যকর করে।

পরামিতি
listener ICommandScheduler.IScheduledInvocationListener : ICommandScheduler.IScheduledInvocationListener কে জানানো হবে

args String : কমান্ড আর্গুমেন্ট

নিক্ষেপ করে
ConfigurationException
NoDeviceException

getCommandFileWatcher

public CommandFileWatcher getCommandFileWatcher ()

এই সময়সূচীর জন্য উপযুক্ত CommandFileWatcher পান

রিটার্নস
CommandFileWatcher

getExecutingCommandCount

public int getExecutingCommandCount ()

কার্যকরী অবস্থায় কমান্ডের সংখ্যা প্রদান করে।

রিটার্নস
int

getHostState

public CommandScheduler.HostState getHostState ()

রিটার্নস
CommandScheduler.HostState

আমন্ত্রণ তথ্য পান

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

getShutdownTimeout

public long getShutdownTimeout ()

রিটার্নস
long

হস্তান্তর সূচনা সম্পূর্ণ

public void handoverInitiationComplete ()

কমান্ড শিডিউলারকে জানায় যে ডিভাইস এবং কমান্ডের প্রাথমিক হস্তান্তর বিনিময় সম্পূর্ণ হয়েছে, এবং এটি সময়সূচী অপারেশন শুরু করতে পারে।

হস্তান্তর শাটডাউন

public boolean handoverShutdown (int handoverPort)

একই হোস্টে একটি shutdown() এবং অন্য একটি ট্রেডফেড প্রক্রিয়ায় হস্তান্তর শুরু করে।

শিডিউলকারী রিমোট ট্রেডফেড প্রক্রিয়াকে সেই পোর্টে মুক্ত ডিভাইসগুলি উপলব্ধ হওয়ার সাথে সাথে শোনার বিষয়ে অবহিত করবে।

পরামিতি
handoverPort int

রিটার্নস
boolean হস্তান্তর দীক্ষা সফল হলে true , অন্যথায় false

notifyFileপরিবর্তিত

public void notifyFileChanged (File cmdFile, 
                 extraArgs)

পরামিতি
cmdFile File

extraArgs

সমস্ত কমান্ড সরান

public void removeAllCommands ()

শিডিউলার থেকে সমস্ত কমান্ড সরান

চালানো

public void run ()

এই থ্রেডের প্রধান এক্সিকিউশন ব্লক।

setClearcutClient

public void setClearcutClient (ClearcutClient client)

জোতা তথ্য রিপোর্ট করতে ক্লায়েন্ট সেট করুন

পরামিতি
client ClearcutClient

ShutdownOnCmdfileError উচিত

public boolean shouldShutdownOnCmdfileError ()

কমান্ড ত্রুটির জন্য আমাদের শিডিউলারটি বন্ধ করার প্রয়োজন হলে সত্যে ফিরে আসুন

রিটার্নস
boolean

শাটডাউন

public void shutdown ()

কম্যান্ড শিডিউলারটি সুন্দরভাবে বন্ধ করার চেষ্টা করুন।

পরীক্ষা করার জন্য অপেক্ষা করা কমান্ডগুলিকে সাফ করে, এবং অনুরোধ করে যে প্রগতিতে থাকা সমস্ত আহ্বান সুন্দরভাবে বন্ধ করুন।

শাটডাউন কল করার পরে, শিডিউলার প্রধান লুপ সম্পূর্ণভাবে প্রস্থান করার আগে প্রগতিতে থাকা সমস্ত আহ্বান সম্পূর্ণ হওয়ার জন্য অপেক্ষা করবে।

শাটডাউন হার্ড

public void shutdownHard (boolean killAdb)

কমান্ড শিডিউলার জোরপূর্বক বন্ধ করার চেষ্টা।

shutdown() এর মতই, কিন্তু দ্রুত সম্পূর্ণ করার জন্য প্রগতিতে আমন্ত্রণগুলিকে 'অনুপ্রাণিত' করার প্রয়াসে ঐচ্ছিকভাবে adb সংযোগকেও মেরে ফেলবে।

পরামিতি
killAdb boolean

শাটডাউন হার্ড

public void shutdownHard ()

কমান্ড শিডিউলার জোরপূর্বক বন্ধ করার চেষ্টা। শাটডাউন হার্ড (সত্য) হিসাবে একই।

shutdownOnEmpty

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

InvocationContext তৈরি করুন

protected IInvocationContext createInvocationContext ()

রিটার্নস
IInvocationContext

getConfigFactory

protected IConfigurationFactory getConfigFactory ()

IConfigurationFactory একটি রেফারেন্স পাওয়ার জন্য কারখানা পদ্ধতি

রিটার্নস
IConfigurationFactory IConfigurationFactory ব্যবহার করার জন্য

getDeviceManager

protected IDeviceManager getDeviceManager ()

IDeviceManager এর রেফারেন্স পাওয়ার জন্য ফ্যাক্টরি পদ্ধতি

রিটার্নস
IDeviceManager IDeviceManager ব্যবহার করার জন্য

গেট ফিচার সার্ভার

protected TradefedFeatureServer getFeatureServer ()

রিটার্নস
TradefedFeatureServer

getHostOptions

protected IHostOptions getHostOptions ()

রিটার্নস
IHostOptions

getKeyStoreClient

protected IKeyStoreClient getKeyStoreClient ()

IGlobalConfiguration এ ঘোষিত IKeyStoreFactory ব্যবহার করে একটি IKeyStoreClient আনে বা কোনোটি সংজ্ঞায়িত না থাকলে শূন্য।

রিটার্নস
IKeyStoreClient IKeyStoreClient

initLogging

protected void initLogging ()

ddmlib লগ আরম্ভ করে।

উন্মুক্ত তাই ইউনিট পরীক্ষা উপহাস করতে পারে.

শাটডাউন

protected boolean isShutdown ()

রিটার্নস
boolean

শাট ডাউন

protected boolean isShuttingDown ()

রিটার্নস
boolean

processReadyCommands

protected void processReadyCommands (IDeviceManager manager)

পরামিতি
manager IDeviceManager

waitForAllInvocationThreads

protected void waitForAllInvocationThreads ()

সমস্ত আহ্বান থ্রেড সম্পূর্ণ না হওয়া পর্যন্ত অপেক্ষা করুন।