CommandScheduler
public
class
CommandScheduler
extends Object
implements
ICommandScheduler
| java.lang.Object | |
| ↳ | com.android.tradefed.command.CommandScheduler |
TradeFederation komutlarını mevcut tüm cihazlarda çalıştırmak için bir planlayıcı.
Çalıştırılacak komutlara, yürütülme sürelerinin toplam çalışma sayısına göre öncelik vermeye çalışır. Örneğin, seyrek veya hızlı çalışan komutlara, uzun süredir çalışan komutlara göre öncelik verilir.
Kapatılana kadar arka planda süresiz olarak çalışır.
Özet
Herkese açık oluşturucular | |
|---|---|
CommandScheduler()
|
|
Herkese açık yöntemler | |
|---|---|
Pair<Boolean, Integer>
|
addCommand(String[] args)
Zamanlayıcıya bir komut ekler. |
void
|
addCommandFile(String cmdFilePath,
Belirtilen dosyadaki tüm komutları planlayıcıya ekler. |
void
|
await()
Planlayıcının çalışmaya başlamasını bekler. Gerekirse eski TF'den devretme işleminin tamamlanmasını da bekler. |
static
TradefedDelegator
|
checkDelegation(String[] args)
Çalıştırmanın temsilciye devredilmesi gerekip gerekmediğini görmek için komut satırına dayalı bir temsilci oluşturun. |
static
|
createReleaseMap(IInvocationContext context, Throwable e)
Cihaz durumunun haritasını oluşturarak cihazların uygun şekilde serbest bırakılmasını sağlayın. |
ISandbox
|
createSandbox()
Çağırmanın çalıştırmak için kullanacağı bir |
void
|
displayCommandQueue(PrintWriter printWriter)
Komut yürütme sırasının durumu hakkında ayrıntılı hata ayıklama bilgileri verir. |
void
|
displayCommandsInfo(PrintWriter printWriter, String regex)
Mevcut komutların listesini göster. |
void
|
displayInvocationsInfo(PrintWriter printWriter)
Mevcut çağrıların listesini gösterir. |
void
|
dumpCommandsXml(PrintWriter printWriter, String regex)
Tüm geçerli komutlar için belirtilen tüm |
long
|
execCommand(ICommandScheduler.IScheduledInvocationListener listener, ITestDevice device, String[] args)
Komutu, halihazırda ayrılmış cihazda doğrudan yürütün. |
long
|
execCommand(ICommandScheduler.IScheduledInvocationListener listener,
Komutu, halihazırda ayrılmış cihazlarda doğrudan yürütün. |
long
|
execCommand(IInvocationContext context, ICommandScheduler.IScheduledInvocationListener listener, String[] args)
Mevcut bir |
long
|
execCommand(ICommandScheduler.IScheduledInvocationListener listener, String[] args)
Cihazı doğrudan ayırır ve komut kuyruğuna eklemeden komut yürütür. |
CommandFileWatcher
|
getCommandFileWatcher()
Bu planlayıcı için uygun CommandFileWatcher'ı alın. |
int
|
getExecutingCommandCount()
Yürütülüyor durumundaki komut sayısını döndürür. |
CommandScheduler.HostState
|
getHostState()
|
String
|
getInvocationInfo(int invocationId)
Çağrı kimliğini belirterek bir çağrı hakkındaki bilgileri döndürün. |
CommandRunner.ExitCode
|
getLastInvocationExitCode()
Çalıştırılan son çağırmanın hata kodunu döndürür. |
Throwable
|
getLastInvocationThrowable()
Çalıştırılan son çağırmadan |
int
|
getReadyCommandCount()
Kuyrukta hazır durumda olan komut sayısını döndürür. |
long
|
getShutdownTimeout()
|
boolean
|
isDeviceInInvocationThread(ITestDevice device)
Cihaz 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,
|
void
|
removeAllCommands()
Tüm komutları planlayıcıdan kaldırma |
void
|
run()
Bu iş parçacığının ana yürütme bloğu. |
void
|
setClearcutClient(ClearcutClient client)
İstemciyi koşum verilerini raporlayacak şekilde ayarlama |
void
|
setMaxPollTime(long polling)
|
void
|
setPrintSchedulingWarning(boolean print)
|
boolean
|
shouldShutdownOnCmdfileError()
Komut hatalarında planlayıcıyı kapatmamız gerekiyorsa true değerini döndürür. |
void
|
shutdown(boolean notifyStop)
Komut planlayıcıyı düzgün bir şekilde kapatmaya çalışır. |
void
|
shutdownHard(boolean killAdb)
Komut planlayıcıyı zorla kapatmaya çalışır. |
void
|
shutdownHard()
Komut planlayıcıyı zorla kapatmaya çalışır. |
void
|
shutdownOnEmpty()
|
void
|
start()
Günlüğe kaydetme ayarları ve |
boolean
|
stopInvocation(ITestInvocation invocation)
Çalışan bir çağırmayı durdurun. |
boolean
|
stopInvocation(int invocationId, String cause)
Kimliğini belirterek çalışan bir çağırmayı durdurun. |
void
|
stopScheduling()
Yeni testlerin planlanmasını ve kabul edilmesini durdurur ancak Tradefed'i durdurmaz. |
Herkese açık oluşturucular
CommandScheduler
public CommandScheduler ()
CommandScheduler oluşturur.
Not: Kullanmadan önce start() işlevi çağrılmalıdır.
Herkese açık yöntemler
addCommand
public Pair<Boolean, Integer> addCommand (String[] args)
Zamanlayıcıya bir komut ekler.
Komut, temelde çalıştırılacak bir yapılandırmanın örneği ve ilişkili bağımsız değişkenleridir.
"--help" bağımsız değişkeni belirtilirse yapılandırmayla ilgili yardım metni stdout'a gönderilir. Aksi takdirde yapılandırma, çalıştırılmak üzere sıraya eklenir.
| Parametreler | |
|---|---|
args |
String: Yapılandırma bağımsız değişkenleri. |
| İlerlemeler | |
|---|---|
Pair<Boolean, Integer> |
Bir değer çifti. İlk değer, komut başarıyla eklendiyse Boole değeridir true. İkinci değer, komut başarıyla eklendiyse bilinen komut izleyici kimliğidir(negatif olmayan değer). Komut tüm cihazlar için eklendiğinde 0, aksi takdirde -1 döndürülür. |
| Dekoratif yastıklar | |
|---|---|
ConfigurationException |
|
addCommandFile
public void addCommandFile (String cmdFilePath,
extraArgs) Belirtilen dosyadaki tüm komutları planlayı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şkenlerinin ERROR(/List). Boş olabilir ancak null olmamalıdır. |
| Dekoratif yastıklar | |
|---|---|
ConfigurationException |
|
bekle
public void await ()
Planlayıcının çalışmaya başlamasını bekler. Gerekirse eski TF'den devretme işleminin tamamlanmasını da bekler.
checkDelegation
public static TradefedDelegator checkDelegation (String[] args)
Çalıştırmanın temsilciye devredilmesi gerekip gerekmediğini görmek için komut satırına dayalı bir temsilci oluşturun.
| Parametreler | |
|---|---|
args |
String |
| İlerlemeler | |
|---|---|
TradefedDelegator |
|
| Dekoratif yastıklar | |
|---|---|
|
com.android.tradefed.config.ConfigurationException |
ConfigurationException |
|
createReleaseMap
public staticcreateReleaseMap (IInvocationContext context, Throwable e)
Cihaz durumunun haritasını oluşturarak cihazların uygun şekilde serbest bırakılmasını sağlayın.
| Parametreler | |
|---|---|
context |
IInvocationContext |
e |
Throwable |
| İlerlemeler | |
|---|---|
|
|
createSandbox
public ISandbox createSandbox ()
Çağırmanın çalıştırmak için kullanacağı bir ISandbox oluşturun.
| İlerlemeler | |
|---|---|
ISandbox |
|
displayCommandQueue
public void displayCommandQueue (PrintWriter printWriter)
Komut yürütme sırasının durumu hakkında ayrıntılı hata ayıklama bilgileri verir.
displayCommandsInfo
public void displayCommandsInfo (PrintWriter printWriter,
String regex)Mevcut komutların listesini göster.
| Parametreler | |
|---|---|
printWriter |
PrintWriter: Çıkışın yapılacağı ERROR(/PrintWriter). |
regex |
String: Komutların yazdırılabilmesi için eşleştirilmesi gereken normal ifade. Boşsa tüm komutlar yazdırılır. |
displayInvocationsInfo
public void displayInvocationsInfo (PrintWriter printWriter)
Mevcut çağrıların listesini gösterir.
| Parametreler | |
|---|---|
printWriter |
PrintWriter: Çıkışın yapılacağı ERROR(/PrintWriter). |
dumpCommandsXml
public void dumpCommandsXml (PrintWriter printWriter,
String regex)Tüm geçerli komutlar için belirtilen tüm Option değerleriyle komutun genişletilmiş XML dosyasını dökün.
| Parametreler | |
|---|---|
printWriter |
PrintWriter: Durumun çıkışını almak için ERROR(/PrintWriter). |
regex |
String: XML dosyasının dökümünün alınması için komutların eşleştirilmesi gereken normal ifade. Boşsa tüm komutlar dökülür. |
execCommand
public long execCommand (ICommandScheduler.IScheduledInvocationListener listener, ITestDevice device, String[] args)
Komutu, halihazırda ayrılmış cihazda doğrudan yürütün.
| Parametreler | |
|---|---|
listener |
ICommandScheduler.IScheduledInvocationListener: bilgilendirilecek ICommandScheduler.IScheduledInvocationListener |
device |
ITestDevice: Kullanılacak ITestDevice |
args |
String: komut bağımsız değişkenleri |
| İlerlemeler | |
|---|---|
long |
Planlanmış komutun çağırma kimliği. |
| Dekoratif yastıklar | |
|---|---|
ConfigurationException |
|
execCommand
public long execCommand (ICommandScheduler.IScheduledInvocationListener listener,reservedDevices, String[] args)
Komutu, halihazırda ayrılmış cihazlarda doğrudan yürütün.
| Parametreler | |
|---|---|
listener |
ICommandScheduler.IScheduledInvocationListener: bilgilendirilecek ICommandScheduler.IScheduledInvocationListener |
reservedDevices |
: Kullanılacak ERROR(/List |
args |
String: komut bağımsız değişkenleri |
| İlerlemeler | |
|---|---|
long |
Planlanmış komutun çağırma kimliği. |
| Dekoratif yastıklar | |
|---|---|
ConfigurationException |
|
execCommand
public long execCommand (IInvocationContext context, ICommandScheduler.IScheduledInvocationListener listener, String[] args)
Mevcut bir IInvocationContext kullanarak cihazı doğrudan ayırır ve komut kuyruğuna eklemeden 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 |
| İlerlemeler | |
|---|---|
long |
|
| Dekoratif yastıklar | |
|---|---|
ConfigurationException |
|
NoDeviceException |
|
execCommand
public long execCommand (ICommandScheduler.IScheduledInvocationListener listener, String[] args)
Cihazı doğrudan ayırır ve komut kuyruğuna eklemeden komut yürütür.
| Parametreler | |
|---|---|
listener |
ICommandScheduler.IScheduledInvocationListener: bilgilendirilecek ICommandScheduler.IScheduledInvocationListener |
args |
String: komut bağımsız değişkenleri |
| İlerlemeler | |
|---|---|
long |
Planlanmış komutun çağırma kimliği. |
| Dekoratif yastıklar | |
|---|---|
ConfigurationException |
|
NoDeviceException |
|
getCommandFileWatcher
public CommandFileWatcher getCommandFileWatcher ()
Bu planlayıcı için uygun CommandFileWatcher'ı alın.
| İlerlemeler | |
|---|---|
CommandFileWatcher |
|
getExecutingCommandCount
public int getExecutingCommandCount ()
Yürütülüyor durumundaki komut sayısını döndürür.
| İlerlemeler | |
|---|---|
int |
|
getHostState
public CommandScheduler.HostState getHostState ()
| İlerlemeler | |
|---|---|
CommandScheduler.HostState |
|
getInvocationInfo
public String getInvocationInfo (int invocationId)
Çağrı kimliğini belirterek bir çağrı hakkındaki bilgileri döndürün.
| Parametreler | |
|---|---|
invocationId |
int: Çağırmanın izleme kimliği. |
| İlerlemeler | |
|---|---|
String |
Çağırma hakkında bilgi içeren bir String. |
getLastInvocationExitCode
public CommandRunner.ExitCode getLastInvocationExitCode ()
Çalıştırılan son çağırmanın hata kodunu döndürür. Henüz hiçbir çağırma çalıştırılmadıysa 0 (hata yok) değerini döndürür.
| İlerlemeler | |
|---|---|
CommandRunner.ExitCode |
|
getLastInvocationThrowable
public Throwable getLastInvocationThrowable ()
Çalıştırılan son çağırmadan Throwable değerini döndürür.
Atılabilir bir hata yoksa boş değer döndürür.
| İlerlemeler | |
|---|---|
Throwable |
|
getReadyCommandCount
public int getReadyCommandCount ()
Kuyrukta hazır durumda olan komut sayısını döndürür.
| İlerlemeler | |
|---|---|
int |
|
getShutdownTimeout
public long getShutdownTimeout ()
| İlerlemeler | |
|---|---|
long |
|
isDeviceInInvocationThread
public boolean isDeviceInInvocationThread (ITestDevice device)
Cihaz etkin bir çağırma iş parçacığı tarafından kullanılıyorsa true değerini döndürür.
| Parametreler | |
|---|---|
device |
ITestDevice |
| İlerlemeler | |
|---|---|
boolean |
|
isShuttingDown
public boolean isShuttingDown ()
| İlerlemeler | |
|---|---|
boolean |
|
notifyFileChanged
public void notifyFileChanged (File cmdFile,
extraArgs) | Parametreler | |
|---|---|
cmdFile |
File |
extraArgs |
|
removeAllCommands
public void removeAllCommands ()
Tüm komutları planlayıcıdan kaldırma
çalıştır
public void run ()
Bu iş parçacığının ana yürütme bloğu.
setClearcutClient
public void setClearcutClient (ClearcutClient client)
İstemciyi koşum verilerini raporlayacak şekilde ayarlama
| Parametreler | |
|---|---|
client |
ClearcutClient |
setMaxPollTime
public void setMaxPollTime (long polling)
| Parametreler | |
|---|---|
polling |
long |
setPrintSchedulingWarning
public void setPrintSchedulingWarning (boolean print)
| Parametreler | |
|---|---|
print |
boolean |
shouldShutdownOnCmdfileError
public boolean shouldShutdownOnCmdfileError ()
Komut hatalarında planlayıcıyı kapatmamız gerekiyorsa true değerini döndürür.
| İlerlemeler | |
|---|---|
boolean |
|
kapatma
public void shutdown (boolean notifyStop)
Komut planlayıcıyı düzgün bir şekilde kapatmaya çalışır.
| Parametreler | |
|---|---|
notifyStop |
boolean: Doğruysa TF kapatma çağrılarını bildirir. |
shutdownHard
public void shutdownHard (boolean killAdb)
Komut planlayıcıyı zorla kapatmaya çalışır.
shutdown() özelliğine benzer ancak devam eden çağırmaların daha hızlı tamamlanmasını "sağlamak" için isteğe bağlı olarak adb bağlantısını da sonlandırır.
| Parametreler | |
|---|---|
killAdb |
boolean |
shutdownHard
public void shutdownHard ()
Komut planlayıcıyı zorla kapatmaya çalışır. shutdownHard(true) ile aynıdır.
shutdownOnEmpty
public void shutdownOnEmpty ()
shutdown()'ya benzer ancak çıkmadan önce tüm komutların yürütülmesini bekler.
Komutlardan herhangi biri döngü modundaysa zamanlayıcının asla çıkmayacağını unutmayın.
start
public void start ()
Günlüğe kaydetme ayarlarını yapma, DeviceManager başlatma gibi işlemler dahil olmak üzere zamanlayıcıyı başlatır.
stopInvocation
public boolean stopInvocation (ITestInvocation invocation)
Çalışan bir çağırmayı durdurun.
| Parametreler | |
|---|---|
invocation |
ITestInvocation |
| İlerlemeler | |
|---|---|
boolean |
Çağırma durdurulduysa doğru, aksi takdirde yanlış |
stopInvocation
public boolean stopInvocation (int invocationId,
String cause)Kimliğini belirterek çalışan bir çağırmayı durdurun.
| Parametreler | |
|---|---|
invocationId |
int: Çağırmanın izleme kimliği. |
cause |
String: Çağırmanın durdurulma nedeni. |
| İlerlemeler | |
|---|---|
boolean |
Çağırma durdurulduysa doğru, aksi takdirde yanlış |
stopScheduling
public void stopScheduling ()
Yeni testlerin planlanmasını ve kabul edilmesini durdurur ancak Tradefed'i durdurmaz. Bu, iki adımlı bir kapatma işlemi sağlamak için tasarlanmıştır. İlk adımda, çalışan tüm testler boşaltılır, ardından Tradefed işlemi sonlandırılır.
Korunan yöntemler
cleanUp
protected void cleanUp ()
Çıkmadan önce günlükleri kapatır ve gerekli diğer temizlik işlemlerini yapar.
Birim testlerinin taklit edebilmesi için kullanıma sunulur.
createConfiguration
protected IConfiguration createConfiguration (String[] args)
| Parametreler | |
|---|---|
args |
String |
| İlerlemeler | |
|---|---|
IConfiguration |
|
| Dekoratif yastıklar | |
|---|---|
ConfigurationException |
|
createInvocationContext
protected IInvocationContext createInvocationContext ()
| İlerlemeler | |
|---|---|
IInvocationContext |
|
dryRunCommandReporting
protected void dryRunCommandReporting (ICommandScheduler.IScheduledInvocationListener handler, IConfiguration config)
Belirli bir komutun deneme çalıştırması olup olmadığını belirler. Komut bir prova ise doğrulayın. Yapılandırmayla ilgili bir sorun varsa ConfigurationException oluşturulur.
| Parametreler | |
|---|---|
handler |
ICommandScheduler.IScheduledInvocationListener: Test doğrulama için etkinlikleri bildirmek üzere ERROR(/InvocationEventHandler). |
config |
IConfiguration |
| İlerlemeler | |
|---|---|
void |
Komut prova ise doğru, aksi takdirde yanlış. |
| Dekoratif yastıklar | |
|---|---|
|
com.android.tradefed.config.ConfigurationException |
ConfigurationException |
|
execCommand
protected long execCommand (IInvocationContext context, ICommandScheduler.IScheduledInvocationListener listener,reservedDevices, String[] args)
| Parametreler | |
|---|---|
context |
IInvocationContext |
listener |
ICommandScheduler.IScheduledInvocationListener |
reservedDevices |
|
args |
String |
| İlerlemeler | |
|---|---|
long |
|
| Dekoratif yastıklar | |
|---|---|
ConfigurationException |
|
getConfigFactory
protected IConfigurationFactory getConfigFactory ()
IConfigurationFactory referansını alma için fabrika yöntemi
| İlerlemeler | |
|---|---|
IConfigurationFactory |
IConfigurationFactory kullanmak için |
getDeviceManagementServer
protected DeviceManagementGrpcServer getDeviceManagementServer ()
| İlerlemeler | |
|---|---|
DeviceManagementGrpcServer |
|
getDeviceManager
protected IDeviceManager getDeviceManager ()
IDeviceManager referansını alma için fabrika yöntemi
| İlerlemeler | |
|---|---|
IDeviceManager |
IDeviceManager kullanmak için |
getFeatureServer
protected TradefedFeatureServer getFeatureServer ()
| İlerlemeler | |
|---|---|
TradefedFeatureServer |
|
getKeyStoreClient
protected IKeyStoreClient getKeyStoreClient ()
IGlobalConfiguration içinde belirtilen IKeyStoreFactory kullanılarak IKeyStoreClient getirilir. Tanımlanmamışsa null döndürülür.
| İlerlemeler | |
|---|---|
IKeyStoreClient |
IKeyStoreClient |
getTestInvocationManagementServer
protected TestInvocationManagementServer getTestInvocationManagementServer ()
| İlerlemeler | |
|---|---|
TestInvocationManagementServer |
|
initLogging
protected void initLogging ()
ddmlib günlüğünü başlatır.
Birim testlerinin taklit edebilmesi için kullanıma sunulur.
isShutdown
protected boolean isShutdown ()
| İlerlemeler | |
|---|---|
boolean |
|
processReadyCommands
protected void processReadyCommands (IDeviceManager manager)
| Parametreler | |
|---|---|
manager |
IDeviceManager |