Komut Planlayıcı

public class CommandScheduler
extends Object implements ICommandScheduler

java.lang.Object
com.android.tradefed.command.CommandScheduler


Mevcut tüm cihazlarda TradeFederation komutlarını çalıştırmak için bir zamanlayıcı.

Yürütme sürelerinin toplam çalışma sayısına göre çalıştırılacak komutlara öncelik vermeye çalışır. örneğin seyrek veya hızlı çalışan komutlar, uzun süre çalışan komutlara göre öncelik kazanır.

Kapatılana kadar sonsuza kadar arka planda çalışır.

Özet

kamu inşaatçılar

CommandScheduler ()

Bir CommandScheduler oluşturur.

Genel yöntemler

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

Zamanlayıcıya bir komut ekler.

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

Verilen dosyadaki tüm komutları zamanlayıcıya ekler

void await ()

Varsa, eski TF'den aktarımın tamamlanmasını beklemek de dahil olmak üzere zamanlayıcının çalışmaya başlamasını bekler.

static TradefedDelegator checkDelegation (String[] args)

Çalıştırmayı devretmemiz gerekip gerekmediğini görmek için komut satırına dayalı bir temsilci oluşturun.

static createReleaseMap ( IInvocationContext context, Throwable e)

Uygun şekilde yayınlanabilmeleri için cihazların durumunun bir haritasını oluşturun.

ISandbox createSandbox ()

Çağırmanın çalıştırmak için kullanacağı bir ISandbox oluşturun.

void displayCommandQueue (PrintWriter printWriter)

Komut yürütme kuyruğunun durumu hakkında ayrıntılı hata ayıklama bilgilerinin çıktısını alın.

void displayCommandsInfo (PrintWriter printWriter, String regex)

Mevcut komutların bir listesini çıkarın.

void displayInvocationsInfo (PrintWriter printWriter)

Geçerli çağrıların bir listesini görüntüler.

void dumpCommandsXml (PrintWriter printWriter, String regex)

Geçerli tüm komutlar için belirtilen tüm Option değerleri ile komut için genişletilmiş xml dosyasını boşaltın.

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

Zaten tahsis edilmiş cihazlarda doğrudan komut yürütün.

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

Doğrudan bir aygıtı tahsis eder ve zaten var olan bir IInvocationContext kullanarak komut sırasına eklemeden bir komutu yürütür.

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

Bir aygıtı doğrudan tahsis eder ve bir komutu komut sırasına eklemeden yürütür.

CommandFileWatcher getCommandFileWatcher ()

Bu zamanlayıcı için uygun CommandFileWatcher'ı edinin

int getExecutingCommandCount ()

Yürütme durumundaki Komutların sayısını döndürür.

CommandScheduler.HostState getHostState ()
String getInvocationInfo (int invocationId)

Çağırma kimliğini belirten bir çağrıyla ilgili bilgileri döndürün.

CommandRunner.ExitCode getLastInvocationExitCode ()

Çalışan son çağrının hata kodunu döndürün.

Throwable getLastInvocationThrowable ()

Çalışan son çağrıdan Throwable geri getirin.

int getReadyCommandCount ()

Sıradaki hazır durumdaki Komutların sayısını döndürür.

long getShutdownTimeout ()
boolean isDeviceInInvocationThread ( ITestDevice device)

Aygıt etkin bir çağırma iş parçacığı tarafından kullanılıyorsa true değerini döndürür.

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

Zamanlayıcıdan tüm komutları kaldır

void run ()

Bu iş parçacığının ana yürütme bloğu.

void setClearcutClient (ClearcutClient client)

İstemciyi kablo demeti verilerini rapor edecek şekilde ayarlayın

boolean shouldShutdownOnCmdfileError ()

Komut hatalarında zamanlayıcıyı kapatmamız gerekirse true döndürün

void shutdown (boolean notifyStop)

Komut zamanlayıcıyı incelikle kapatmayı deneyin.

void shutdownHard (boolean killAdb)

Komut zamanlayıcıyı zorla kapatmayı deneyin.

void shutdownHard ()

Komut zamanlayıcıyı zorla kapatmayı deneyin.

void shutdownOnEmpty ()

shutdown() benzer, ancak bunun yerine çıkmadan önce tüm komutların yürütülmesini bekler.

void start ()

Günlüğe kaydetmenin ayarlanması, DeviceManager başlatılması vb. dahil olmak üzere zamanlayıcıyı başlatır

boolean stopInvocation ( ITestInvocation invocation)

Çalışan bir çağrıyı durdurun.

boolean stopInvocation (int invocationId, String cause)

Kimliğini belirterek çalışan bir çağrıyı durdurun.

Korumalı yöntemler

void cleanUp ()

Biz çıkmadan önce günlükleri kapatır ve gerekli diğer temizleme işlemlerini yapar.

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

IConfigurationFactory başvuru almak için fabrika yöntemi

DeviceManagementGrpcServer getDeviceManagementServer ()
IDeviceManager getDeviceManager ()

IDeviceManager referans almak için fabrika yöntemi

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

IGlobalConfiguration içinde bildirilen IKeyStoreFactory veya hiçbiri tanımlanmamışsa null'u kullanarak bir IKeyStoreClient getirir.

TestInvocationManagementServer getTestInvocationManagementServer ()
void initLogging ()

ddmlib günlüğünü başlatır.

boolean isShutdown ()
void processReadyCommands ( IDeviceManager manager)

kamu inşaatçılar

Komut Planlayıcı

public CommandScheduler ()

Bir CommandScheduler oluşturur.

Not: start kullanılmadan önce çağrılmalıdır.

Genel yöntemler

komut ekle

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

Zamanlayıcıya bir komut ekler.

Bir komut, esas olarak, çalıştırılacak bir konfigürasyonun ve bununla ilişkili bağımsız değişkenlerin bir örneğidir.

"--help" bağımsız değişkeni belirtilirse, yapılandırma için yardım metni stdout'a gönderilir. Aksi takdirde, yapılandırma çalıştırılacak kuyruğa eklenecektir.

parametreler
args String : yapılandırma bağımsız değişkenleri.

İadeler
Pair <Boolean, Integer> Bir çift değer, komut başarıyla eklendiyse ilk değer bir Boolean true . İkinci değer, bilinen komut izleyici kimliğidir (negatif olmayan değer), komut başarıyla eklendiyse, tüm cihazlar için komut eklendiğinde 0, aksi takdirde -1 döndürür.

Atar
ConfigurationException

komut dosyası ekle

public void addCommandFile (String cmdFilePath, 
                 extraArgs)

Verilen dosyadaki tüm komutları zamanlayıcıya ekler

parametreler
cmdFilePath String : komut dosyasının dosya sistemi yolu

extraArgs : dosyadan ayrıştırılan her komuta eklenecek String bağımsız değişkenlerinden oluşan bir ERROR(/List) . Boş olabilir ancak boş olmamalıdır.

Atar
ConfigurationException

beklemek

public void await ()

Varsa, eski TF'den aktarımın tamamlanmasını beklemek de dahil olmak üzere zamanlayıcının çalışmaya başlamasını bekler.

yetkilendirmeyi kontrol et

public static TradefedDelegator checkDelegation (String[] args)

Çalıştırmayı devretmemiz gerekip gerekmediğini görmek için komut satırına dayalı bir temsilci oluşturun.

parametreler
args String

İadeler
TradefedDelegator

Atar
com.android.tradefed.config.ConfigurationException
ConfigurationException

ReleaseMap oluştur

public static  createReleaseMap (IInvocationContext context, 
                Throwable e)

Uygun şekilde yayınlanabilmeleri için cihazların durumunun bir haritasını oluşturun.

parametreler
context IInvocationContext

e Throwable

İadeler

sandbox oluştur

public ISandbox createSandbox ()

Çağırmanın çalıştırmak için kullanacağı bir ISandbox oluşturun.

İadeler
ISandbox

displayCommandQueue

public void displayCommandQueue (PrintWriter printWriter)

Komut yürütme kuyruğunun durumu hakkında ayrıntılı hata ayıklama bilgilerinin çıktısını alın.

displayCommandsInfo

public void displayCommandsInfo (PrintWriter printWriter, 
                String regex)

Mevcut komutların bir listesini çıkarın.

parametreler
printWriter PrintWriter : çıktı alınacak ERROR(/PrintWriter) .

regex String : Yazdırılmak için komutların eşleşmesi gereken normal ifade. Null ise, tüm komutlar yazdırılacaktır.

displayInvocationsInfo

public void displayInvocationsInfo (PrintWriter printWriter)

Geçerli çağrıların bir listesini görüntüler.

parametreler
printWriter PrintWriter : çıktı alınacak ERROR(/PrintWriter) .

dumpCommandsXml

public void dumpCommandsXml (PrintWriter printWriter, 
                String regex)

Geçerli tüm komutlar için belirtilen tüm Option değerleri ile komut için genişletilmiş xml dosyasını boşaltın.

parametreler
printWriter PrintWriter : Durumun çıkışının yapılacağı ERROR(/PrintWriter) .

regex String : xml dosyasının boşaltılması için komutların eşleşmesi gereken normal ifade. Null ise, tüm komutlar atılacaktır.

yürütme komutu

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

Zaten tahsis edilmiş cihazlarda doğrudan komut yürütün.

parametreler
listener ICommandScheduler.IScheduledInvocationListener : bilgilendirilecek ICommandScheduler.IScheduledInvocationListener

reservedDevices : ERROR(/List ) ERROR(/List ) kullanmak

args String : komut bağımsız değişkenleri

İadeler
long Zamanlanan komutun çağırma kimliği.

Atar
ConfigurationException

yürütme komutu

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

Doğrudan bir aygıtı tahsis eder ve zaten var olan bir IInvocationContext kullanarak komut sırasına eklemeden bir komutu yürütür.

parametreler
context IInvocationContext : mevcut bir IInvocationContext .

listener ICommandScheduler.IScheduledInvocationListener : bilgilendirilecek ICommandScheduler.IScheduledInvocationListener

args String : komut bağımsız değişkenleri

İadeler
long

Atar
ConfigurationException
NoDeviceException

yürütme komutu

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

Bir aygıtı doğrudan tahsis eder ve bir komutu komut sırasına eklemeden yürütür.

parametreler
listener ICommandScheduler.IScheduledInvocationListener : bilgilendirilecek ICommandScheduler.IScheduledInvocationListener

args String : komut bağımsız değişkenleri

İadeler
long Zamanlanan komutun çağırma kimliği.

Atar
ConfigurationException
NoDeviceException

GetCommandFileWatcher

public CommandFileWatcher getCommandFileWatcher ()

Bu zamanlayıcı için uygun CommandFileWatcher'ı edinin

İadeler
CommandFileWatcher

GetExecutingCommandCount

public int getExecutingCommandCount ()

Yürütme durumundaki Komutların sayısını döndürür.

İadeler
int

getHostState

public CommandScheduler.HostState getHostState ()

İadeler
CommandScheduler.HostState

getInvocationInfo

public String getInvocationInfo (int invocationId)

Çağırma kimliğini belirten bir çağrıyla ilgili bilgileri döndürün.

parametreler
invocationId int : çağrının izleme kimliği.

İadeler
String Çağrı hakkında bilgi içeren bir String .

getLastInvocationExitCode

public CommandRunner.ExitCode getLastInvocationExitCode ()

Çalışan son çağrının hata kodunu döndürün. Henüz bir çağrı yapılmadıysa 0 (hata yok) döndürün.

İadeler
CommandRunner.ExitCode

getLastInvocationThrowable

public Throwable getLastInvocationThrowable ()

Çalışan son çağrıdan Throwable geri getirin. Fırlatılabilir yoksa null döndürün.

İadeler
Throwable

getReadyCommandCount

public int getReadyCommandCount ()

Sıradaki hazır durumdaki Komutların sayısını döndürür.

İadeler
int

getShutdownZaman Aşımı

public long getShutdownTimeout ()

İadeler
long

isDeviceInvocationThread

public boolean isDeviceInInvocationThread (ITestDevice device)

Aygıt etkin bir çağırma iş parçacığı tarafından kullanılıyorsa true değerini döndürür.

parametreler
device ITestDevice

İadeler
boolean

Kapanıyor

public boolean isShuttingDown ()

İadeler
boolean

bildirFileChanged

public void notifyFileChanged (File cmdFile, 
                 extraArgs)

parametreler
cmdFile File

extraArgs

Tüm Komutları kaldır

public void removeAllCommands ()

Zamanlayıcıdan tüm komutları kaldır

koşmak

public void run ()

Bu iş parçacığının ana yürütme bloğu.

setClearcutClient

public void setClearcutClient (ClearcutClient client)

İstemciyi kablo demeti verilerini rapor edecek şekilde ayarlayın

parametreler
client ClearcutClient

shouldShutdownOnCmdfileError

public boolean shouldShutdownOnCmdfileError ()

Komut hatalarında zamanlayıcıyı kapatmamız gerekirse true döndürün

İadeler
boolean

kapat

public void shutdown (boolean notifyStop)

Komut zamanlayıcıyı incelikle kapatmayı deneyin.

parametreler
notifyStop boolean : doğruysa, TF kapatma çağrılarını bildirir.

kapatmaZor

public void shutdownHard (boolean killAdb)

Komut zamanlayıcıyı zorla kapatmayı deneyin.

shutdown() a benzer, ancak isteğe bağlı olarak, devam eden çağrıların daha hızlı tamamlanması için 'ilham verme' amacıyla adb bağlantısını da keser.

parametreler
killAdb boolean

kapatmaZor

public void shutdownHard ()

Komut zamanlayıcıyı zorla kapatmayı deneyin. shutdownHard(true) ile aynı.

kapatmaOnEmpty

public void shutdownOnEmpty ()

shutdown() benzer, ancak bunun yerine çıkmadan önce tüm komutların yürütülmesini bekler.

Herhangi bir komut döngü modundaysa zamanlayıcının asla çıkmayacağını unutmayın.

başlangıç

public void start ()

Günlüğe kaydetmenin ayarlanması, DeviceManager başlatılması vb. dahil olmak üzere zamanlayıcıyı başlatır

çağrıyı durdur

public boolean stopInvocation (ITestInvocation invocation)

Çalışan bir çağrıyı durdurun.

parametreler
invocation ITestInvocation

İadeler
boolean çağrı durdurulduysa true, aksi takdirde false

çağrıyı durdur

public boolean stopInvocation (int invocationId, 
                String cause)

Kimliğini belirterek çalışan bir çağrıyı durdurun.

parametreler
invocationId int : çağrının izleme kimliği.

cause String : çağrıyı durdurma nedeni.

İadeler
boolean çağrı durdurulduysa true, aksi takdirde false

Korumalı yöntemler

Temizlemek

protected void cleanUp ()

Biz çıkmadan önce günlükleri kapatır ve gerekli diğer temizleme işlemlerini yapar.

Birim testlerinin alay edebilmesi için açığa çıktı.

yapılandırma oluştur

protected IConfiguration createConfiguration (String[] args)

parametreler
args String

İadeler
IConfiguration

Atar
ConfigurationException

çağrı bağlamı oluştur

protected IInvocationContext createInvocationContext ()

İadeler
IInvocationContext

yürütme komutu

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

parametreler
context IInvocationContext

listener ICommandScheduler.IScheduledInvocationListener

reservedDevices

args String

İadeler
long

Atar
ConfigurationException

getConfigFactory

protected IConfigurationFactory getConfigFactory ()

IConfigurationFactory başvuru almak için fabrika yöntemi

İadeler
IConfigurationFactory kullanılacak IConfigurationFactory

getDeviceManagementServer

protected DeviceManagementGrpcServer getDeviceManagementServer ()

İadeler
DeviceManagementGrpcServer

getDeviceManager

protected IDeviceManager getDeviceManager ()

IDeviceManager referans almak için fabrika yöntemi

İadeler
IDeviceManager kullanılacak IDeviceManager

getFeatureServer

protected TradefedFeatureServer getFeatureServer ()

İadeler
TradefedFeatureServer

getHostOptions

protected IHostOptions getHostOptions ()

İadeler
IHostOptions

getKeyStoreClient

protected IKeyStoreClient getKeyStoreClient ()

IGlobalConfiguration içinde bildirilen IKeyStoreFactory veya hiçbiri tanımlanmamışsa null'u kullanarak bir IKeyStoreClient getirir.

İadeler
IKeyStoreClient IKeyStoreClient

getTestInvocationManagementServer

protected TestInvocationManagementServer getTestInvocationManagementServer ()

İadeler
TestInvocationManagementServer

initLogging

protected void initLogging ()

ddmlib günlüğünü başlatır.

Birim testlerinin alay edebilmesi için açığa çıktı.

Kapatma

protected boolean isShutdown ()

İadeler
boolean

processReadyCommands

protected void processReadyCommands (IDeviceManager manager)

parametreler
manager IDeviceManager