06.10.2013 Aufrufe

pdf 1.967 kB - Praktische Informatik - Universität Siegen

pdf 1.967 kB - Praktische Informatik - Universität Siegen

pdf 1.967 kB - Praktische Informatik - Universität Siegen

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

Netzwerkkommunikation des Systems<br />

KAPITEL 3. ENTWICKLUNG DES SYSTEMS<br />

Das zu entwickelnde System unterteilt sich, zwecks der Verteilung der Testläufe auf verschiedene<br />

Rechner, in einen Client- und einen Server-Part. Der Client ist dabei, aus der<br />

Sicht des Benutzers, das Programm selbst. Der Server wiederum läuft im Hintergrund<br />

als eigenständiger Thread bzw. als eine andere Instanz des Systems auf einem anderen<br />

Rechner. Das System startet das von RMI geforderte Hintergrundprogramm RMI-<br />

Registry automatisch beim Starten. Hierfür wird ein eigenständiger Prozess erweckt,<br />

in welchem das Zusatzprogramm ausgeführt werden kann. Zudem wird beim Start des<br />

Systems die Funktionalität des Servers als eigenständiger Thread gestartet. Die Server-<br />

Klasse "RunServer", welche sich im Paket "de.usi.caew.rmi" des Hauptsystems befindet,<br />

implementiert die speziell hierfür entworfene Schnittstelle "ServerInterface"<br />

des gleichen Pakets. Diese Schnittstelle beschreibt die folgenden Methoden:<br />

public void setExeVec(Vector exeVec) - dient zur Übertragung des Algorithmus-<br />

Programms in Form von einem oder mehreren Byte-Arrays.<br />

public void setInputVec(Vector inputVec) - dient zur Übertragung der eigentlichen<br />

Eingabedateien in Form von einem oder mehreren Byte-Arrays.<br />

public void setConfigVec(Vector configVec) - dient zur Übertragung der eigentlichen<br />

Konfigurationsdateien in Form von einem oder mehreren Byte-Arrays.<br />

public void setTrnfVec(Vector trnfVec) - dient zur Übertragung der eigentlichen Stylesheetdateien<br />

in Form von einem oder mehreren Byte-Arrays.<br />

public void setBuildVec(Vector buildVec) - dient zur Übertragung der vom Algorithmus<br />

benötigten Zusatzbibliotheken in Form von einem oder mehreren Byte-Arrays.<br />

public void setBuildDirVec(Vector buildDirVec) - dient zur Übertragung der vom<br />

Algorithmus benötigten Ordner in Form von einem oder mehreren Byte-Arrays.<br />

public void setConfigDTD(Vector configDTD) - dient zur Übertragung der Schemata<br />

bzw. DTDs, die zur Beschreibung der Eingabedokumente benötigt werden, in Form von<br />

einem oder mehreren Byte-Arrays.<br />

public void setInputDTD(Vector inputDTD) - dient zur Übertragung der Schemata<br />

bzw. DTDs, die zur Beschreibung der Konfigurationsdokumente benötigt werden, in<br />

Form von einem oder mehreren Byte-Arrays.<br />

public void setTrnfDTD(Vector trnfDTD) - dient zur Übertragung der Schemata bzw.<br />

DTDs, die zur Beschreibung der Stylesheetdokumente benötigt werden, in Form von<br />

einem oder mehreren Byte-Arrays.<br />

public Result runAlgorithm(Run run) - dient zum Starten des Testlaufs auf dem Server.<br />

Als Rückgabewert wird ein Objekt vom Typ "de.usi.caew.system.Result" geliefert,<br />

welches die relevanten Informationen zum abgeschlossenen Testlauf beinhaltet.<br />

public String getServerName() - dient zum Erfragen des Servernamens auf dem der<br />

Testlauf durchgeführt werden soll.<br />

public String getOS() - dient zum Erfragen des Betriebssystems des Rechners auf dem<br />

der Server ausgeführt wird.<br />

public boolean isBuisy() - dient zum Erfragen des Bereitschaftszustandes des Servers.<br />

27

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!