TradefedSandbox

public class TradefedSandbox
extends Object implements ISandbox

java.lang.Object
com.android.tradefed.sandbox.TradefedSandbox


Sandbox-Container, der einen Trade Federation-Aufruf ausführen kann. TODO: Zulassen, dass Optionen an die Sandbox übergeben werden.

Zusammenfassung

Felder

public static final String SANDBOX_ENABLED

Öffentliche Konstrukteure

TradefedSandbox ()

Öffentliche Methoden

String createClasspath (File workingDir)

Erstellen Sie einen Klassenpfad basierend auf der Umgebung und dem von getTradefedSandboxEnvironment(com.android.tradefed.invoker.IInvocationContext, com.android.tradefed.config.IConfiguration, String[]) zurückgegebenen Arbeitsverzeichnis.

IConfiguration createThinLauncherConfig (String[] args, IKeyStoreClient keyStoreClient, IRunUtil runUtil, File globalConfig)

Vom Hauptlauf getrennter Spezialmodus: Wenn eine Konfiguration im übergeordneten System nicht vorhanden zu sein scheint, greifen wir auf Thin Launcher zurück, wo wir versuchen, die Sandbox mit derzeit bekannten Informationen einzurichten und das Arbeitsverzeichnis zu füllen, um die Konfiguration vollständig im versionierten Verzeichnis zu erstellen .

File getTradefedSandboxEnvironment ( IInvocationContext context, IConfiguration nonVersionedConfig, String[] args)

Gibt die zu verwendende Sandbox-Umgebungs-TF basierend auf den Befehlszeilenargumenten zurück.

Exception prepareEnvironment ( IInvocationContext context, IConfiguration config, ITestInvocationListener listener)

Bereiten Sie die Umgebung vor, damit die Sandbox ordnungsgemäß ausgeführt werden kann.

CommandResult run ( TestInformation info, IConfiguration config, ITestLogger logger)

Führen Sie die Sandbox mit der festgelegten Umgebung aus.

void tearDown ()

Bereinigen Sie alle Zustände, Dateien oder Umgebungen, die möglicherweise geändert wurden.

Geschützte Methoden

File dumpGlobalConfig ( IConfiguration config, exclusionPatterns) dumpGlobalConfig ( IConfiguration config, exclusionPatterns)

Geben Sie die aus einigen Objekten gefilterte globale Konfiguration aus.

String getJava ()
Exception prepareConfiguration ( IInvocationContext context, IConfiguration config, ITestInvocationListener listener)

Bereiten Sie die IConfiguration vor, die an den Unterprozess übergeben wird und die Containerausführung steuert.

File prepareContext ( IInvocationContext context, IConfiguration config)

Bereiten Sie den IInvocationContext vor und serialisieren Sie ihn.

Felder

SANDBOX_ENABLED

public static final String SANDBOX_ENABLED

Öffentliche Konstrukteure

TradefedSandbox

public TradefedSandbox ()

Öffentliche Methoden

Klassenpfad erstellen

public String createClasspath (File workingDir)

Erstellen Sie einen Klassenpfad basierend auf der Umgebung und dem von getTradefedSandboxEnvironment(com.android.tradefed.invoker.IInvocationContext, com.android.tradefed.config.IConfiguration, String[]) zurückgegebenen Arbeitsverzeichnis.

Parameter
workingDir File : das aktuelle Arbeitsverzeichnis für die Sandbox.

Kehrt zurück
String Der zu verwendende Klassenpfad.

Wirft
ConfigurationException

createThinLauncherConfig

public IConfiguration createThinLauncherConfig (String[] args, 
                IKeyStoreClient keyStoreClient, 
                IRunUtil runUtil, 
                File globalConfig)

Vom Hauptlauf getrennter Spezialmodus: Wenn eine Konfiguration im übergeordneten System nicht vorhanden zu sein scheint, greifen wir auf Thin Launcher zurück, wo wir versuchen, die Sandbox mit derzeit bekannten Informationen einzurichten und das Arbeitsverzeichnis zu füllen, um die Konfiguration vollständig im versionierten Verzeichnis zu erstellen .

Parameter
args String : Die ursprünglichen Befehlszeilenargumente.

keyStoreClient IKeyStoreClient : Der aktuelle Keystore-Client, der zum Erstellen von Konfigurationen verwendet werden soll.

runUtil IRunUtil : das aktuelle IRunUtil zum Ausführen von Hostbefehlen.

globalConfig File : Die globale Konfiguration, die zum Ausführen von Unterprozessen von TF verwendet werden soll.

Kehrt zurück
IConfiguration eine Datei, die auf das Konfigurations-XML von TF für NON_VERSIONED-Objekte verweist. Gibt null zurück, wenn keine Thin Launcher-Konfiguration erstellt werden konnte.

getTradefedSandboxEnvironment

public File getTradefedSandboxEnvironment (IInvocationContext context, 
                IConfiguration nonVersionedConfig, 
                String[] args)

Gibt die zu verwendende Sandbox-Umgebungs-TF basierend auf den Befehlszeilenargumenten zurück.

Parameter
context IInvocationContext : der IInvocationContext des übergeordneten Elements.

nonVersionedConfig IConfiguration : die IConfiguration , die die nicht versionierten Objekte darstellt.

args String : die Befehlszeilenargumente.

Kehrt zurück
File ein ERROR(/File) -Verzeichnis, das die JAR-Dateien der TF-Sandbox-Umgebung enthält.

Umgebung vorbereiten

public Exception prepareEnvironment (IInvocationContext context, 
                IConfiguration config, 
                ITestInvocationListener listener)

Bereiten Sie die Umgebung vor, damit die Sandbox ordnungsgemäß ausgeführt werden kann.

Parameter
context IInvocationContext : der aktuelle IInvocationContext des Aufrufs.

config IConfiguration : die IConfiguration für den auszuführenden Befehl.

listener ITestInvocationListener : der aktuelle Aufruf ITestInvocationListener , an den Endergebnisse weitergeleitet werden sollen.

Kehrt zurück
Exception ein ERROR(/Exception) mit dem Fehler. oder Null, falls erfolgreich.

laufen

public CommandResult run (TestInformation info, 
                IConfiguration config, 
                ITestLogger logger)

Führen Sie die Sandbox mit der festgelegten Umgebung aus.

Parameter
info TestInformation : die TestInformation , die den Aufruf beschreibt

config IConfiguration : die IConfiguration für den auszuführenden Befehl.

logger ITestLogger : ein ITestLogger , in dem wir Dateien protokollieren können.

Kehrt zurück
CommandResult ein CommandResult mit dem Status der Sandbox-Ausführung und Protokolle.

niederreißen

public void tearDown ()

Bereinigen Sie alle Zustände, Dateien oder Umgebungen, die möglicherweise geändert wurden.

Geschützte Methoden

dumpGlobalConfig

protected File dumpGlobalConfig (IConfiguration config, 
                 exclusionPatterns)

Geben Sie die aus einigen Objekten gefilterte globale Konfiguration aus.

Parameter
config IConfiguration

exclusionPatterns

Kehrt zurück
File

Wirft
ConfigurationException

getJava

protected String getJava ()

Kehrt zurück
String

VorbereitenKonfiguration

protected Exception prepareConfiguration (IInvocationContext context, 
                IConfiguration config, 
                ITestInvocationListener listener)

Bereiten Sie die IConfiguration vor, die an den Unterprozess übergeben wird und die Containerausführung steuert.

Parameter
context IInvocationContext : Der aktuelle IInvocationContext .

config IConfiguration : die vorzubereitende IConfiguration .

listener ITestInvocationListener : Der aktuelle Aufruf ITestInvocationListener .

Kehrt zurück
Exception eine Ausnahme, wenn etwas schief gelaufen ist, sonst null.

vorbereitenKontext

protected File prepareContext (IInvocationContext context, 
                IConfiguration config)

Bereiten Sie den IInvocationContext vor und serialisieren Sie ihn.

Parameter
context IInvocationContext : der IInvocationContext , der vorbereitet werden soll.

config IConfiguration : Die IConfiguration der Sandbox.

Kehrt zurück
File der serialisierte IInvocationContext .

Wirft
IOException