ConfigurableSpecifiedResidenceCard
格納されるデータを設定可能な特定在留カード等(特定在留カード・特定特別永住者証明書)を表す MockSpecifiedResidenceCard を実装したクラス
このクラスのインスタンスを MockCardSupplier.getCard の返却値とするような MockCardSupplier を作成し、 ReaderSession.registerMockCardSupplier を使用してセッションに設定することで、モック環境で生成するカード情報を 設定できます。
このクラスは テスト・開発専用 です。ここで生成されるデータは本物の特定在留カード等ではなく、証明書のサブジェクトには 本物と誤認されないようにモック用識別子(P8N-MOCK)が使用されます。
在留カード等番号の設定
引数の cardNumber によって在留カード等番号を設定できます。設定しない場合は "AA12345678BB" が使用されます。
カード種別の設定
引数の cardType によってカード種別を設定できます。設定しない場合は特定在留カード(種別07)が使用されます。 種別08(特定特別永住者証明書)では券面記載事項が短くなり(46バイト)、資格外活動許可欄・在留期間等更新申請欄は 存在しないカードになります。
券面記載事項の設定
券面記載事項の各項目(満了日・生年月日・性別・国籍地域コード・在留資格・在留期間・許可の種類・許可年月日・ 就労制限の有無・在留期間満了日)を個別に設定できます。文字列はすべて UTF-8 として扱われ、各項目の最大長まで 0x00 でパディングされます。 生年月日・性別を設定しない場合は seed から決定的に生成されるランダムな値が使用されます(同じ seed であれば 同じ値となり、券面事項入力補助APモックと同一 seed のとき同じ生年月日・性別になります)。
画像の設定
氏名イメージ・顔画像・住居地イメージをバイト列で設定できます。設定しない場合は埋め込みの固定画像が 使用されます。画像の TLV には実データ長が記録され、EF の残り領域は 0x00 でパディングされます。
1歳未満の設定
引数の isUnderOneYearOld を true にすると、顔画像・チェックコード・カード証明書が Length=0 になります (EF の容量は維持されます)。
特定在留カード等APの有無
引数の hasSpecifiedResidenceCardAP によって、このカードに特定在留カード等APが存在するかを設定できます。 false を指定した場合、AP選択時にアクセス対象ファイルが存在しないことを表す例外が発生します。
Nullable型の引数を省略した場合やnullを指定した場合はランダムまたは既定の値が使用されます。 ランダムな値は、同じ seed であれば同じ値となります。
Parameters
乱数のシード
在留カード等番号
カード種別
券面: 有効期間満了日(C5)
券面: 生年月日(C6)
券面: 性別(C7)
券面: 国籍・地域コード(C8)
券面: 在留資格(C9)
券面: 在留期間(CE)
券面: 許可の種類(CA)
券面: 許可年月日(CB)
券面: 就労制限の有無(CC)
券面: 在留期間満了日(CD)
氏名イメージ
顔画像
住居地イメージ
資格外活動許可欄: 許可種別(D5)
資格外活動許可欄: 許可年月日(D6)
資格外活動許可欄: 許可有無(D7)
在留期間等更新申請欄(D8)
その他: フラグ(D9)
その他: 予備領域(DE。UTF-8 として扱われ、200バイトまで 0x00 でパディングされる)
1歳未満かどうか
カード証明書
特定在留カード等APが存在するか