public class ArgumentList
extends java.lang.Object
main
-Funktion übergeben. Dieses String-Array wird dem Konstruktor dieser Klasse übergeben.
Mit der Methode fetchArgument(java.lang.String)
kann auf die einzelnen Argumente zugegriffen werden.
Beim Zugriff auf ein Argument wird der entsprechende Eintrag im String-Array auf null
gesetzt.
Nach dem Zugriff auf alle von einer Applikation
unterstützten Argumente kann mit der Methode ensureAllArgumentsUsed()
sichergestellt werden, daß alle
angegebenen Argumente verwendet wurden.Modifier and Type | Class and Description |
---|---|
static class |
ArgumentList.Argument
Klasse zum Zugriff auf Name und Wert eines Aufrufarguments.
|
static class |
ArgumentList.ValueCase |
static class |
ArgumentList.ValueSelection |
Constructor and Description |
---|
ArgumentList(java.lang.String[] argumentStrings)
Erzeugt eine neue Argumentliste und initialisiert diese mit den übergebenen Aufrufargumenten der Applikation.
|
Modifier and Type | Method and Description |
---|---|
void |
ensureAllArgumentsUsed()
Diese Methode stellt sicher, daß alle Argumente interpretiert wurden.
|
ArgumentList.Argument |
fetchArgument(java.lang.String nameAndOptionalDefault)
Liefert ein bestimmtes Argument zurück und setzt es im String-Array, das beim Konstruktor übergeben wurde,
auf
null . |
ArgumentList.Argument |
fetchNextArgument()
Liefert das erste noch nicht interpretierte Argument zurück und setzt es im String-Array, das beim Konstruktor übergeben wurde,
auf
null . |
ArgumentList.Argument[] |
fetchUnusedArguments()
Liefert ein Feld mit den noch nicht ausgewerteten Argumenten der Aufrufliste zurück und setzt die
entsprechenden Einträge im String-Array, das beim Konstruktor übergeben wurde,
auf
null . |
java.lang.String[] |
getArgumentStrings()
Liefert das String-Array mit den noch nicht interpretierten Aufrufargumenten der Applikation zurück.
|
java.lang.String[] |
getInitialArgumentStrings()
Liefert das String-Array mit den initialen Aufrufargumenten der Applikation zurück.
|
java.lang.String |
getNextArgumentName()
Liefert den Namen des nächsten noch nicht interpretierten Arguments zurück.
|
int |
getUnusedArgumentCount()
Bestimmt die Anzahl der in der Argumentliste noch vorhandenen und nicht ausgewerteten Argumente.
|
boolean |
hasArgument(java.lang.String name)
Prüft, ob ein bestimmtes Argument vorhanden ist und noch nicht interpretiert wurde.
|
boolean |
hasUnusedArguments()
Bestimmt, ob in der Argumentliste noch Argumente exististieren, die noch nicht ausgewertet wurden.
|
static void |
main(java.lang.String[] args)
Hauptfunktion zum Test einzelner Methoden
|
java.lang.String |
toString()
Liefert eine textuelle Beschreibung dieser Argumentliste mit den initialen Argumenten zurück.
|
public ArgumentList(java.lang.String[] argumentStrings)
null
gesetzt werden, damit sie nicht nochmal interpretiert werden.argumentStrings
- String-Array, das die Aufrufargumente enthält, die der Applikation beim Aufruf der
main-Funktion übergeben werden.public ArgumentList.Argument fetchArgument(java.lang.String nameAndOptionalDefault)
null
. Im übergebenen Parameter der Funktion wird der Name des Arguments und bei Bedarf
(durch ein Gleich-Zeichen getrennt) ein Default-Wert angegeben.
Die Aufrufargumente müssen dem Format "argumentName=argumentWert" entsprechen:
Beim Zugriff auf ein Argument muss der Argument-Name angegeben werden. Ergebnis des Zugriffs ist ein
Objekt der Klasse ArgumentList.Argument
über das der Wert des Arguments abgefragt werden kann.
Wenn das gewünschte Argument in der Argumentliste gefunden wurde, wird der entsprechende Eintrag im
String-Array, das dem Konstruktor
übergeben wurde, auf den Wert null
gesetzt.
Wenn auf ein Argument zugegriffen wird, das in der Argumentlist nicht mehr vorhanden ist, weil es bereits vorher
interpretiert wurde, dann wird der entsprechende Wert aus der initialen Argumentliste erneut zurückgegeben.
Wenn auf ein Argument zugegriffen wird, das in der initialen Argumentliste nicht vorhanden ist,
wird als Wert der Default-Wert benutzt, wenn dieser im Parameter der Methode (durch ein Gleichzeichen vom
Argumentnamen getrennt) angegeben wurde. Wenn das gewünschte Argument nicht in der Argumentliste enthalten
ist und kein Default-Wert angegeben wurde, wird eine Ausnahme generiert.nameAndOptionalDefault
- Name des gewünschten Arguments und optional durch ein Gleichzeichen getrennt
der Default-Wert des Arguments.java.lang.IllegalArgumentException
- Wenn kein Wert für das gewünschte Argument ermittelt werden konnte.public boolean hasArgument(java.lang.String name)
name
- Name des gesuchten Arguments.true
Wenn das gesuchte Argument in der Argumentliste enthalten ist und noch nicht interpretiert
wurde, sonst false
.public void ensureAllArgumentsUsed()
java.lang.IllegalStateException
- Wenn in der Argumentliste noch nicht ausgewertete Argumente enthalten sind.public boolean hasUnusedArguments()
true
, falls weitere Argumente existieren; false
, falls alle Argumente
ausgewertet wurden.public java.lang.String getNextArgumentName()
java.lang.IllegalStateException
- Wenn bereits alle Argumente interpretiert wurden.public ArgumentList.Argument fetchNextArgument()
null
. Die Aufrufargumente müssen dem Format "argumentName=argumentWert" entsprechen:
Beim Zugriff auf ein Argument muss der Argument-Name angegeben werden. Ergebnis des Zugriffs ist ein
Objekt der Klasse ArgumentList.Argument
über das der Wert des Arguments abgefragt werden kann. Für Argumente die kein
Gleichzeichen mit folgendem argumentWert enthalten, wird als Wert der Text "wahr" angenommen.
Der entsprechende Eintrag im
String-Array, das dem Konstruktor
übergeben wurde, wird auf den Wert null
gesetzt.
Wenn in der Argumentliste kein Argument mehr enthalten war, wird eine Ausnahme generiert.java.lang.IllegalStateException
- Wenn bereits alle Argumente interpretiert wurden.public int getUnusedArgumentCount()
public ArgumentList.Argument[] fetchUnusedArguments()
null
.public static void main(java.lang.String[] args)
public java.lang.String[] getArgumentStrings()
fetchArgument(java.lang.String)
bzw.
fetchNextArgument()
interpretiert wurden, im Array auf null
gesetzt wurden.public java.lang.String[] getInitialArgumentStrings()
public java.lang.String toString()
toString
in class java.lang.Object