DojoLib
DojoLib ライブラリーには、EGL Dojo ウィジェットにより使用される定数および検査機能が含まれています。 このライブラリーはシステム・ライブラリーではなく、その使用には前提条件があります。
前提条件は以下のとおりです。
- 以下のような import ステートメントを指定します。
import dojo.widgets.DojoLib;DojoLib ライブラリーには、Rich UI ハンドラーに以下の use ステートメントを組み込むことで、最も簡単にアクセスできます。use DojoLib; - プロジェクトの EGL ビルド・パスは、com.ibm.egl.rui.dojo.runtime.local_x.y などの Dojo ランタイムを参照する必要があります。ここで x.y は、ランタイム・プロジェクトの現行バージョンを表しています。 詳細については、『EGL ビルド・パスの編集』を参照してください。
ライブラリーにより、以下の関数が使用可能になります。
- Validators.EmailValidator(emailAddress String in, constraints Dictionary in) returns (Boolean)
- Validators.EmailValidator は、最初のパラメーターが E メール・アドレスを表すかどうかを示します。
2 番目のパラメーターは一連の制約が含まれている辞書であり、それぞれの制約はブール値に設定されます。
辞書内の各キーはブール値に設定され、true は「必須」、false は「許可されない」、[true, false] はオプションであることを意味します。
以下の制約は重要です。- allowCC
- 国別コード最上位ドメインの使用を検査します。 有効な国別コードのリストについては、Internet Assigned Numbers Authority (IANA) が提供する「Root Zone Database」を参照してください。
- allowCruft
- mailto フォーマットの使用を検査します。 デフォルトは false です。
- allowDecimal
- 0 から 4294967295 の範囲の 10 進数を検査します。
- allowDottedDecimal
- IPv4 用の、207.142.131.235 といった形式のアドレスを検査します。 ゼロ埋め込みは許可されていません。
- allowDottedHex
- IPv4 用の、0x18.0x11.0x9b.0x28 といった形式のアドレスを検査します。 値は大/小文字を区別しません。ゼロ埋め込みが許可されています。
- allowDottedOctal
- IPv4 用の、0030.0021.0233.0050 といった形式のアドレスを検査します。 ゼロ埋め込みが許可されています。
- allowGeneric
- 汎用最上位ドメインの使用を検査します。 有効なドメインのリストについては、Internet Assigned Numbers Authority (IANA) が提供する「Root Zone Database」を参照してください。
- allowHex
- IPv4 用の、0x0 から 0xFFFFFFFF までの範囲の 16 進数を検査します (例えば 0xCF8E83EB)。 値は大/小文字を区別しません。ゼロ埋め込みが許可されています。
- allowHybrid
- 4 つの 16 進数字の 6 つのグループとして作成された IPv6 アドレス、および IPv4 の通常の 4 つのドット 10 進表記を検査します。 全体のフォーマットは x:x:x:x:x:x:d.d.d.d です。
- allowInfra
- インフラストラクチャー最上位ドメインの使用を検査します。 有効なドメインは、Address and Routing Parameter Area (ARPA) ドメインです。 詳しくは、Internet Assigned Numbers Authority (IANA) が提供する「.ARPA Zone Management」を参照してください。
- allowIP
- リテラル IP アドレスの使用を検査します。 デフォルトは true です。
- allowIPV6
- 4 つの 16 進数字の 8 つのグループとして作成された IPv6 アドレスを検査します。
- allowLocal
- 「localhost」が許可されることを検査します。 デフォルトは false です。
- allowNamed
- URL にローカル・ネットワーク用に指定されたホストが組み込み可能であることを検査します。 デフォルトは false です。
- allowPort
- ポート番号が許可されることを検査します。 デフォルトは true です。
myDictionary Dictionary {allowCruft = true}; Validators.EmailValidator("mailto:you@example.com", myDictionary); - Validators.IPValidator (IPAddress String in, constraints Dictionary in) returns (Boolean)
- Validators.IPValidator は、最初のパラメーターが IP アドレスを表すかどうかを示します。
2 番目のパラメーターは一連の制約が含まれている辞書であり、それぞれの制約はブール値に設定されます。
以下に呼び出しの例を示します。
myDictionary Dictionary {allowDottedDecimal = true, allowIPV6 = false}; Validators.IPValidator("191.0.2.1", myDictionary);以下の制約は、前半の 4 つは IPv4 で使用でき、後半の 2 つは IPv6 で使用できます。- allowDecimal
- 0 から 4294967295 の範囲の 10 進数を検査します。
- allowDottedDecimal
- IPv4 用の、207.142.131.235 といった形式のアドレスを検査します。 ゼロ埋め込みは許可されていません。
- allowDottedHex
- IPv4 用の、0x18.0x11.0x9b.0x28 といった形式のアドレスを検査します。 値は大/小文字を区別しません。ゼロ埋め込みが許可されています。
- allowDottedOctal
- IPv4 用の、0030.0021.0233.0050 といった形式のアドレスを検査します。 ゼロ埋め込みが許可されています。
- allowHex
- IPv4 用の、0x0 から 0xFFFFFFFF までの範囲の 16 進数を検査します (例えば 0xCF8E83EB)。 値は大/小文字を区別しません。ゼロ埋め込みが許可されています。
- allowHybrid
- 4 つの 16 進数字の 6 つのグループとして作成された IPv6 アドレス、および IPv4 の通常の 4 つのドット 10 進表記を検査します。 全体のフォーマットは x:x:x:x:x:x:d.d.d.d です。
- allowIPV6
- 4 つの 16 進数字の 8 つのグループとして作成された IPv6 アドレスを検査します。
- Validators.NumberFormatValidator (inputNumber String in, constraints Dictionary in) returns (Boolean)
- Validators.NumberFormatValidator は、最初のパラメーターが適切な形式の数値を表しているかどうかを示します。
2 番目のパラメーターは一連の制約が含まれている辞書です。
この辞書のキーは format のみであり、値のバリエーションは以下のとおりです。
# Represents a digit, 0-9. ? Represents a digit, 0-9; but the digit is optional. Other characters are as is. 以下に例を示します。 "(###) ###-####" -> (999) 999-9999 "(###) ###-#### x#???" -> (999) 9999-9999 x123以下に呼び出しの例を示します。
myDictionary Dictionary {format = "(###) ###-####"}; Validators.NumberFormatValidator("191.42", myDictionary); - Validators.PatternValidator (input String in, pattern String in) returns (Boolean)
- Validators.PatternValidator は、最初のパラメーターが、正規表現である 2 番目のパラメーターと整合しているかどうかを示します。
以下に呼び出しの例を示します。
Validators.PatternValidator("1234", "[0-9]+");この正規表現の規則は、JavaScript によりサポートされるものです。 以下の仕様に記載されているとおり、この規則は Perl バージョン 5 に基づいています。背景となる情報については、Mastering Regular Expressions (Jeffrey E.F. Friedl 著、2006 年 8 月 O'Reilly Media 刊、ISBN 978-0-596-52812-6) を参照してください。
- Validators.RangeValidator (input String in, constraints Dictionary in) returns (Boolean);
- Validators.RangeValidator は、最初のパラメーターが、2 番目のパラメーターが指定した範囲内の数値であるかどうかを示します。
以下のキーが辞書内で有効です。
- min
- 最初のパラメーターが、指定された数値以上であることを検査します。
- max
- 最初のパラメーターが、指定された数値以下であることを検査します。
- decimal
- 小数点に使用される文字を示します。 デフォルトはピリオドです。
以下に呼び出しの例を示します。
myDictionary Dictionary {min = 10, max = 20}; Validators.RangeValidator("18", myDictionary); - Validators.TextValidator (input String in, constraints Dictionary in) returns (Boolean)
- Validators.TextValidator は、最初のパラメーターが、2 番目のパラメーターと整合しているかどうかを示します。
以下のキーが辞書内で有効です。
- length
- 最初のパラメーターの文字数が、ここで指定された数と一致するかどうかを検査します。
- minlength
- 最初のパラメーターの文字数が、ここで指定された数以上であることを検査します。
- maxlength
- 最初のパラメーターの文字数が、ここで指定された数以下であることを検査します。
以下に呼び出しの例を示します。myDictionary Dictionary {length = 4}; Validators.TextValidator("Four", myDictionary); - Validators.URLValidator (input String in, constraints Dictionary in) returns (Boolean)
- Validators.URLValidator は、最初のパラメーターが、2 番目のパラメーターと整合しているかどうかを示します。
辞書内の各キーはブール値に設定され、true は「必須」、false は「許可されない」、[true, false] はオプションであることを意味します。 以下のようなキーが有効です。以下に呼び出しの例を示します。
- allowCC
- 国別コード最上位ドメインの使用を検査します。 有効な国別コードのリストについては、Internet Assigned Numbers Authority (IANA) が提供する「Root Zone Database」を参照してください。
- allowDecimal
- 0 から 4294967295 の範囲の 10 進数を検査します。
- allowDottedDecimal
- IPv4 用の、207.142.131.235 といった形式のアドレスを検査します。 ゼロ埋め込みは許可されていません。
- allowDottedHex
- IPv4 用の、0x18.0x11.0x9b.0x28 といった形式のアドレスを検査します。 値は大/小文字を区別しません。ゼロ埋め込みが許可されています。
- allowDottedOctal
- IPv4 用の、0030.0021.0233.0050 といった形式のアドレスを検査します。 ゼロ埋め込みが許可されています。
- allowGeneric
- 汎用最上位ドメインの使用を検査します。 有効なドメインのリストについては、Internet Assigned Numbers Authority (IANA) が提供する「Root Zone Database」を参照してください。
- allowHex
- IPv4 用の、0x0 から 0xFFFFFFFF までの範囲の 16 進数を検査します (例えば 0xCF8E83EB)。 値は大/小文字を区別しません。ゼロ埋め込みが許可されています。
- allowHybrid
- 4 つの 16 進数字の 6 つのグループとして作成された IPv6 アドレス、および IPv4 の通常の 4 つのドット 10 進表記を検査します。 全体のフォーマットは x:x:x:x:x:x:d.d.d.d です。
- allowInfra
- インフラストラクチャー最上位ドメインの使用を検査します。 詳しくは、Internet Assigned Numbers Authority (IANA) が提供する「.ARPA Zone Management」を参照してください。
- allowIP
- URL をリテラル IP アドレスにできることを検査します。 デフォルトは true です。
- allowIPV6
- 4 つの 16 進数字の 8 つのグループとして作成された IPv6 アドレスを検査します。
- allowLocal
- 「localhost」が許可されることを検査します。 デフォルトは false です。
- allowNamed
- URL にローカル・ネットワーク用に指定されたホストが組み込み可能であることを検査します。 デフォルトは false です。
- allowPort
- ポート番号が許可されることを検査します。 デフォルトは true です。
myDictionary Dictionary {}; Validators.TextValidator("", myDictionary);
一般に、これらの関数にはバリデーター関数から (特に、DojoTextField ウィジェットの validators プロパティーで参照される関数から) アクセスします。
