রানইউটিল

public class RunUtil
extends Object implements IRunUtil

java.lang.Object
com.android.tradefed.util.RunUtil


অপারেশন সম্পাদনের জন্য সহায়ক মেথডগুলোর একটি সংগ্রহ।

সারসংক্ষেপ

ধ্রুবক

String INHERITIO_PREFIX

String RUNNABLE_NOTIFIER_NAME

সরকারি নির্মাণকারী

RunUtil ()

ব্যবহারের জন্য একটি নতুন RunUtil অবজেক্ট তৈরি করুন।

RunUtil (boolean inheritEnvVars)

জনসাধারণের পদ্ধতি

void allowInterrupt (boolean allow)

বর্তমান থ্রেডে ইন্টারাপ্ট চালানোর অনুমতি দেয়/দেয় না।

ProcessBuilder createProcessBuilder (ProcessBuilder.Redirect redirect, List<String> commandList, boolean enableCache)
static IRunUtil getDefault ()

ডিফল্ট RunUtil অবজেক্টটির একটি রেফারেন্স নিন।

void interrupt (Thread thread, String message, ErrorIdentifier errorId)

প্রদত্ত থ্রেডে চলমান বা আসন্ন রান অপারেশনগুলিকে বাধা দেয়।

void interrupt (Thread thread, String message)

প্রদত্ত থ্রেডে চলমান বা আসন্ন রান অপারেশনগুলিকে বাধা দেয়।

boolean isInterruptAllowed ()

RunUtil-এর ইন্টারাপ্ট স্ট্যাটাসটি দিন।

Process runCmdInBackground (ProcessBuilder.Redirect redirect, List<String> command)

runCmdInBackground(String...) এর একটি বিকল্প মেথড যা কমান্ড আর্গুমেন্টগুলোকে List আকারে গ্রহণ করে।

Process runCmdInBackground (ProcessBuilder.Redirect redirect, String... command)

সিস্টেম কমান্ড অ্যাসিঙ্ক্রোনাসভাবে কার্যকর করার জন্য সহায়ক মেথড।

Process runCmdInBackground (List<String> command)

runCmdInBackground(String...) এর একটি বিকল্প মেথড যা কমান্ড আর্গুমেন্টগুলোকে List আকারে গ্রহণ করে।

Process runCmdInBackground (String... command)

সিস্টেম কমান্ড অ্যাসিঙ্ক্রোনাসভাবে কার্যকর করার জন্য সহায়ক মেথড।

Process runCmdInBackground (List<String> command, OutputStream output)

OutputStream ব্যবহার করে কমান্ড চালালে তার আউটপুট লগ হয়।

boolean runEscalatingTimedRetry (long opTimeout, long initialPollInterval, long maxPollInterval, long maxTime, IRunUtil.IRunnableResult runnable)

একটি অপারেশন সফল না হওয়া পর্যন্ত সেটিকে ব্লক করে একাধিকবার সম্পাদন করে।

boolean runFixedTimedRetry (long opTimeout, long pollInterval, long maxTime, IRunUtil.IRunnableResult runnable)

একটি অপারেশন সফল না হওয়া পর্যন্ত সেটিকে ব্লক করে একাধিকবার সম্পাদন করে।

boolean runFixedTimedRetryWithOutputMonitor (long opTimeout, long idleOutputTimeout, long pollInterval, long maxTime, IRunUtil.IRunnableResult runnable)

একটি অপারেশন সফল না হওয়া পর্যন্ত সেটিকে ব্লক করে একাধিকবার সম্পাদন করে।

CommandStatus runTimed (long timeout, IRunUtil.IRunnableResult runnable, boolean logErrors)

একটি অপারেশনকে ব্লক করে ও সম্পাদন করে এবং নির্দিষ্ট সময়ের বেশি সময় লাগলে তা বাতিল করে দেয়।

CommandResult runTimedCmd (long timeout, String... command)

সিস্টেম কমান্ড কার্যকর করার জন্য একটি সহায়ক মেথড, এবং নির্দিষ্ট সময়ের বেশি সময় লাগলে এটি বাতিল করে দেয়।

CommandResult runTimedCmd (long timeout, OutputStream stdout, OutputStream stderr, String... command)

সিস্টেম কমান্ড কার্যকর করার, নির্দিষ্ট সময়ের বেশি সময় লাগলে তা বাতিল করার, এবং প্রয়োজন অনুযায়ী আউটপুট ফাইলে পাঠানোর সহায়ক মেথড।

CommandResult runTimedCmdRetry (long timeout, long retryInterval, int attempts, String... command)

সিস্টেম কমান্ড কার্যকর করার জন্য একটি সহায়ক মেথড, এবং নির্দিষ্ট সময়ের বেশি সময় লাগলে এটি বাতিল করে দেয়।

CommandResult runTimedCmdRetryWithOutputMonitor (long timeout, long idleOutputTimeout, long retryInterval, int attempts, String... command)

সিস্টেম কমান্ড কার্যকর করার জন্য একটি সহায়ক মেথড, এবং নির্দিষ্ট সময়ের বেশি সময় লাগলে এটি বাতিল করে দেয়।

CommandResult runTimedCmdSilently (long timeout, String... command)

সিস্টেম কমান্ড কার্যকর করার জন্য একটি সহায়ক মেথড, এবং নির্দিষ্ট সময়ের বেশি সময় লাগলে এটি বাতিল করে দেয়।

CommandResult runTimedCmdSilentlyRetry (long timeout, long retryInterval, int attempts, String... command)

সিস্টেম কমান্ড কার্যকর করার জন্য একটি সহায়ক মেথড, এবং নির্দিষ্ট সময়ের বেশি সময় লাগলে এটি বাতিল করে দেয়।

CommandResult runTimedCmdWithInput (long timeout, String input, String... command)

stdin ইনপুট প্রয়োজন এমন একটি সিস্টেম কমান্ড কার্যকর করার জন্য সহায়ক মেথড, এবং নির্দিষ্ট সময়ের বেশি সময় লাগলে এটি বাতিল হয়ে যায়।

CommandResult runTimedCmdWithInput (long timeout, String input, List<String> command)

stdin ইনপুট প্রয়োজন এমন একটি সিস্টেম কমান্ড কার্যকর করার জন্য সহায়ক মেথড, এবং নির্দিষ্ট সময়ের বেশি সময় লাগলে এটি বাতিল হয়ে যায়।

CommandResult runTimedCmdWithInput (long timeout, String input, File stdoutFile, File stderrFile, String... command)

সিস্টেম কমান্ড কার্যকর করার, নির্দিষ্ট সময়ের বেশি সময় লাগলে তা বাতিল করার, এবং প্রয়োজন অনুযায়ী আউটপুট ফাইলে পাঠানোর সহায়ক মেথড।

CommandResult runTimedCmdWithInputRedirect (long timeout, File inputRedirect, String... command)

একটি সিস্টেম কমান্ড কার্যকর করার জন্য সহায়ক মেথড, যার জন্য ফাইল থেকে Stdin রিডাইরেক্ট করার প্রয়োজন হয় এবং নির্দিষ্ট সময়ের বেশি সময় লাগলে এটি বাতিল হয়ে যায়।

CommandResult runTimedCmdWithOutputMonitor (long timeout, long idleOutputTimeout, String... command)

সিস্টেম কমান্ড কার্যকর করার জন্য একটি সহায়ক মেথড, এবং নির্দিষ্ট সময়ের বেশি সময় লাগলে এটি বাতিল করে দেয়।

CommandResult runTimedCmdWithOutputMonitor (long timeout, long idleOutputTimeout, OutputStream stdout, OutputStream stderr, String... command)

সিস্টেম কমান্ড কার্যকর করার, নির্দিষ্ট সময়ের বেশি সময় লাগলে তা বাতিল করার, এবং প্রয়োজন অনুযায়ী আউটপুট ফাইলে পাঠানোর সহায়ক মেথড।

boolean runTimedRetry (long opTimeout, long pollInterval, int attempts, IRunUtil.IRunnableResult runnable)

একটি অপারেশন সফল না হওয়া পর্যন্ত সেটিকে ব্লক করে একাধিকবার সম্পাদন করে।

boolean runTimedRetryWithOutputMonitor (long opTimeout, long idleOutputTimeout, long pollInterval, int attempts, IRunUtil.IRunnableResult runnable)

একটি অপারেশন সফল না হওয়া পর্যন্ত সেটিকে ব্লক করে একাধিকবার সম্পাদন করে।

CommandStatus runTimedWithOutputMonitor (long timeout, long idleOutputTimeout, IRunUtil.IRunnableResult runnable, boolean logErrors)

একটি অপারেশনকে ব্লক করে ও সম্পাদন করে এবং নির্দিষ্ট সময়ের বেশি সময় লাগলে তা বাতিল করে দেয়।

void setEnvVariable (String name, String value)

সিস্টেম কমান্ড চালানোর সময় ব্যবহার করার জন্য একটি এনভায়রনমেন্ট ভেরিয়েবল সেট করে।

void setEnvVariablePriority ( IRunUtil.EnvPriority priority)

প্রসেস তৈরি করার সময় এনভায়রনমেন্ট ভেরিয়েবল সেট করার চেয়ে আনসেট করার অগ্রাধিকার বেশি কিনা, তা স্থির করুন।

void setInterruptibleInFuture (Thread thread, long timeMs)

কিছুক্ষণ অপেক্ষা করার পর বাধাযোগ্য হিসেবে সেট করা হয়েছে।

void setLinuxInterruptProcess (boolean interrupt)

#runTimed মেথডের মাধ্যমে চলমান কোনো প্রসেস টাইমআউটে পৌঁছালে, সেটিকে লিনাক্সে 'kill' কমান্ড দিয়ে বন্ধ করার অনুমতি দেওয়া।

void setRedirectStderrToStdout (boolean redirect)

সিস্টেম কমান্ড চালানোর সময় স্ট্যান্ডার্ড এরর স্ট্রিমকে স্ট্যান্ডার্ড আউটপুট স্ট্রিমে রিডাইরেক্ট করার জন্য সেট করুন।

void setWorkingDir (File dir)

সিস্টেম কমান্ডের জন্য ওয়ার্কিং ডিরেক্টরি নির্ধারণ করে।

void sleep (long time)

যেকোনো ব্যতিক্রম উপেক্ষা করে নির্দিষ্ট সময়ের জন্য অপেক্ষা করার সহায়ক পদ্ধতি।

void unsetEnvVariable (String key)

একটি এনভায়রনমেন্ট ভেরিয়েবল আনসেট করে, ফলে সিস্টেম কমান্ডগুলো এই এনভায়রনমেন্ট ভেরিয়েবল ছাড়াই চলে। এনভায়রনমেন্ট ভেরিয়েবলগুলো প্যারেন্ট প্রসেস থেকে ইনহেরিট করতে পারে, তাই আমাদের ProcessBuilder.environment() থেকে এনভায়রনমেন্ট ভেরিয়েবলটি ডিলিট করতে হবে।

ধ্রুবক

INHERITIO_PREFIX

public static final String INHERITIO_PREFIX

ধ্রুবক মান: 'inheritio-'

রানযোগ্য_নোটিফায়ারের_নাম

public static final String RUNNABLE_NOTIFIER_NAME

ধ্রুবক মান: "RunnableNotifier"

সরকারি নির্মাণকারী

রানইউটিল

public RunUtil ()

ব্যবহারের জন্য একটি নতুন RunUtil অবজেক্ট তৈরি করুন।

রানইউটিল

public RunUtil (boolean inheritEnvVars)

প্যারামিটার
inheritEnvVars boolean

জনসাধারণের পদ্ধতি

বাধা দেওয়ার অনুমতি দিন

public void allowInterrupt (boolean allow)

বর্তমান থ্রেডে রান ইন্টারাপ্ট অনুমোদিত/অননুমোদিত করে। যদি এটি অনুমোদিত হয়, তবে interrupt(Thread, String) পদ্ধতির মাধ্যমে অন্যান্য থ্রেড থেকে বর্তমান থ্রেডের চলমান অপারেশনগুলিতে বাধা দেওয়া যেতে পারে।

প্যারামিটার
allow boolean : বর্তমান থ্রেডে রান ইন্টারাপ্ট অনুমোদিত হবে কিনা।

createProcessBuilder

public ProcessBuilder createProcessBuilder (ProcessBuilder.Redirect redirect, 
                List<String> commandList, 
                boolean enableCache)

প্যারামিটার
redirect ProcessBuilder.Redirect

commandList List

enableCache boolean

ফেরত
ProcessBuilder

ডিফল্ট পান

public static IRunUtil getDefault ()

ডিফল্ট RunUtil অবজেক্টটির একটি রেফারেন্স নিন।

যারা কোনো রকম কাস্টমাইজেশন ছাড়াই IRunUtil ব্যবহার করতে চান, তাদের জন্য এটি উপযোগী। তবে, যাদের একটি কাস্টম IRunUtil ইনস্ট্যান্সের প্রয়োজন (অর্থাৎ setEnvVariable(String,String) বা setWorkingDir(File) কল করার প্রয়োজন), তাদের নিজস্ব একটি কপি তৈরি করে নেওয়ার পরামর্শ দেওয়া হচ্ছে।

ফেরত
IRunUtil

বাধা দেওয়া

public void interrupt (Thread thread, 
                String message, 
                ErrorIdentifier errorId)

প্রদত্ত থ্রেডে চলমান বা আসন্ন রান অপারেশনগুলিকে বাধা দেয়। প্রদত্ত থ্রেডে রান অপারেশনগুলি RunInterruptedException থ্রো করবে।

প্যারামিটার
message String : RunInterruptedException এর বার্তা।

errorId ErrorIdentifier : বিঘ্নের কারণ জানা থাকলে তা নির্দেশ করে।

বাধা দেওয়া

public void interrupt (Thread thread, 
                String message)

প্রদত্ত থ্রেডে চলমান বা আসন্ন রান অপারেশনগুলিকে বাধা দেয়। প্রদত্ত থ্রেডে রান অপারেশনগুলি RunInterruptedException থ্রো করবে।

প্যারামিটার
message String : RunInterruptedException এর বার্তা।

বাধা দেওয়ার অনুমতি আছে

public boolean isInterruptAllowed ()

RunUtil-এর ইন্টারাপ্ট স্ট্যাটাসটি দিন।

ফেরত
boolean রানটি বাধাগ্রস্ত করা গেলে true, অন্যথায় false।

রানকমান্ডইনব্যাকগ্রাউন্ড

public Process runCmdInBackground (ProcessBuilder.Redirect redirect, 
                List<String> command)

runCmdInBackground(String...) এর একটি বিকল্প মেথড যা কমান্ড আর্গুমেন্টগুলোকে List আকারে গ্রহণ করে।

প্যারামিটার
redirect ProcessBuilder.Redirect : ProcessBuilder এ প্রয়োগ করার জন্য Redirect

command List : যে List নির্দিষ্ট সিস্টেম কমান্ড এবং ঐচ্ছিকভাবে exec-এর আর্গুমেন্টগুলো থাকে।

ফেরত
Process সম্পাদিত কমান্ডের Process

নিক্ষেপ
IOException

রানকমান্ডইনব্যাকগ্রাউন্ড

public Process runCmdInBackground (ProcessBuilder.Redirect redirect, 
                String... command)

সিস্টেম কমান্ড অ্যাসিঙ্ক্রোনাসভাবে কার্যকর করার জন্য সহায়ক মেথড।

কমান্ড চালু করার পর অবিলম্বে ফিরে আসবে।

প্যারামিটার
redirect ProcessBuilder.Redirect : ProcessBuilder এ প্রয়োগ করার জন্য Redirect

command String : নির্দিষ্ট সিস্টেম কমান্ড এবং ঐচ্ছিকভাবে exec-এর আর্গুমেন্টসমূহ

ফেরত
Process সম্পাদিত কমান্ডের Process

নিক্ষেপ
IOException

রানকমান্ডইনব্যাকগ্রাউন্ড

public Process runCmdInBackground (List<String> command)

runCmdInBackground(String...) এর একটি বিকল্প মেথড যা কমান্ড আর্গুমেন্টগুলোকে List আকারে গ্রহণ করে।

প্যারামিটার
command List : যে List নির্দিষ্ট সিস্টেম কমান্ড এবং ঐচ্ছিকভাবে exec-এর আর্গুমেন্টগুলো থাকে।

ফেরত
Process সম্পাদিত কমান্ডের Process

নিক্ষেপ
IOException

রানকমান্ডইনব্যাকগ্রাউন্ড

public Process runCmdInBackground (String... command)

সিস্টেম কমান্ড অ্যাসিঙ্ক্রোনাসভাবে কার্যকর করার জন্য সহায়ক মেথড।

কমান্ড চালু করার পর অবিলম্বে ফিরে আসবে।

প্যারামিটার
command String : নির্দিষ্ট সিস্টেম কমান্ড এবং ঐচ্ছিকভাবে exec-এর আর্গুমেন্টসমূহ

ফেরত
Process সম্পাদিত কমান্ডের Process

নিক্ষেপ
IOException

রানকমান্ডইনব্যাকগ্রাউন্ড

public Process runCmdInBackground (List<String> command, 
                OutputStream output)

OutputStream ব্যবহার করে কমান্ড চালালে তার আউটপুট লগ হয়। Stdout এবং stderr একসাথে মিশে যায়।

প্যারামিটার
command List : চালানোর জন্য কমান্ড

output OutputStream : আউটপুট সংরক্ষণের জন্য ব্যবহৃত আউটপুটস্ট্রিম।

ফেরত
Process কমান্ডটি চালানো Process

নিক্ষেপ
IOException

runEscalatingTimedRetry

public boolean runEscalatingTimedRetry (long opTimeout, 
                long initialPollInterval, 
                long maxPollInterval, 
                long maxTime, 
                IRunUtil.IRunnableResult runnable)

একটি অপারেশন সফল না হওয়া পর্যন্ত সেটিকে ব্লক করে একাধিকবার সম্পাদন করে।

অপারেশন চেষ্টার মধ্যবর্তী অপেক্ষার সময় সূচকীয়ভাবে বৃদ্ধি করুন। এটি সার্ভার পোলিং-এর মতো কোনো অপারেশন সম্পাদনের সময় ব্যবহারের জন্য উদ্দিষ্ট, যাতে সার্ভারটি সাময়িকভাবে ডাউন হয়ে গেলে পুনরুদ্ধার হওয়ার জন্য সময় পায়।

প্যারামিটার
opTimeout long : একটি একক অপারেশন চেষ্টার জন্য অপেক্ষা করার সর্বোচ্চ সময় (মিলিসেকেন্ডে)

initialPollInterval long : অপারেশন চেষ্টার মধ্যে অপেক্ষা করার প্রাথমিক সময়

maxPollInterval long : অপারেশন চেষ্টার মধ্যে অপেক্ষা করার সর্বোচ্চ সময়

maxTime long : অপারেশনটি চালিয়ে যাওয়ার জন্য মোট আনুমানিক সর্বোচ্চ সময়

runnable IRunUtil.IRunnableResult : IRunUtil.IRunnableResult চালানোর জন্য

ফেরত
boolean maxTime শেষ হওয়ার আগে অপারেশনটি সফলভাবে সম্পন্ন হলে true

runFixedTimedRetry

public boolean runFixedTimedRetry (long opTimeout, 
                long pollInterval, 
                long maxTime, 
                IRunUtil.IRunnableResult runnable)

একটি অপারেশন সফল না হওয়া পর্যন্ত সেটিকে ব্লক করে একাধিকবার সম্পাদন করে।

প্যারামিটার
opTimeout long : একটি একক অপারেশন চেষ্টার জন্য অপেক্ষা করার সর্বোচ্চ সময় (মিলিসেকেন্ডে)

pollInterval long : অপারেশন চেষ্টার মধ্যে অপেক্ষা করার প্রাথমিক সময়

maxTime long : অপারেশনটি চালিয়ে যাওয়ার জন্য মোট আনুমানিক সর্বোচ্চ সময়

runnable IRunUtil.IRunnableResult : IRunUtil.IRunnableResult চালানোর জন্য

ফেরত
boolean maxTime শেষ হওয়ার আগে অপারেশনটি সফলভাবে সম্পন্ন হলে true

runFixedTimedRetryWithOutputMonitor

public boolean runFixedTimedRetryWithOutputMonitor (long opTimeout, 
                long idleOutputTimeout, 
                long pollInterval, 
                long maxTime, 
                IRunUtil.IRunnableResult runnable)

একটি অপারেশন সফল না হওয়া পর্যন্ত এটিকে ব্লক করে এবং একাধিকবার সম্পাদন করে। এছাড়াও, এটি কার্যকলাপের জন্য আউটপুট স্ট্রিমগুলি পর্যবেক্ষণ করে এবং একটি নির্দিষ্ট সময় ধরে কোনো স্ট্রিম কার্যকলাপ পরিলক্ষিত না হলে প্রক্রিয়াটি বাতিল করে দেয়। যদি idleOutputTimeout-এর মান শূন্য সেট করা থাকে, তাহলে কোনো স্ট্রিম পর্যবেক্ষণ করা হবে না।

প্যারামিটার
opTimeout long : একটি একক অপারেশন চেষ্টার জন্য অপেক্ষা করার সর্বোচ্চ সময় (মিলিসেকেন্ডে)

idleOutputTimeout long : আউটপুট স্ট্রিমগুলিতে আউটপুটের জন্য অপেক্ষা করার সর্বোচ্চ সময় (মিলিসেকেন্ডে)

pollInterval long : অপারেশন চেষ্টার মধ্যে অপেক্ষা করার প্রাথমিক সময়

maxTime long : অপারেশনটি চালিয়ে যাওয়ার জন্য মোট আনুমানিক সর্বোচ্চ সময়

runnable IRunUtil.IRunnableResult : IRunUtil.IRunnableResult চালানোর জন্য

ফেরত
boolean maxTime শেষ হওয়ার আগে অপারেশনটি সফলভাবে সম্পন্ন হলে true

রানটাইমড

public CommandStatus runTimed (long timeout, 
                IRunUtil.IRunnableResult runnable, 
                boolean logErrors)

একটি অপারেশনকে ব্লক করে ও সম্পাদন করে এবং নির্দিষ্ট সময়ের বেশি সময় লাগলে তা বাতিল করে দেয়।

প্যারামিটার
timeout long : অপেক্ষা করার সর্বোচ্চ সময় (মিলিসেকেন্ডে)

runnable IRunUtil.IRunnableResult : IRunUtil.IRunnableResult চালানোর জন্য

logErrors boolean : ব্যতিক্রম ঘটলে ত্রুটি লগ করা হবে কি না।

ফেরত
CommandStatus অপারেশনের CommandStatus ফলাফল।

রানটাইমডকমান্ড

public CommandResult runTimedCmd (long timeout, 
                String... command)

সিস্টেম কমান্ড কার্যকর করার জন্য একটি সহায়ক মেথড, এবং নির্দিষ্ট সময়ের বেশি সময় লাগলে এটি বাতিল করে দেয়।

প্যারামিটার
timeout long : অপেক্ষা করার সর্বোচ্চ সময় (মিলিসেকেন্ডে)। ০ মানে কোনো টাইমআউট নেই।

command String : নির্দিষ্ট সিস্টেম কমান্ড এবং ঐচ্ছিকভাবে exec-এর আর্গুমেন্টসমূহ

ফেরত
CommandResult একটি CommandResult যাতে কমান্ড চালানোর ফলাফল থাকে

রানটাইমডকমান্ড

public CommandResult runTimedCmd (long timeout, 
                OutputStream stdout, 
                OutputStream stderr, 
                String... command)

সিস্টেম কমান্ড কার্যকর করার জন্য একটি সহায়ক মেথড; নির্দিষ্ট সময়ের বেশি সময় লাগলে এটি বাতিল করে দেয় এবং নির্দিষ্ট করা থাকলে আউটপুট ফাইলে রিডাইরেক্ট করে। এভাবে OutputStream প্রদান করা হলে, ফাংশনের শেষে সেগুলো খোলা রাখা হবে।

প্যারামিটার
timeout long : টাইমআউট (মিলিসেকেন্ডে অপেক্ষা করার সর্বোচ্চ সময়)। ০ মানে কোনো টাইমআউট নেই।

stdout OutputStream : যে OutputStream স্ট্যান্ডার্ড আউটপুট পাঠানো হবে। এটি নাল হতে পারে।

stderr OutputStream : যে OutputStream ত্রুটির আউটপুট পাঠানো হবে। এটি নাল (null) হতে পারে।

command String : নির্দিষ্ট সিস্টেম কমান্ড এবং ঐচ্ছিকভাবে exec-এর আর্গুমেন্টসমূহ

ফেরত
CommandResult একটি CommandResult যাতে কমান্ড চালানোর ফলাফল থাকে

রানটাইমডকমান্ডরিট্রাই

public CommandResult runTimedCmdRetry (long timeout, 
                long retryInterval, 
                int attempts, 
                String... command)

সিস্টেম কমান্ড কার্যকর করার জন্য একটি সহায়ক মেথড, এবং নির্দিষ্ট সময়ের বেশি সময় লাগলে এটি বাতিল করে দেয়।

প্যারামিটার
timeout long : প্রতিটি চেষ্টার জন্য অপেক্ষা করার সর্বোচ্চ সময় (মিলিসেকেন্ডে)

retryInterval long : কমান্ড পুনরায় চেষ্টার মধ্যে অপেক্ষার সময়

attempts int : চেষ্টা করার সর্বোচ্চ সংখ্যা

command String : নির্দিষ্ট সিস্টেম কমান্ড এবং ঐচ্ছিকভাবে exec-এর আর্গুমেন্টসমূহ

ফেরত
CommandResult একটি CommandResult যাতে কমান্ড চালানোর ফলাফল থাকে

runTimedCmdRetryWithOutputMonitor

public CommandResult runTimedCmdRetryWithOutputMonitor (long timeout, 
                long idleOutputTimeout, 
                long retryInterval, 
                int attempts, 
                String... command)

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

প্যারামিটার
timeout long : প্রতিটি চেষ্টার জন্য অপেক্ষা করার সর্বোচ্চ সময় (মিলিসেকেন্ডে)

idleOutputTimeout long : আউটপুট স্ট্রিমগুলিতে আউটপুটের জন্য অপেক্ষা করার সর্বোচ্চ সময় (মিলিসেকেন্ডে)

retryInterval long : কমান্ড পুনরায় চেষ্টার মধ্যে অপেক্ষার সময়

attempts int : চেষ্টা করার সর্বোচ্চ সংখ্যা

command String : নির্দিষ্ট সিস্টেম কমান্ড এবং ঐচ্ছিকভাবে exec-এর আর্গুমেন্টসমূহ

ফেরত
CommandResult একটি CommandResult যাতে কমান্ড চালানোর ফলাফল থাকে

রানটাইমডকমান্ডসাইলেন্টলি

public CommandResult runTimedCmdSilently (long timeout, 
                String... command)

সিস্টেম কমান্ড কার্যকর করার জন্য একটি সহায়ক মেথড, যা নির্দিষ্ট সময়ের চেয়ে বেশি সময় নিলে বন্ধ হয়ে যায়। এটি runTimedCmd(long,String...) এর অনুরূপ, কিন্তু ব্যতিক্রম ঘটলে কোনো ত্রুটি লগ করে না।

প্যারামিটার
timeout long : অপেক্ষা করার সর্বোচ্চ সময় (মিলিসেকেন্ডে)

command String : নির্দিষ্ট সিস্টেম কমান্ড এবং ঐচ্ছিকভাবে exec-এর আর্গুমেন্টসমূহ

ফেরত
CommandResult একটি CommandResult যাতে কমান্ড চালানোর ফলাফল থাকে

runTimedCmdSilentlyRetry

public CommandResult runTimedCmdSilentlyRetry (long timeout, 
                long retryInterval, 
                int attempts, 
                String... command)

সিস্টেম কমান্ড কার্যকর করার জন্য একটি সহায়ক মেথড, যা নির্দিষ্ট সময়ের চেয়ে বেশি সময় নিলে বাতিল হয়ে যায়। এটি runTimedCmdRetry(long,long,int,String[]) -এর অনুরূপ, কিন্তু ব্যতিক্রম ঘটলে কোনো ত্রুটি লগ করে না।

প্যারামিটার
timeout long : অপেক্ষা করার সর্বোচ্চ সময় (মিলিসেকেন্ডে)

retryInterval long : কমান্ড পুনরায় চেষ্টার মধ্যে অপেক্ষার সময়

attempts int : চেষ্টা করার সর্বোচ্চ সংখ্যা

command String : নির্দিষ্ট সিস্টেম কমান্ড এবং ঐচ্ছিকভাবে exec-এর আর্গুমেন্টসমূহ

ফেরত
CommandResult একটি CommandResult যাতে কমান্ড চালানোর ফলাফল থাকে

ইনপুট সহ রানটাইমড কমান্ড

public CommandResult runTimedCmdWithInput (long timeout, 
                String input, 
                String... command)

stdin ইনপুট প্রয়োজন এমন একটি সিস্টেম কমান্ড কার্যকর করার জন্য সহায়ক মেথড, এবং নির্দিষ্ট সময়ের বেশি সময় লাগলে এটি বাতিল হয়ে যায়।

প্যারামিটার
timeout long : অপেক্ষা করার সর্বোচ্চ সময় (মিলিসেকেন্ডে)

input String : প্রসেসে পাঠানোর জন্য stdin ইনপুট।

command String : নির্দিষ্ট সিস্টেম কমান্ড এবং ঐচ্ছিকভাবে exec-এর আর্গুমেন্টসমূহ

ফেরত
CommandResult একটি CommandResult যাতে কমান্ড চালানোর ফলাফল থাকে

ইনপুট সহ রানটাইমড কমান্ড

public CommandResult runTimedCmdWithInput (long timeout, 
                String input, 
                List<String> command)

stdin ইনপুট প্রয়োজন এমন একটি সিস্টেম কমান্ড কার্যকর করার জন্য সহায়ক মেথড, এবং নির্দিষ্ট সময়ের বেশি সময় লাগলে এটি বাতিল হয়ে যায়।

প্যারামিটার
timeout long : অপেক্ষা করার সর্বোচ্চ সময় (মিলিসেকেন্ডে)

input String : প্রসেসে পাঠানোর জন্য stdin ইনপুট।

command List : সিস্টেম কমান্ড এবং ঐচ্ছিকভাবে exec-এর আর্গুমেন্ট ধারণকারী List

ফেরত
CommandResult একটি CommandResult যাতে কমান্ড চালানোর ফলাফল থাকে

ইনপুট সহ রানটাইমড কমান্ড

public CommandResult runTimedCmdWithInput (long timeout, 
                String input, 
                File stdoutFile, 
                File stderrFile, 
                String... command)

সিস্টেম কমান্ড কার্যকর করার, নির্দিষ্ট সময়ের বেশি সময় লাগলে তা বাতিল করার, এবং প্রয়োজন অনুযায়ী আউটপুট ফাইলে পাঠানোর সহায়ক মেথড।

প্যারামিটার
timeout long : টাইমআউট (মিলিসেকেন্ডে অপেক্ষা করার সর্বোচ্চ সময়)। ০ মানে কোনো টাইমআউট নেই।

input String : প্রসেসে পাঠানোর জন্য stdin ইনপুট।

stdoutFile File : যে File std আউটপুট পুনঃনির্দেশিত হবে। এটি null হতে পারে।

stderrFile File : যে File ত্রুটির আউটপুট পুনঃনির্দেশিত হবে। এটি নাল (null) হতে পারে।

command String : নির্দিষ্ট সিস্টেম কমান্ড এবং ঐচ্ছিকভাবে exec-এর আর্গুমেন্টসমূহ

ফেরত
CommandResult একটি CommandResult যাতে কমান্ড চালানোর ফলাফল থাকে

ইনপুট রিডাইরেক্ট সহ রানটাইমড কমান্ড

public CommandResult runTimedCmdWithInputRedirect (long timeout, 
                File inputRedirect, 
                String... command)

একটি সিস্টেম কমান্ড কার্যকর করার জন্য সহায়ক মেথড, যার জন্য ফাইল থেকে Stdin রিডাইরেক্ট করার প্রয়োজন হয় এবং নির্দিষ্ট সময়ের বেশি সময় লাগলে এটি বাতিল হয়ে যায়।

প্যারামিটার
timeout long : অপেক্ষা করার সর্বোচ্চ সময় (মিলিসেকেন্ডে)

inputRedirect File : ProcessBuilder.redirectInput() ব্যবহার করে যে File স্ট্যান্ডার্ড ইনপুট হিসেবে রিডাইরেক্ট করা হবে। যদি null হয়, তাহলে stdin রিডাইরেক্ট করা হবে না।

command String : নির্দিষ্ট সিস্টেম কমান্ড এবং ঐচ্ছিকভাবে exec-এর আর্গুমেন্টসমূহ

ফেরত
CommandResult একটি CommandResult যাতে কমান্ড চালানোর ফলাফল থাকে

আউটপুট মনিটর সহ রানটাইমড কমান্ড

public CommandResult runTimedCmdWithOutputMonitor (long timeout, 
                long idleOutputTimeout, 
                String... command)

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

প্যারামিটার
timeout long : অপেক্ষা করার সর্বোচ্চ সময় (মিলিসেকেন্ডে)। ০ মানে কোনো টাইমআউট নেই।

idleOutputTimeout long : আউটপুট স্ট্রিমগুলিতে আউটপুটের জন্য অপেক্ষা করার সর্বোচ্চ সময় (মিলিসেকেন্ডে)

command String : নির্দিষ্ট সিস্টেম কমান্ড এবং ঐচ্ছিকভাবে exec-এর আর্গুমেন্টসমূহ

ফেরত
CommandResult একটি CommandResult যাতে কমান্ড চালানোর ফলাফল থাকে

আউটপুট মনিটর সহ রানটাইমড কমান্ড

public CommandResult runTimedCmdWithOutputMonitor (long timeout, 
                long idleOutputTimeout, 
                OutputStream stdout, 
                OutputStream stderr, 
                String... command)

সিস্টেম কমান্ড কার্যকর করার জন্য একটি সহায়ক মেথড; নির্দিষ্ট সময়ের বেশি সময় লাগলে এটি বাতিল করে দেয় এবং নির্দিষ্ট করা থাকলে আউটপুট ফাইলে রিডাইরেক্ট করে। এভাবে OutputStream প্রদান করা হলে, ফাংশনের শেষে সেগুলো খোলা রাখা হবে।

প্যারামিটার
timeout long : টাইমআউট (মিলিসেকেন্ডে অপেক্ষা করার সর্বোচ্চ সময়)। ০ মানে কোনো টাইমআউট নেই।

idleOutputTimeout long : আউটপুট স্ট্রিমগুলিতে আউটপুটের জন্য অপেক্ষা করার সর্বোচ্চ সময় (মিলিসেকেন্ডে)

stdout OutputStream : যে OutputStream স্ট্যান্ডার্ড আউটপুট পাঠানো হবে। এটি নাল হতে পারে।

stderr OutputStream : যে OutputStream ত্রুটির আউটপুট পাঠানো হবে। এটি নাল (null) হতে পারে।

command String : নির্দিষ্ট সিস্টেম কমান্ড এবং ঐচ্ছিকভাবে exec-এর আর্গুমেন্টসমূহ

ফেরত
CommandResult একটি CommandResult যাতে কমান্ড চালানোর ফলাফল থাকে

রানটাইমডরিট্রাই

public boolean runTimedRetry (long opTimeout, 
                long pollInterval, 
                int attempts, 
                IRunUtil.IRunnableResult runnable)

একটি অপারেশন সফল না হওয়া পর্যন্ত সেটিকে ব্লক করে একাধিকবার সম্পাদন করে।

প্যারামিটার
opTimeout long : একটি অপারেশন চেষ্টার জন্য অপেক্ষা করার সর্বোচ্চ সময় (মিলিসেকেন্ডে)

pollInterval long : কমান্ড পুনরায় চেষ্টার মধ্যে অপেক্ষার সময়

attempts int : চেষ্টা করার সর্বোচ্চ সংখ্যা

runnable IRunUtil.IRunnableResult : IRunUtil.IRunnableResult চালানোর জন্য

ফেরত
boolean চেষ্টার সংখ্যা পৌঁছানোর আগেই অপারেশনটি সফলভাবে সম্পন্ন হলে true

runTimedRetryWithOutputMonitor

public boolean runTimedRetryWithOutputMonitor (long opTimeout, 
                long idleOutputTimeout, 
                long pollInterval, 
                int attempts, 
                IRunUtil.IRunnableResult runnable)

একটি অপারেশন সফল না হওয়া পর্যন্ত এটিকে ব্লক করে এবং একাধিকবার সম্পাদন করে। এছাড়াও, এটি কার্যকলাপের জন্য আউটপুট স্ট্রিমগুলি পর্যবেক্ষণ করে এবং একটি নির্দিষ্ট সময় ধরে কোনো স্ট্রিম কার্যকলাপ পরিলক্ষিত না হলে প্রক্রিয়াটি বাতিল করে দেয়। যদি idleOutputTimeout-এর মান শূন্য সেট করা থাকে, তাহলে কোনো স্ট্রিম পর্যবেক্ষণ করা হবে না।

প্যারামিটার
opTimeout long : একটি অপারেশন চেষ্টার জন্য অপেক্ষা করার সর্বোচ্চ সময় (মিলিসেকেন্ডে)

idleOutputTimeout long : আউটপুট স্ট্রিমগুলিতে আউটপুটের জন্য অপেক্ষা করার সর্বোচ্চ সময় (মিলিসেকেন্ডে)

pollInterval long : কমান্ড পুনরায় চেষ্টার মধ্যে অপেক্ষার সময়

attempts int : চেষ্টা করার সর্বোচ্চ সংখ্যা

runnable IRunUtil.IRunnableResult : IRunUtil.IRunnableResult চালানোর জন্য

ফেরত
boolean চেষ্টার সংখ্যা পৌঁছানোর আগেই অপারেশনটি সফলভাবে সম্পন্ন হলে true

রানটাইমডউইথআউটপুটমনিটর

public CommandStatus runTimedWithOutputMonitor (long timeout, 
                long idleOutputTimeout, 
                IRunUtil.IRunnableResult runnable, 
                boolean logErrors)

একটি অপারেশনকে ব্লক করে ও সম্পাদন করে এবং নির্দিষ্ট সময়ের চেয়ে বেশি সময় নিলে তা বাতিল করে দেয়। এছাড়াও, এটি আউটপুট স্ট্রিমগুলিতে কার্যকলাপের জন্য নজর রাখে এবং নির্দিষ্ট সময় ধরে কোনো স্ট্রিম কার্যকলাপ পরিলক্ষিত না হলে তা বাতিল করে দেয়। যদি idleOutputTimeout-কে শূন্যতে সেট করা হয়, তাহলে কোনো স্ট্রিম পর্যবেক্ষণ করা হবে না।

প্যারামিটার
timeout long : অপেক্ষা করার সর্বোচ্চ সময় (মিলিসেকেন্ডে)

idleOutputTimeout long : আউটপুট স্ট্রিমগুলিতে আউটপুটের জন্য অপেক্ষা করার সর্বোচ্চ সময় (মিলিসেকেন্ডে)

runnable IRunUtil.IRunnableResult : IRunUtil.IRunnableResult চালানোর জন্য

logErrors boolean : ব্যতিক্রম ঘটলে ত্রুটি লগ করা হবে কি না।

ফেরত
CommandStatus অপারেশনের CommandStatus ফলাফল।

সেটএনভভেরিয়েবল

public void setEnvVariable (String name, 
                String value)

সিস্টেম কমান্ড চালানোর সময় ব্যবহার করার জন্য একটি এনভায়রনমেন্ট ভেরিয়েবল সেট করে।

প্যারামিটার
name String : ভেরিয়েবলের নাম

value String : ভেরিয়েবলের মান

সেটএনভভেরিয়েবলপ্রায়োরিটি

public void setEnvVariablePriority (IRunUtil.EnvPriority priority)

একটি প্রসেস তৈরি করার সময়, এনভায়রনমেন্ট ভেরিয়েবল সেট করার চেয়ে আনসেট করার অগ্রাধিকার বেশি হবে কিনা তা নির্ধারণ করুন। ডিফল্টরূপে, আনসেট করার অগ্রাধিকার বেশি: অর্থাৎ, যদি একই নামের কোনো ভেরিয়েবল সেট করার চেষ্টা করা হয়, তবে তা করা হবে না, কারণ ভেরিয়েবলটি আনসেট করা থাকবে। এটি ডিফল্ট IRunUtil ইনস্ট্যান্সে ব্যবহার করা যাবে না।

প্যারামিটার
priority IRunUtil.EnvPriority

ভবিষ্যতে বাধাযোগ্য সেট করুন

public void setInterruptibleInFuture (Thread thread, 
                long timeMs)

কিছুক্ষণ অপেক্ষার পর বাধাযোগ্য হিসেবে সেট করা হয়েছে। অবশেষে টার্মিনেট করা নিশ্চিত করতে ERROR(/CommandScheduler#shutdownHard())

প্যারামিটার
thread Thread : যে থ্রেডটি বাধাযোগ্য হয়ে উঠবে।

timeMs long : ইন্টারাপ্টিবল সেট করার আগে অপেক্ষা করার সময়।

setLinuxInterruptProcess

public void setLinuxInterruptProcess (boolean interrupt)

#runTimed মেথডের মাধ্যমে চলমান কোনো প্রসেস টাইমআউটে পৌঁছালে, সেটিকে লিনাক্সের 'kill' কমান্ড দিয়ে বন্ধ করার অনুমতি দেওয়া হয়েছে। এটি ডিফল্ট IRunUtil ইনস্ট্যান্সে ব্যবহার করা যাবে না।

প্যারামিটার
interrupt boolean

Stderr-কে Stdout-এ পুনঃনির্দেশ করুন

public void setRedirectStderrToStdout (boolean redirect)

সিস্টেম কমান্ড চালানোর সময় স্ট্যান্ডার্ড এরর স্ট্রিমকে স্ট্যান্ডার্ড আউটপুট স্ট্রিমে রিডাইরেক্ট করার জন্য সেট করুন। এর প্রাথমিক মান হলো ফলস।

প্যারামিটার
redirect boolean : পুনঃনির্দেশ করা হবে কি না তার নতুন মান

কাজের দিক সেট করুন

public void setWorkingDir (File dir)

সিস্টেম কমান্ডের জন্য ওয়ার্কিং ডিরেক্টরি নির্ধারণ করে।

প্যারামিটার
dir File : ওয়ার্কিং ডিরেক্টরি

ঘুম

public void sleep (long time)

যেকোনো ব্যতিক্রম উপেক্ষা করে নির্দিষ্ট সময়ের জন্য অপেক্ষা করার সহায়ক পদ্ধতি।

প্যারামিটার
time long : কতক্ষণ অপেক্ষা করতে হবে। ০ বা তার কম মান উপেক্ষা করা হবে।

unsetEnvVariable

public void unsetEnvVariable (String key)

একটি এনভায়রনমেন্ট ভেরিয়েবল আনসেট করে, ফলে সিস্টেম কমান্ডগুলো এই এনভায়রনমেন্ট ভেরিয়েবল ছাড়াই চলে। এনভায়রনমেন্ট ভেরিয়েবলগুলো প্যারেন্ট প্রসেস থেকে ইনহেরিট করতে পারে, তাই আমাদের ProcessBuilder.environment() থেকে এনভায়রনমেন্ট ভেরিয়েবলটি ডিলিট করতে হবে।

প্যারামিটার
key String : ভেরিয়েবলের নাম

আরও দেখুন: