de.bsvrz.sys.funclib.commandLineArgs
Class ArgumentList.Argument

java.lang.Object
  extended by de.bsvrz.sys.funclib.commandLineArgs.ArgumentList.Argument
Enclosing class:
ArgumentList

public static class ArgumentList.Argument
extends Object

Klasse zum Zugriff auf Name und Wert eines Aufrufarguments.


Method Summary
 long asAbsoluteTime()
          Interpretiert den Wert des Arguments als absolute Zeitangabe.
 File asChangeableFile()
          Gibt den Wert des Arguments als Datei-Identifikation einer änderbaren Datei zurück.
 File asChangeableFile(boolean createIfNotExistent)
          Gibt den Wert des Arguments als Datei-Identifikation einer änderbaren Datei zurück.
 File asDirectory()
          Gibt den Wert des Arguments als Datei-Identifikation eines Dateiverzeichnisses zurück.
 File asExistingFile()
          Gibt den Wert des Arguments als Datei-Identifikation einer existierenden Datei zurück.
 File asFile()
          Gibt den Wert des Arguments als Datei-Identifikation zurück.
 String asNonEmptyString()
          Bestimmt den Wert des Arguments als nicht leere Zeichenkette.
 File asReadableFile()
          Gibt den Wert des Arguments als Datei-Identifikation einer lesbaren Datei zurück.
 long asRelativeTime()
          Interpretiert den Wert des Arguments als relative Zeitangabe.
 String asString()
          Bestimmt den Wert des Arguments als Zeichenkette.
 long asTime()
          Interpretiert den Wert des Arguments als Zeitangabe.
 ArgumentList.ValueCase asValueCase(ArgumentList.ValueSelection validValues)
           
 File asWritableFile()
          Gibt den Wert des Arguments als Datei-Identifikation einer beschreibaren Datei zurück.
 File asWritableFile(boolean createIfNotExistent)
          Gibt den Wert des Arguments als Datei-Identifikation einer beschreibaren Datei zurück.
 boolean booleanValue()
          Gibt den Wert des Arguments als boolean Wert zurück.
 byte byteValue()
          Gibt den Wert des Arguments als byte Wert zurück.
 byte byteValueBetween(byte minimum, byte maximum)
          Gibt den Wert des Arguments als byte Wert zurück.
 double doubleValue()
          Gibt den Wert des Arguments als double Wert zurück.
 double doubleValueBetween(double minimum, double maximum)
          Gibt den Wert des Arguments als double Wert zurück.
 float floatValue()
          Gibt den Wert des Arguments als float Wert zurück.
 float floatValueBetween(float minimum, float maximum)
          Gibt den Wert des Arguments als float Wert zurück.
 String getName()
          Bestimmt den Namen des Arguments.
 String getValue()
          Bestimmt den Wert des Arguments.
 boolean hasValue()
          Überprüft, ob das Argument einen Wert hat.
 int intValue()
          Gibt den Wert des Arguments als int Wert zurück.
 int intValueBetween(int minimum, int maximum)
          Gibt den Wert des Arguments als int Wert zurück.
 long longValue()
          Gibt den Wert des Arguments als long Wert zurück.
 long longValueBetween(long minimum, long maximum)
          Gibt den Wert des Arguments als long Wert zurück.
 short shortValue()
          Gibt den Wert des Arguments als short Wert zurück.
 short shortValueBetween(short minimum, short maximum)
          Gibt den Wert des Arguments als short Wert zurück.
 String toString()
          Erzeugt eine Zeichenkette, die den Namen und den Wert des Arguments enthält.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Method Detail

getName

public String getName()
Bestimmt den Namen des Arguments.

Returns:
Name des Arguments.

hasValue

public boolean hasValue()
Überprüft, ob das Argument einen Wert hat. Wenn das Argument keinen Wert hat, kann nur noch mit der Methode #booleanValue() auf den Wert zugegriffen werden, ohne daß eine Ausnahme generiert wird.

Returns:
true, falls das Argument einen Wert hat; sonst false.

getValue

public String getValue()
Bestimmt den Wert des Arguments.

Returns:
Wert des Arguments.
Throws:
IllegalStateException - Wenn das Argument keinen Wert hat.

booleanValue

public boolean booleanValue()
                     throws IllegalArgumentException
Gibt den Wert des Arguments als boolean Wert zurück. Die Argumentwerte "wahr", "ja", "1" werden zum Boolschen Wert true konvertiert; die Argumentwerte "falsch", "nein", "0" werden zum Boolschen Wert false konvertiert. Die Groß-/Kleinschreibung des Argumentwerts hat beim Vergleich keine Relevanz. Wenn das Argument keinen Wert hat, dann wird als Ergebnis der Konvertierung true zurückgegeben.

Returns:
Der konvertierte Argumentwert.
Throws:
IllegalArgumentException - Wenn der Argumentwert nicht konvertiert werden konnte.

byteValue

public byte byteValue()
               throws NumberFormatException
Gibt den Wert des Arguments als byte Wert zurück. Der Argumentwert wird in einen Zahlwert vom Typ byte konvertiert.

Returns:
Der konvertierte Argumentwert.
Throws:
NumberFormatException - Wenn der Argumentwert nicht konvertiert werden konnte.
IllegalStateException - Wenn das Argument keinen Wert hat.

shortValue

public short shortValue()
                 throws NumberFormatException
Gibt den Wert des Arguments als short Wert zurück. Der Argumentwert wird in einen Zahlwert vom Typ short konvertiert.

Returns:
Der konvertierte Argumentwert.
Throws:
NumberFormatException - Wenn der Argumentwert nicht konvertiert werden konnte.
IllegalStateException - Wenn das Argument keinen Wert hat.

intValue

public int intValue()
             throws NumberFormatException
Gibt den Wert des Arguments als int Wert zurück. Der Argumentwert wird in einen Zahlwert vom Typ int konvertiert.

Returns:
Der konvertierte Argumentwert.
Throws:
NumberFormatException - Wenn der Argumentwert nicht konvertiert werden konnte.
IllegalStateException - Wenn das Argument keinen Wert hat.

longValue

public long longValue()
               throws NumberFormatException
Gibt den Wert des Arguments als long Wert zurück. Der Argumentwert wird in einen Zahlwert vom Typ long konvertiert.

Returns:
Der konvertierte Argumentwert.
Throws:
NumberFormatException - Wenn der Argumentwert nicht konvertiert werden konnte.
IllegalStateException - Wenn das Argument keinen Wert hat.

floatValue

public float floatValue()
                 throws NumberFormatException
Gibt den Wert des Arguments als float Wert zurück. Der Argumentwert wird in einen Zahlwert vom Typ float konvertiert.

Returns:
Der konvertierte Argumentwert.
Throws:
NumberFormatException - Wenn der Argumentwert nicht konvertiert werden konnte.
IllegalStateException - Wenn das Argument keinen Wert hat.

doubleValue

public double doubleValue()
                   throws NumberFormatException
Gibt den Wert des Arguments als double Wert zurück. Der Argumentwert wird in einen Zahlwert vom Typ double konvertiert.

Returns:
Der konvertierte Argumentwert.
Throws:
NumberFormatException - Wenn der Argumentwert nicht konvertiert werden konnte.
IllegalStateException - Wenn das Argument keinen Wert hat.

byteValueBetween

public byte byteValueBetween(byte minimum,
                             byte maximum)
                      throws NumberFormatException
Gibt den Wert des Arguments als byte Wert zurück. Der Argumentwert wird in einen Zahlwert vom Typ byte konvertiert und überprüft, ob der Wert nicht ausserhalb der angegebenen Grenzen liegt.

Parameters:
minimum - Kleinster erlaubter Wert.
maximum - Größter erlaubter Wert.
Returns:
Der konvertierte Argumentwert.
Throws:
IllegalArgumentException - Wenn der Wert kleiner als das Minimum oder größer als das Maximum ist.
NumberFormatException - Wenn der Argumentwert nicht konvertiert werden konnte.
IllegalStateException - Wenn das Argument keinen Wert hat.

shortValueBetween

public short shortValueBetween(short minimum,
                               short maximum)
                        throws NumberFormatException
Gibt den Wert des Arguments als short Wert zurück. Der Argumentwert wird in einen Zahlwert vom Typ short konvertiert und überprüft, ob der Wert nicht ausserhalb der angegebenen Grenzen liegt.

Parameters:
minimum - Kleinster erlaubter Wert.
maximum - Größter erlaubter Wert.
Returns:
Der konvertierte Argumentwert.
Throws:
IllegalArgumentException - Wenn der Wert kleiner als das Minimum oder größer als das Maximum ist.
NumberFormatException - Wenn der Argumentwert nicht konvertiert werden konnte.
IllegalStateException - Wenn das Argument keinen Wert hat.

intValueBetween

public int intValueBetween(int minimum,
                           int maximum)
                    throws NumberFormatException
Gibt den Wert des Arguments als int Wert zurück. Der Argumentwert wird in einen Zahlwert vom Typ int konvertiert und überprüft, ob der Wert nicht ausserhalb der angegebenen Grenzen liegt.

Parameters:
minimum - Kleinster erlaubter Wert.
maximum - Größter erlaubter Wert.
Returns:
Der konvertierte Argumentwert.
Throws:
IllegalArgumentException - Wenn der Wert kleiner als das Minimum oder größer als das Maximum ist.
NumberFormatException - Wenn der Argumentwert nicht konvertiert werden konnte.
IllegalStateException - Wenn das Argument keinen Wert hat.

longValueBetween

public long longValueBetween(long minimum,
                             long maximum)
                      throws NumberFormatException
Gibt den Wert des Arguments als long Wert zurück. Der Argumentwert wird in einen Zahlwert vom Typ long konvertiert und überprüft, ob der Wert nicht ausserhalb der angegebenen Grenzen liegt.

Parameters:
minimum - Kleinster erlaubter Wert.
maximum - Größter erlaubter Wert.
Returns:
Der konvertierte Argumentwert.
Throws:
IllegalArgumentException - Wenn der Wert kleiner als das Minimum oder größer als das Maximum ist.
NumberFormatException - Wenn der Argumentwert nicht konvertiert werden konnte.
IllegalStateException - Wenn das Argument keinen Wert hat.

floatValueBetween

public float floatValueBetween(float minimum,
                               float maximum)
                        throws NumberFormatException
Gibt den Wert des Arguments als float Wert zurück. Der Argumentwert wird in einen Zahlwert vom Typ float konvertiert und überprüft, ob der Wert nicht ausserhalb der angegebenen Grenzen liegt.

Parameters:
minimum - Kleinster erlaubter Wert.
maximum - Größter erlaubter Wert.
Returns:
Der konvertierte Argumentwert.
Throws:
IllegalArgumentException - Wenn der Wert kleiner als das Minimum oder größer als das Maximum ist.
NumberFormatException - Wenn der Argumentwert nicht konvertiert werden konnte.
IllegalStateException - Wenn das Argument keinen Wert hat.

doubleValueBetween

public double doubleValueBetween(double minimum,
                                 double maximum)
                          throws NumberFormatException
Gibt den Wert des Arguments als double Wert zurück. Der Argumentwert wird in einen Zahlwert vom Typ double konvertiert und überprüft, ob der Wert nicht ausserhalb der angegebenen Grenzen liegt.

Parameters:
minimum - Kleinster erlaubter Wert.
maximum - Größter erlaubter Wert.
Returns:
Der konvertierte Argumentwert.
Throws:
IllegalArgumentException - Wenn der Wert kleiner als das Minimum oder größer als das Maximum ist.
NumberFormatException - Wenn der Argumentwert nicht konvertiert werden konnte.
IllegalStateException - Wenn das Argument keinen Wert hat.

asFile

public File asFile()
Gibt den Wert des Arguments als Datei-Identifikation zurück. Der Argumentwert wird als Dateiname der Datei interpretiert.

Returns:
Dateiobjekt zum Zugriff auf die durch den Argumentwert identifizierten Datei.
Throws:
IllegalStateException - Wenn das Argument keinen Wert hat.

asExistingFile

public File asExistingFile()
Gibt den Wert des Arguments als Datei-Identifikation einer existierenden Datei zurück. Der Argumentwert wird als Dateiname der Datei interpretiert. Es wird geprüft, ob die Datei existiert.

Returns:
Dateiobjekt zum Zugriff auf die durch den Argumentwert identifizierten Datei.
Throws:
IllegalArgumentException - Wenn die identifizierte Datei nicht existiert.
IllegalStateException - Wenn das Argument keinen Wert hat.

asReadableFile

public File asReadableFile()
Gibt den Wert des Arguments als Datei-Identifikation einer lesbaren Datei zurück. Der Argumentwert wird als Dateiname der Datei interpretiert. Es wird geprüft, ob die Datei existiert und ob ein lesender Zugriff erlaubt ist.

Returns:
Dateiobjekt zum Zugriff auf die durch den Argumentwert identifizierten Datei.
Throws:
IllegalArgumentException - Wenn die identifizierte Datei nicht existiert oder nicht lesbar ist.
IllegalStateException - Wenn das Argument keinen Wert hat.

asWritableFile

public File asWritableFile()
Gibt den Wert des Arguments als Datei-Identifikation einer beschreibaren Datei zurück. Der Argumentwert wird als Dateiname der Datei interpretiert. Es wird geprüft, ob die Datei existiert und ob ein schreibender Zugriff erlaubt ist.

Returns:
Dateiobjekt zum Zugriff auf die durch den Argumentwert identifizierten Datei.
Throws:
IllegalArgumentException - Wenn die identifizierte Datei nicht existiert oder nicht beschreibar ist.
IllegalStateException - Wenn das Argument keinen Wert hat.

asWritableFile

public File asWritableFile(boolean createIfNotExistent)
                    throws IOException
Gibt den Wert des Arguments als Datei-Identifikation einer beschreibaren Datei zurück. Der Argumentwert wird als Dateiname der Datei interpretiert. Es wird geprüft, ob die Datei existiert und ob ein schreibender Zugriff erlaubt ist.

Parameters:
createIfNotExistent - Wenn die spezifizierte Datei nicht existiert und dieser Parameter den Wert true hat, wird eine neue Datei erzeugt.
Returns:
Dateiobjekt zum Zugriff auf die durch den Argumentwert identifizierten Datei.
Throws:
IllegalArgumentException - Wenn die identifizierte Datei nicht existiert und nicht angelegt werden sollte oder nicht beschreibar ist.
IOException - Wenn die Datei nicht angelegt werden konnte.
IllegalStateException - Wenn das Argument keinen Wert hat.

asChangeableFile

public File asChangeableFile()
Gibt den Wert des Arguments als Datei-Identifikation einer änderbaren Datei zurück. Der Argumentwert wird als Dateiname der Datei interpretiert. Es wird geprüft, ob die Datei existiert und ob ein lesender und schreibender Zugriff erlaubt ist.

Returns:
Dateiobjekt zum Zugriff auf die durch den Argumentwert identifizierten Datei.
Throws:
IllegalArgumentException - Wenn die identifizierte Datei nicht existiert oder nicht nicht lesbar oder nicht beschreibar ist.
IllegalStateException - Wenn das Argument keinen Wert hat.

asChangeableFile

public File asChangeableFile(boolean createIfNotExistent)
                      throws IOException
Gibt den Wert des Arguments als Datei-Identifikation einer änderbaren Datei zurück. Der Argumentwert wird als Dateiname der Datei interpretiert. Es wird geprüft, ob die Datei existiert und ob ein lesender und schreibender Zugriff erlaubt ist.

Parameters:
createIfNotExistent - Wenn die spezifizierte Datei nicht existiert und dieser Parameter den Wert true hat, wird eine neue Datei erzeugt.
Returns:
Dateiobjekt zum Zugriff auf die durch den Argumentwert identifizierten Datei.
Throws:
IllegalArgumentException - Wenn die identifizierte Datei nicht existiert und nicht angelegt werden sollte oder nicht lesbar oder nicht beschreibar ist.
IOException - Wenn die Datei nicht angelegt werden konnte.
IllegalStateException - Wenn das Argument keinen Wert hat.

asDirectory

public File asDirectory()
Gibt den Wert des Arguments als Datei-Identifikation eines Dateiverzeichnisses zurück. Der Argumentwert wird als Dateiname des Dateiverzeichnisses interpretiert. Es wird geprüft, ob die spezifizierte Datei existiert und ein Verzeichnis ist.

Returns:
Dateiobjekt zum Zugriff auf das durch den Argumentwert identifizierte Dateiverzeichnis.
Throws:
IllegalArgumentException - Wenn die identifizierte Datei nicht existiert oder kein Verzeichnis ist.
IllegalStateException - Wenn das Argument keinen Wert hat.

asString

public String asString()
Bestimmt den Wert des Arguments als Zeichenkette.

Returns:
Wert des Arguments.
Throws:
IllegalStateException - Wenn das Argument keinen Wert hat.

asNonEmptyString

public String asNonEmptyString()
Bestimmt den Wert des Arguments als nicht leere Zeichenkette.

Returns:
Wert des Arguments.
Throws:
IllegalArgumentException - Wenn der Argumentwert leer ist.
IllegalStateException - Wenn das Argument keinen Wert hat.

asValueCase

public ArgumentList.ValueCase asValueCase(ArgumentList.ValueSelection validValues)

asTime

public long asTime()
Interpretiert den Wert des Arguments als Zeitangabe. Erkannt werden absolute Zeitangabe wie in der Methode asAbsoluteTime() und relative Zeitangaben wie in der Methode @{link #asRelativeTime}. Wenn eine relative Zeitangabe angegeben wurde, wird der angegebene Wert vom aktuellen Zeitpunkt abgezogen d.h. das Ergebnis liegt bei positiven Angaben in der Vergangenheit liegt.

Returns:
Anzahl Millisekunden seit 1970.

asAbsoluteTime

public long asAbsoluteTime()
Interpretiert den Wert des Arguments als absolute Zeitangabe. Das Argument muss aus einer Zeitangabe im Format HH:MM[:SS[,mmm]] und/oder aus einer Datumsangabe im Format TT.MM.[YY]YY bestehen. Die Reihenfolge von Datum und Zeit ist egal. Wenn nur eine Zeitangabe im Argument enthalten ist, wird als Datum der Tag benutzt, an dem das Programm gestartet wurde. Wenn nur eine Datumsangabe im Argument enthalten ist, dann wird als Zeitangabe 0:00 Uhr Lokalzeit benutzt. Bei Datumsangaben mit zweistelliger Jahreszahl wird ein Jahr gewählt, das im Bereich von 80 Jahren vor und 20 Jahren nach dem aktuellen Jahr liegt. Als spezieller Wert wird der Text "jetzt" erkannt und durch die beim Aufruf der Methode aktuelle Zeit interpretiert.

Returns:
Anzahl Millisekunden seit 1970.

asRelativeTime

public long asRelativeTime()
Interpretiert den Wert des Arguments als relative Zeitangabe. Das Argument muss aus einer Liste von Zahlen und Einheiten bestehen. Als Einheiten sind "t" und "Tag[e]" für Tage, "h" und "Stunde[n]" für Stunden, "m" und "Minute[n]" für Minuten, "s" und "Sekunde[n]" für Sekunden sowie "ms" und "Millisekunden[e]" für Millisekunden erkannt. Die Einzelnen Werte werden in Millisekunden umgerechnet und aufsummiert. Als spezieller Wert wird der Text "jetzt" erkannt und als "0 Sekunden" interpretiert.

Returns:
Relative Zeitangabe in Millisekunden.

toString

public String toString()
Erzeugt eine Zeichenkette, die den Namen und den Wert des Arguments enthält.

Overrides:
toString in class Object
Returns:
Zeichenkette mit Name und Wert des Arguments.
Throws:
IllegalStateException - Wenn das Argument keinen Wert hat.