[ Inhalt ] [ Index ] Referenzteil Integration von VDM Anwendungsbeispielen Beispielskelett

Erweiterung der Beispiele

Bei der Erweiterung der Beispiele sollten zunächst einige Regeln beachtet werden:  

  1. Das ausführbare Programm nennt sich immer TEST
  2. Die Makedatei verfügt über die Ziele clean und CLEAN. Das kleingeschriebene Ziel löscht alle mit der Makedatei erzeugten Dateien, und läßt nur das ausführbare Programm TEST bestehen. Das Ziel in Großbuchstaben löscht zusätzlich auch das Testprogramm
  3. Die HTML-Datei zur Beschreibung der Beispiele trägt den Namen README.html. Das System erfordert diesen Namen zwar nicht zwingend, es sollte jedoch im Zuge der Vereinheitlichung hierfür Sorge getragen werden. Weitere HTML-Seiten in weiteren Seiten können zusätzlich zu README.html angelegt werden, die Home-Page dieses Beispiels ist jedoch immer diese Datei
  4. Für jedes neue Beispiel wird ein Verweiseintrag in der README.html Datei im Hauptverzeichnis der Beispiele eingetragen.

Die speziellen Tags des Informations- und Hilfesystems, welche in die Beispiele eingesetzt werden können lauten:

<A EXAMPLE RUN="@Command Parameter">Aufruf eines Kommandos</A>
<A EXAMPLE RUN="Programm Parameter">Start eines Programms</A>
<A EXAMPLE VIEW="Dateiname">Anzeigen einer Datei</A>
<A EXAMPLE REF="HTML-Datei">Verweis zu einer HTML Seite</A>

Für alle Tags kann ein absoluter oder relativer Pfad zu den Dateien zusätzlich zum Namen angegeben werden. Aus Sicherheitsgründen bezieht sich jeder relative Pfad auf das aktuelle und jeder absolute Pfad auf das Verzeichnis ./Test der Klassenbibliotheksinstallation, das für alle Pfadangaben als Hauptverzeichnis gilt.

Auffällig ist, daß zwei Alternativen für die Ausführung existieren. Zum einen eingeleitet durch das ,,@``-Symbol, zum andern ohne dieses. Der Grund hierfür liegt darin, daß zum einen Systemprogramme wie ls, make oder sh benötigt werden, und zum anderen Programme direkt ausgeführt werden sollen.

Da der VDM Server sein Verzeichnis nicht tatsächlich wechselt, sondern anhand der Startverzeichnisses kombiniert, werden Dateinamen grunsätzlich in absolute Pfade umgewandelt. Solange Beispiele direkt ausgeführt werden, stellt dies kein Problem dar. Werden jedoch Programme wie make oder ls benötigt, so darf der Zugriff auf diese Programme mit absolutem Pfad aufgrund der Sicherheitsbedingungen nicht möglich sein, weil sie sich in der Regel unter /usr/bin befinden. Bei Kommandos, die mit ,,@`` eingeleitet werden, wird daher folgende Strategie verfolgt:

Einige der Testprogramme mit dem Namen TEST sind lediglich eine Shellkript, das das eigentliche Programm aufruft. Solche Beispiele müssen wie folgt in die Datei README.html eingebunden werden:

<A EXAMPLE RUN="@sh TEST">Aufruf des Beispiels</A>

Die Tags EXAMPLE REF und EXAMPLE VIEW unterscheiden sich insofern, als daß ersterer Tag eine HTML-Datei erwartet, die auch weitere EXAMPLE-Tags enthalten kann, während letzterer die Datei lediglich als Text anzeigt. Wenn eine VDM Anwendungsbeispiel selbst mehrere Unterverzeichnisse enthält, so sind in diesen weitere README.html Dateien anzulegen.


[ Inhalt ] [ Index ] Referenzteil Integration von VDM Anwendungsbeispielen Beispielskelett

VDM Class Library