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
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