CommandScheduler
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 planlayıcı.
Çalıştırılacak komutlara, yürütme sürelerinin toplam çalışma sayısına göre öncelik vermeye çalışır. Örneğin, seyrek veya hızlı çalışan komutlar, uzun süre çalışan komutlara göre öncelik alır.
Kapatılana kadar arka planda sonsuza kadar çalışır.
Özet
İç içe yerleştirilmiş sınıflar | |
---|---|
enum |
CommandScheduler.HostState
Ana makinenin farklı durumlarının enum değerleri |
Herkese açık kurucular | |
---|---|
CommandScheduler()
Bir |
Herkese açık yöntemler | |
---|---|
boolean
|
addCommand(String[] args)
Zamanlayıcıya bir komut ekler. |
void
|
addCommandFile(String cmdFilePath,
Belirtilen dosyadaki tüm komutları planlayıcıya ekler |
void
|
await()
Gerekirse eski TF'den devir teslim işleminin tamamlanmasını beklemek de dahil olmak üzere planlayıcının çalışmaya başlamasını bekler. |
static
TradefedDelegator
|
checkDelegation(String[] args)
Çalıştırmayı yetkilendirmemiz gerekip gerekmediğini görmek için komut satırına dayalı bir yetki veren kullanıcı oluşturun. |
void
|
completeHandover()
Komut planlayıcıyı, başlatılan bir devir teslimi sırasının tamamen tamamlandığı ve varsayılan bağlantı noktasında uzak yöneticisini yeniden başlatması gerektiği konusunda bilgilendirir. |
static
|
createReleaseMap(IInvocationContext context, Throwable e)
Cihazların uygun şekilde serbest bırakılabilmesi için cihazların durumunun haritasını oluşturun. |
ISandbox
|
createSandbox()
Çağrının çalıştırmak için kullanacağı bir |
void
|
displayCommandQueue(PrintWriter printWriter)
Komut yürütme kuyruğunun durumuyla ilgili ayrıntılı hata ayıklama bilgilerini görüntüleyin. |
void
|
displayCommandsInfo(PrintWriter printWriter, String regex)
Mevcut komutların listesini gösterir. |
void
|
displayInvocationsInfo(PrintWriter printWriter)
Mevcut çağrıların listesini görüntüler. |
void
|
dumpCommandsXml(PrintWriter printWriter, String regex)
Mevcut tüm komutlar için belirtilen tüm |
void
|
execCommand(ICommandScheduler.IScheduledInvocationListener listener, ITestDevice device, String[] args)
Komutu, önceden ayrılmış cihazda doğrudan yürütün. |
void
|
execCommand(IInvocationContext context, ICommandScheduler.IScheduledInvocationListener listener, String[] args)
Mevcut bir |
void
|
execCommand(ICommandScheduler.IScheduledInvocationListener listener, String[] args)
Bir cihazı doğrudan ayırır ve komutu komut kuyruğuna eklemeden yürütür. |
CommandFileWatcher
|
getCommandFileWatcher()
Bu planlayıcı için uygun |
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 belirterek bir çağrıyla ilgili bilgileri döndürme. |
CommandRunner.ExitCode
|
getLastInvocationExitCode()
Çalıştırılan son çağrının hata kodunu döndürür. |
Throwable
|
getLastInvocationThrowable()
Çalıştırılan son çağrıdan |
int
|
getReadyCommandCount()
Sırada hazır durumdaki komutların sayısını döndürür. |
long
|
getShutdownTimeout()
|
void
|
handoverInitiationComplete()
Komut planlayıcıyı, kullanılan cihazlar ve komutlarla ilgili ilk devir teslim değişiminin tamamlandığını ve planlama işlemine başlayabileceğini bildirir. |
boolean
|
handoverShutdown(int handoverPort)
Bir |
void
|
notifyFileChanged(File cmdFile,
|
void
|
removeAllCommands()
Planlayıcıdan tüm komutları kaldırma |
void
|
run()
Bu iş parçacığının ana yürütme bloğu. |
void
|
setClearcutClient(ClearcutClient client)
İstemciyi, koşum takımı verilerini raporlayacak şekilde ayarlama |
boolean
|
shouldShutdownOnCmdfileError()
Komut hataları nedeniyle planlayıcıyı kapatmamız gerekiyorsa doğru değerini döndürür. |
void
|
shutdown()
Komut planlayıcıyı sorunsuz bir şekilde kapatmayı deneyin. |
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ını ve |
boolean
|
stopInvocation(ITestInvocation invocation)
Çalışan bir çağrıyı durdurma. |
boolean
|
stopInvocation(int invocationId, String cause)
Çalışan bir çağrıyı kimliğini belirterek durdurun. |
Korunan yöntemler | |
---|---|
void
|
cleanUp()
Çıkmadan önce günlükleri kapatır ve gerekli diğer temizleme işlemlerini yapar. |
IConfiguration
|
createConfiguration(String[] args)
|
IInvocationContext
|
createInvocationContext()
|
IConfigurationFactory
|
getConfigFactory()
|
IDeviceManager
|
getDeviceManager()
|
TradefedFeatureServer
|
getFeatureServer()
|
IHostOptions
|
getHostOptions()
|
IKeyStoreClient
|
getKeyStoreClient()
|
void
|
initLogging()
ddmlib günlüğünü başlatır. |
boolean
|
isShutdown()
|
boolean
|
isShuttingDown()
|
void
|
processReadyCommands(IDeviceManager manager)
|
void
|
waitForAllInvocationThreads()
Tüm çağrı iş parçacıklarının tamamlanmasını bekleyin. |
Herkese açık kurucular
CommandScheduler
public CommandScheduler ()
Bir CommandScheduler
oluşturur.
Not: start, kullanılmadan önce çağrılmalıdır.
Herkese açık yöntemler
addCommand
public boolean addCommand (String[] args)
Zamanlayıcıya bir komut ekler.
Komut, temel olarak çalıştırılacak bir yapılandırma ö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ılması için sıraya eklenir.
Parametreler | |
---|---|
args |
String : yapılandırma bağımsız değişkenleri. |
İlerlemeler | |
---|---|
boolean |
true (komut başarıyla eklendiyse) |
Atışlar | |
---|---|
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şkenin ERROR(/List) . Boş olabilir ancak null olmamalıdır. |
Atışlar | |
---|---|
ConfigurationException |
beklemek
public void await ()
Gerekirse eski TF'den devir teslim işleminin tamamlanmasını beklemek de dahil olmak üzere planlayıcının çalışmaya başlamasını bekler.
checkDelegation
public static TradefedDelegator checkDelegation (String[] args)
Çalıştırmayı yetkilendirmemiz gerekip gerekmediğini görmek için komut satırına dayalı bir yetki veren kullanıcı oluşturun.
Parametreler | |
---|---|
args |
String |
İlerlemeler | |
---|---|
TradefedDelegator |
Atışlar | |
---|---|
ConfigurationException |
completeHandover
public void completeHandover ()
Komut planlayıcıyı, başlatılan bir devir teslimi sırasının tamamen tamamlandığı ve varsayılan bağlantı noktasında uzak yöneticisini yeniden başlatması gerektiği konusunda bilgilendirir.
createReleaseMap
public staticcreateReleaseMap (IInvocationContext context, Throwable e)
Cihazların uygun şekilde serbest bırakılabilmesi için cihazların durumunun haritasını oluşturun.
Parametreler | |
---|---|
context |
IInvocationContext |
e |
Throwable |
İlerlemeler | |
---|---|
|
createSandbox
public ISandbox createSandbox ()
Çağrının çalıştırmak için kullanacağı bir ISandbox
oluşturun.
İlerlemeler | |
---|---|
ISandbox |
displayCommandQueue
public void displayCommandQueue (PrintWriter printWriter)
Komut yürütme kuyruğunun durumuyla ilgili ayrıntılı hata ayıklama bilgilerini görüntüleyin.
displayCommandsInfo
public void displayCommandsInfo (PrintWriter printWriter, String regex)
Mevcut komutların listesini gösterir.
Parametreler | |
---|---|
printWriter |
PrintWriter : Çıktı alınacak ERROR(/PrintWriter) . |
regex |
String : Komutların yazdırılmak üzere 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örüntüler.
Parametreler | |
---|---|
printWriter |
PrintWriter : Çıktı alınacak ERROR(/PrintWriter) .
|
dumpCommandsXml
public void dumpCommandsXml (PrintWriter printWriter, String regex)
Mevcut tüm komutlar için belirtilen tüm Option
değerleriyle birlikte komutun genişletilmiş XML dosyasını dökümü.
Parametreler | |
---|---|
printWriter |
PrintWriter : Durumu döndürmek için kullanılan ERROR(/PrintWriter) . |
regex |
String : XML dosyasının dökülmesi için komutların eşleştirilmesi gereken normal ifade. Boşsa tüm komutlar dökülür.
|
execCommand
public void execCommand (ICommandScheduler.IScheduledInvocationListener listener, ITestDevice device, String[] args)
Komutu, önceden 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 |
Atışlar | |
---|---|
ConfigurationException |
execCommand
public void execCommand (IInvocationContext context, ICommandScheduler.IScheduledInvocationListener listener, String[] args)
Mevcut bir IInvocationContext
kullanarak bir cihazı doğrudan ayırır ve komutu komut kuyruğuna eklemeden 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 |
Atışlar | |
---|---|
ConfigurationException |
|
NoDeviceException |
execCommand
public void execCommand (ICommandScheduler.IScheduledInvocationListener listener, String[] args)
Bir cihazı doğrudan ayırır ve komutu komut kuyruğuna eklemeden yürütür.
Parametreler | |
---|---|
listener |
ICommandScheduler.IScheduledInvocationListener : Bilgilendirilecek ICommandScheduler.IScheduledInvocationListener |
args |
String : komut bağımsız değişkenleri |
Atışlar | |
---|---|
ConfigurationException |
|
NoDeviceException |
getCommandFileWatcher
public CommandFileWatcher getCommandFileWatcher ()
Bu planlayıcı için uygun CommandFileWatcher
'yi alın
İlerlemeler | |
---|---|
CommandFileWatcher |
getExecutingCommandCount
public int getExecutingCommandCount ()
Yürütme durumundaki komutların sayısını döndürür.
İlerlemeler | |
---|---|
int |
getHostState
public CommandScheduler.HostState getHostState ()
İlerlemeler | |
---|---|
CommandScheduler.HostState |
getInvocationInfo
public String getInvocationInfo (int invocationId)
Çağırma kimliğini belirterek bir çağrıyla ilgili bilgileri döndürme.
Parametreler | |
---|---|
invocationId |
int : Çağrının izleme kimliği. |
İlerlemeler | |
---|---|
String |
Çağrıyla ilgili bilgileri içeren bir String .
|
getLastInvocationExitCode
public CommandRunner.ExitCode getLastInvocationExitCode ()
Çalıştırılan son çağrının hata kodunu döndürür. Henüz çağrı çalıştırılmamışsa 0 (hata yok) değerini döndürür.
İlerlemeler | |
---|---|
CommandRunner.ExitCode |
getLastInvocationThrowable
public Throwable getLastInvocationThrowable ()
Çalıştırılan son çağrıdan Throwable
değerini döndürür.
Atılabilir öğe yoksa null döndürülür.
İlerlemeler | |
---|---|
Throwable |
getReadyCommandCount
public int getReadyCommandCount ()
Sırada hazır durumdaki komutların sayısını döndürür.
İlerlemeler | |
---|---|
int |
getShutdownTimeout
public long getShutdownTimeout ()
İlerlemeler | |
---|---|
long |
handoverInitiationComplete
public void handoverInitiationComplete ()
Komut planlayıcıyı, kullanılan cihazlar ve komutlarla ilgili ilk devir teslim değişiminin tamamlandığını ve planlama işlemine başlayabileceğini bildirir.
handoverShutdown
public boolean handoverShutdown (int handoverPort)
Bir shutdown()
başlatır ve aynı ana makinedeki başka bir tradefed işlemine aktarır.
Planlayıcı, boş cihazlar kullanılabilir hale geldikçe bu bağlantı noktasında dinleyen uzak tradefed işlemini bilgilendirir.
Parametreler | |
---|---|
handoverPort |
int |
İlerlemeler | |
---|---|
boolean |
Devre alma işlemi başarılıysa true , aksi takdirde false
|
notifyFileChanged
public void notifyFileChanged (File cmdFile,extraArgs)
Parametreler | |
---|---|
cmdFile |
File |
extraArgs |
|
removeAllCommands
public void removeAllCommands ()
Planlayıcıdan tüm komutları 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 takımı verilerini raporlayacak şekilde ayarlama
Parametreler | |
---|---|
client |
ClearcutClient |
shouldShutdownOnCmdfileError
public boolean shouldShutdownOnCmdfileError ()
Komut hataları nedeniyle planlayıcıyı kapatmamız gerekiyorsa doğru değerini döndürür.
İlerlemeler | |
---|---|
boolean |
kapatma
public void shutdown ()
Komut planlayıcıyı sorunsuz bir şekilde kapatmayı deneyin.
Test edilmeyi bekleyen komutları temizler ve devam eden tüm çağrıların sorunsuz bir şekilde kapatılmasını ister.
Kapatılma çağrısı yapıldıktan sonra planlayıcı ana döngüsü, tamamen çıkmadan önce devam eden tüm çağrıların tamamlanmasını bekler.
shutdownHard
public void shutdownHard (boolean killAdb)
Komut planlayıcıyı zorla kapatmaya çalışır.
shutdown()
özelliğine benzer ancak devam eden çağrıları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()
ile benzerdir ancak çıkmadan önce tüm komutların yürütülmesini bekler.
Döngü modunda olan komutlar varsa planlayıcının hiçbir zaman çıkmayacağını unutmayın.
start
public void start ()
Günlüğe kaydetme ayarlarını ve DeviceManager
'nin başlatılmasını da içeren planlayıcıyı başlatır.
stopInvocation
public boolean stopInvocation (ITestInvocation invocation)
Çalışan bir çağrıyı durdurma.
Parametreler | |
---|---|
invocation |
ITestInvocation |
İlerlemeler | |
---|---|
boolean |
Çağırma durdurulduysa doğru, aksi takdirde yanlış değerini döndürür. |
stopInvocation
public boolean stopInvocation (int invocationId, String cause)
Çalışan bir çağrıyı kimliğini belirterek durdurun.
Parametreler | |
---|---|
invocationId |
int : Çağrının izleme kimliği. |
cause |
String : Çağrının durdurulma nedeni. |
İlerlemeler | |
---|---|
boolean |
Çağırma durdurulduysa doğru, aksi takdirde yanlış değerini döndürür. |
Korunan yöntemler
cleanUp
protected void cleanUp ()
Çıkmadan önce günlükleri kapatır ve gerekli diğer temizleme işlemlerini yapar.
Birim testlerinin taklit edebilmesi için açıklanmıştır.
createConfiguration
protected IConfiguration createConfiguration (String[] args)
Parametreler | |
---|---|
args |
String |
İlerlemeler | |
---|---|
IConfiguration |
Atışlar | |
---|---|
ConfigurationException |
createInvocationContext
protected IInvocationContext createInvocationContext ()
İlerlemeler | |
---|---|
IInvocationContext |
getConfigFactory
protected IConfigurationFactory getConfigFactory ()
IConfigurationFactory
için referans alma fabrika yöntemi
İlerlemeler | |
---|---|
IConfigurationFactory |
IConfigurationFactory
|
getDeviceManager
protected IDeviceManager getDeviceManager ()
IDeviceManager
için referans alma fabrika yöntemi
İlerlemeler | |
---|---|
IDeviceManager |
IDeviceManager
|
getFeatureServer
protected TradefedFeatureServer getFeatureServer ()
İlerlemeler | |
---|---|
TradefedFeatureServer |
getHostOptions
protected IHostOptions getHostOptions ()
İlerlemeler | |
---|---|
IHostOptions |
getKeyStoreClient
protected IKeyStoreClient getKeyStoreClient ()
IGlobalConfiguration
içinde tanımlanan IKeyStoreFactory
'yi veya tanımlanmamışsa null değerini kullanarak bir IKeyStoreClient
getirir.
İlerlemeler | |
---|---|
IKeyStoreClient |
IKeyStoreClient |
initLogging
protected void initLogging ()
ddmlib günlüğünü başlatır.
Birim testlerinin taklit edebilmesi için açıklanmıştır.
isShutdown
protected boolean isShutdown ()
İlerlemeler | |
---|---|
boolean |
isShuttingDown
protected boolean isShuttingDown ()
İlerlemeler | |
---|---|
boolean |
processReadyCommands
protected void processReadyCommands (IDeviceManager manager)
Parametreler | |
---|---|
manager |
IDeviceManager |
waitForAllInvocationThreads
protected void waitForAllInvocationThreads ()
Tüm çağrı iş parçacıklarının tamamlanmasını bekleyin.