Die DojoLib-Bibliothek umfasst Konstanten und Validierungsfunktionen, die
von den EGL-Dojo-Widgets verwendet werden. Bei dieser Bibliothek handelt es sich nicht um eine Systembibliothek
und für ihre Verwendung gelten bestimmte Voraussetzungen.
Die Voraussetzungen sind nachfolgend aufgeführt:
Die Bibliothek stellt die folgenden Funktionen bereit:
- Validators.EmailValidator(emailAddress String in, constraints
Dictionary in) returns (Boolean)
- Validators.EmailValidator gibt an, ob der erste Parameter
eine E-Mail-Adresse darstellt. Der zweite Parameter gibt ein Wörterverzeichnis an, das eine Reihe von Integritätsbedingungen
enthält, für die jeweils ein boolescher Wert festgelegt wird.
Für jeden Schlüssel im Wörterverzeichnis wird ein boolescher Wert festgelegt, wobei
'true' für 'erforderlich' steht, 'false' für 'nicht zulässig' und '[true, false]' für 'optional'.
Die folgenden Integritätsbedingungen sind von Bedeutung:
- allowCC
- Überprüft, ob eine Domäne der höchsten Ebene für den Landescode verwendet wird. Eine Liste der gültigen Landescodes finden Sie in 'Root Zone Database' von Internet Assigned Numbers Authority (IANA).
- allowCruft
- Überprüft, ob ein 'mailto'-Format verwendet wird. Der Standardwert lautet 'false'.
- allowDecimal
- Überprüft, ob eine Dezimalzahl im Bereich von 0 bis 4294967295 verwendet wird.
- allowDottedDecimal
- Überprüft, ob eine Adresse wie z. B. 207.142.131.235 für IPv4 verwendet wird. Das Auffüllen mit Nullen ist nicht zulässig.
- allowDottedHex
- Überprüft, ob eine Adresse wie z. B. 0x18.0x11.0x9b.0x28 für IPv4 verwendet wird. Bei diesem Wert muss die Groß-/Kleinschreibung nicht beachtet werden. Das Auffüllen mit Nullen ist zulässig.
- allowDottedOctal
- Überprüft, ob eine Adresse wie z. B. 0030.0021.0233.0050 für IPv4 verwendet wird. Das Auffüllen mit Nullen ist zulässig.
- allowGeneric
- Überprüft, ob allgemeine Domänen der höchsten Ebene verwendet werden. Eine Liste der gültigen Domänen finden Sie in 'Root Zone Database' von Internet Assigned Numbers Authority (IANA).
- allowHex
- Überprüft, ob eine Hexadezimalzahl zwischen 0x0 und 0xFFFFFFFF für IPv4 verwendet wird; z. B. 0xCF8E83EB. Bei diesem Wert muss die Groß-/Kleinschreibung nicht beachtet werden. Das Auffüllen mit Nullen ist zulässig.
- allowHybrid
- Überprüft, ob eine IPv6-Adresse in Form von sechs Gruppen mit vier Hexadezimalziffern
gefolgt von der bei IPv4 üblichen Schreibweise von vier Dezimalziffern mit Trennzeichen verwendet wird.
Das gesamte Format lautet: x:x:x:x:x:x:d.d.d.d.
- allowInfra
- Überprüft, ob eine Domäne der höchsten Ebene für die Infrastruktur verwendet wird. Gültig ist die ARPA-Domäne (Address and Routing Parameter Area).
Details hierzu finden Sie in '.ARPA Zone Management' von Internet Assigned Numbers Authority (IANA).
- allowIP
- Überprüft, ob eine IP-Adresse im Literalformat verwendet wird. Der Standardwert lautet 'true'.
- allowIPV6
- Überprüft, ob eine IPv6-Adresse in Form von acht Gruppen mit vier Hexadezimalziffern verwendet wird.
- allowLocal
- Überprüft, ob 'localhost' zulässig ist. Der Standardwert lautet 'false'.
- allowNamed
- Überprüft, ob die URL einen benannten Host für lokale Netze enthalten kann.
Der Standardwert lautet 'false'.
- allowPort
- Überprüft, ob eine Portnummer zulässig ist. Der Standardwert lautet 'true'.
Beispiel für einen Aufruf:
myDictionary Dictionary {allowCruft = true};
Validators.EmailValidator("mailto:you@example.com", myDictionary);
- Validators.IPValidator (IPAddress String in, constraints Dictionary
in) returns (Boolean)
- Validators.IPValidator gibt an, ob der erste Parameter
eine IP-Adresse darstellt. Der zweite Parameter gibt ein Wörterverzeichnis an, das eine Reihe von Integritätsbedingungen
enthält, für die jeweils ein boolescher Wert festgelegt wird.
Beispiel für einen Aufruf:
myDictionary Dictionary {allowDottedDecimal = true, allowIPV6 = false};
Validators.IPValidator("191.0.2.1", myDictionary);
Die folgenden Integritätsbedingungen
sind verfügbar, wobei die ersten vier Integritätsbedingungen für IPv4 gelten, die letzten zwei für IPv6:
- allowDecimal
- Überprüft, ob eine Dezimalzahl im Bereich von 0 bis 4294967295 verwendet wird.
- allowDottedDecimal
- Überprüft, ob eine Adresse wie z. B. 207.142.131.235 für IPv4 verwendet wird. Das Auffüllen mit Nullen ist nicht zulässig.
- allowDottedHex
- Überprüft, ob eine Adresse wie z. B. 0x18.0x11.0x9b.0x28 für IPv4 verwendet wird. Bei diesem Wert muss die Groß-/Kleinschreibung nicht beachtet werden. Das Auffüllen mit Nullen ist zulässig.
- allowDottedOctal
- Überprüft, ob eine Adresse wie z. B. 0030.0021.0233.0050 für IPv4 verwendet wird. Das Auffüllen mit Nullen ist zulässig.
- allowHex
- Überprüft, ob eine Hexadezimalzahl zwischen 0x0 und 0xFFFFFFFF für IPv4 verwendet wird; z. B. 0xCF8E83EB. Bei diesem Wert muss die Groß-/Kleinschreibung nicht beachtet werden. Das Auffüllen mit Nullen ist zulässig.
- allowHybrid
- Überprüft, ob eine IPv6-Adresse in Form von sechs Gruppen mit vier Hexadezimalziffern
gefolgt von der bei IPv4 üblichen Schreibweise von vier Dezimalziffern mit Trennzeichen verwendet wird.
Das gesamte Format lautet: x:x:x:x:x:x:d.d.d.d.
- allowIPV6
- Überprüft, ob eine IPv6-Adresse in Form von acht Gruppen mit vier Hexadezimalziffern verwendet wird.
- Validators.NumberFormatValidator (inputNumber String in, constraints
Dictionary in) returns (Boolean)
- Validators.NumberFormatValidator, gibt an, ob der erste Parameter
eine korrekt formatierte Zahl darstellt. Der zweite Parameter gibt ein Wörterverzeichnis mit einer Gruppe von Integritätsbedingungen an.
Der einzige Wörterverzeichnisschlüssel ist
format;
bei den Werten sind die folgenden Variationen möglich:
# Stellt eine Ziffer von 0 bis 9 dar.
? Stellt eine Ziffer von 0 bis 9 dar; die Ziffer ist optional.
Andere Zeichen werden unverändert dargestellt.
Beispiele:
"(###) ###-####" -> (999) 999-9999
"(###) ###-#### x#???" -> (999) 9999-9999 x123
Beispiel für einen Aufruf:
myDictionary Dictionary {format = "(###) ###-####"};
Validators.NumberFormatValidator("191.42", myDictionary);
- Validators.PatternValidator (input String in, pattern String in)
returns (Boolean)
- Validators.PatternValidator gibt an, ob der erste Parameter
mit dem zweiten Parameter, bei dem es sich um einen regulären Ausdruck handelt, konsistent ist. Beispiel für einen Aufruf:
Validators.PatternValidator("1234", "[0-9]+");
Bei den Regeln für den regulären Ausdruck
handelt es sich um die von JavaScript unterstützten Regeln. Die Regeln basieren auf Perl Version 5, wie in der folgenden Spezifikation beschrieben:
Hintergrundinformationen hierzu finden Sie im Dokument Mastering Regular Expressions von
Jeffrey E.F. Friedl; O'Reilly Media, August 2006, ISBN 978-0-596-52812-6.
- Validators.RangeValidator (input String in, constraints Dictionary
in) returns (Boolean);
- Validators.RangeValidator gibt an, ob der erste Parameter
eine Zahl angibt, die in dem durch den zweiten Parameter angegebenen Bereich liegt.
Die folgenden Schlüssel sind im Wörterverzeichnis gültig:
- min
- Überprüft, ob der erste Parameter größer oder gleich der angegebenen Zahl ist.
- max
- Überprüft, ob der erste Parameter kleiner oder gleich der angegebenen Zahl ist.
- decimal
- Gibt das Zeichen an, das als Dezimaltrennzeichen verwendet wird. Der Standardwert ist ein Punkt.
Beispiel für einen Aufruf:
myDictionary Dictionary {min = 10, max = 20};
Validators.RangeValidator("18", myDictionary);
- Validators.TextValidator (input String in, constraints Dictionary
in) returns (Boolean)
- Validators.TextValidator gibt an, ob der erste Parameter
mit dem zweiten Parameter konsistent ist.
Die folgenden Schlüssel sind im Wörterverzeichnis gültig:
- length
- Überprüft, ob die Anzahl der Zeichen im ersten Parameter mit der hier angegebenen Zahl übereinstimmt.
- minlength
- Überprüft, ob die Anzahl der Zeichen im ersten Parameter mindestens der hier angegebenen Zahl entspricht.
- maxlength
- Überprüft, ob die Anzahl der Zeichen im ersten Parameter höchstens der hier angegebenen Zahl entspricht.
Beispiel für einen Aufruf:
myDictionary Dictionary {length = 4};
Validators.TextValidator("Four", myDictionary);
- Validators.URLValidator (input String in, constraints Dictionary
in) returns (Boolean)
- Validators.URLValidator gibt an, ob der erste Parameter
mit dem zweiten Parameter konsistent ist.
Für jeden Schlüssel im Wörterverzeichnis wird ein boolescher Wert festgelegt, wobei
'true' für 'erforderlich' steht, 'false' für 'nicht zulässig' und '[true, false]' für 'optional'.
Die folgenden Schlüssel sind gültig:
- allowCC
- Überprüft, ob eine Domäne der höchsten Ebene für den Landescode verwendet wird. Eine Liste der gültigen Landescodes finden Sie in 'Root Zone Database' von Internet Assigned Numbers Authority (IANA).
- allowDecimal
- Überprüft, ob eine Dezimalzahl im Bereich von 0 bis 4294967295 verwendet wird.
- allowDottedDecimal
- Überprüft, ob eine Adresse wie z. B. 207.142.131.235 für IPv4 verwendet wird. Das Auffüllen mit Nullen ist nicht zulässig.
- allowDottedHex
- Überprüft, ob eine Adresse wie z. B. 0x18.0x11.0x9b.0x28 für IPv4 verwendet wird. Bei diesem Wert muss die Groß-/Kleinschreibung nicht beachtet werden. Das Auffüllen mit Nullen ist zulässig.
- allowDottedOctal
- Überprüft, ob eine Adresse wie z. B. 0030.0021.0233.0050 für IPv4 verwendet wird. Das Auffüllen mit Nullen ist zulässig.
- allowGeneric
- Überprüft, ob allgemeine Domänen der höchsten Ebene verwendet werden. Eine Liste der gültigen Domänen finden Sie in 'Root Zone Database' von Internet Assigned Numbers Authority (IANA).
- allowHex
- Überprüft, ob eine Hexadezimalzahl zwischen 0x0 und 0xFFFFFFFF für IPv4 verwendet wird; z. B. 0xCF8E83EB. Bei diesem Wert muss die Groß-/Kleinschreibung nicht beachtet werden. Das Auffüllen mit Nullen ist zulässig.
- allowHybrid
- Überprüft, ob eine IPv6-Adresse in Form von sechs Gruppen mit vier Hexadezimalziffern
gefolgt von der bei IPv4 üblichen Schreibweise von vier Dezimalziffern mit Trennzeichen verwendet wird.
Das gesamte Format lautet: x:x:x:x:x:x:d.d.d.d.
- allowInfra
- Überprüft, ob eine Domäne der höchsten Ebene für die Infrastruktur verwendet wird. Details hierzu finden Sie in '.ARPA Zone Management' von Internet Assigned Numbers Authority (IANA).
- allowIP
- Überprüft, ob als URL eine IP-Adresse im Literalformat verwendet werden kann. Der Standardwert lautet 'true'.
- allowIPV6
- Überprüft, ob eine IPv6-Adresse in Form von acht Gruppen mit vier Hexadezimalziffern verwendet wird.
- allowLocal
- Überprüft, ob 'localhost' zulässig ist. Der Standardwert lautet 'false'.
- allowNamed
- Überprüft, ob die URL einen benannten Host für lokale Netze enthalten kann.
Der Standardwert lautet 'false'.
- allowPort
- Überprüft, ob eine Portnummer zulässig ist. Der Standardwert lautet 'true'.
Beispiel für einen Aufruf:myDictionary Dictionary {};
Validators.TextValidator("", myDictionary);
Auf diese Funktionen wird normalerweise von einer Validatorfunktion aus zugegriffen;
genauer: von einer Funktion, die in der Eigenschaft validators
des Widgets 'DojoTextField' referenziert wird.