001/* 002 * oauth2-oidc-sdk 003 * 004 * Copyright 2012-2016, Connect2id Ltd and contributors. 005 * 006 * Licensed under the Apache License, Version 2.0 (the "License"); you may not use 007 * this file except in compliance with the License. You may obtain a copy of the 008 * License at 009 * 010 * http://www.apache.org/licenses/LICENSE-2.0 011 * 012 * Unless required by applicable law or agreed to in writing, software distributed 013 * under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR 014 * CONDITIONS OF ANY KIND, either express or implied. See the License for the 015 * specific language governing permissions and limitations under the License. 016 */ 017 018package com.nimbusds.openid.connect.sdk.assurance.evidences; 019 020 021import net.jcip.annotations.Immutable; 022 023import com.nimbusds.oauth2.sdk.id.Identifier; 024 025 026/** 027 * Identity document type. 028 * 029 * <p>Related specifications: 030 * 031 * <ul> 032 * <li>OpenID Connect for Identity Assurance 1.0, sections 4.1.1.1 and 033 * 11.2. 034 * </ul> 035 */ 036@Deprecated 037@Immutable 038public final class IDDocumentType extends Identifier { 039 040 041 private static final long serialVersionUID = -6631671451012338520L; 042 043 044 /** 045 * An identity document issued by a country's government for the 046 * purpose of identifying a citizen. 047 */ 048 public static final IDDocumentType IDCARD = new IDDocumentType("idcard"); 049 050 051 /** 052 * A passport is a travel document, usually issued by a country's 053 * government, that certifies the identity and nationality of its 054 * holder primarily for the purpose of international 055 * travel. 056 */ 057 public static final IDDocumentType PASSPORT = new IDDocumentType("passport"); 058 059 060 /** 061 * Official document permitting an individual to operate motorized 062 * vehicles. In the absence of a formal identity document, a driver's 063 * license may be accepted in many countries for identity verification. 064 */ 065 public static final IDDocumentType DRIVING_PERMIT = new IDDocumentType("driving_permit"); 066 067 068 /** 069 * ID Card issued by the German government to foreign nationals. 070 */ 071 public static final IDDocumentType DE_IDCARD_FOREIGNERS = new IDDocumentType("de_idcard_foreigners"); 072 073 074 /** 075 * ID Card issued by the German government to foreign nationals as 076 * passports replacement. 077 */ 078 public static final IDDocumentType DE_EMERGENCY_IDCARD = new IDDocumentType("de_emergency_idcard"); 079 080 081 /** 082 * Electronic Resident Permit issued by the German government to 083 * foreign nationals. 084 */ 085 public static final IDDocumentType DE_ERP = new IDDocumentType("de_erp"); 086 087 088 /** 089 * Electronic Resident Permit issued by the German government to 090 * foreign nationals as replacement for another identity document. 091 */ 092 public static final IDDocumentType DE_ERP_REPLACEMENT_IDCARD = new IDDocumentType("de_erp_replacement_idcard"); 093 094 095 /** 096 * ID Card issued by the German government to refugees as passports 097 * replacement. 098 */ 099 public static final IDDocumentType DE_IDCARD_REFUGEES = new IDDocumentType("de_idcard_refugees"); 100 101 102 /** 103 * ID Card issued by the German government to apatrids as passports 104 * replacement. 105 */ 106 public static final IDDocumentType DE_IDCARD_APATRIDS = new IDDocumentType("de_idcard_apatrids"); 107 108 109 /** 110 * Identity document issued to refugees in case of suspension of 111 * deportation that are marked as "id card replacement". 112 */ 113 public static final IDDocumentType DE_CERTIFICATE_OF_SUSPENSION_OF_DEPORTATION = new IDDocumentType("de_certificate_of_suspension_of_deportation"); 114 115 116 /** 117 * Permission to reside issued by the German government to foreign 118 * nationals applying for asylum. 119 */ 120 public static final IDDocumentType DE_PERMISSION_TO_RESIDE = new IDDocumentType("de_permission_to_reside"); 121 122 123 /** 124 * ID Card replacement document issued by the German government to 125 * foreign nationals (see Act on the Residence, Economic Activity and 126 * Integration of Foreigners in the Federal Territory, Residence Act, 127 * Appendix D1 ID Card replacement according to § 48 Abs. 2 i.V.m. § 128 * 78a Abs. 4). 129 */ 130 public static final IDDocumentType DE_REPLACEMENT_IDCARD = new IDDocumentType("de_replacement_idcard"); 131 132 133 /** 134 * Japanese drivers license. 135 */ 136 public static final IDDocumentType JP_DRIVERS_LICENSE = new IDDocumentType("jp_drivers_license"); 137 138 139 /** 140 * Japanese residence card for foreigners. 141 */ 142 public static final IDDocumentType JP_RESIDENCY_CARD_FOR_FOREIGNER = new IDDocumentType("jp_residency_card_for_foreigner"); 143 144 145 /** 146 * Japanese national ID card. 147 */ 148 public static final IDDocumentType JP_INDIVIDUAL_NUMBER_CARD = new IDDocumentType("jp_individual_number_card"); 149 150 151 /** 152 * Japanese special residency card for foreigners to permit permanent 153 * residence. 154 */ 155 public static final IDDocumentType JP_PERMANENT_RESIDENCY_CARD_FOR_FOREIGNER = new IDDocumentType("jp_permanent_residency_card_for_foreigner"); 156 157 158 /** 159 * Japanese health insurance card. 160 */ 161 public static final IDDocumentType JP_HEALTH_INSURANCE_CARD = new IDDocumentType("jp_health_insurance_card"); 162 163 164 /** 165 * Japanese residency card. 166 */ 167 public static final IDDocumentType JP_RESIDENCY_CARD = new IDDocumentType("jp_residency_card"); 168 169 170 /** 171 * Creates a new identity document type. 172 * 173 * @param value The identity document type value. Must not be 174 * {@code null}. 175 */ 176 public IDDocumentType(final String value) { 177 super(value); 178 } 179 180 181 @Override 182 public boolean equals(final Object object) { 183 184 return object instanceof IDDocumentType && 185 this.toString().equals(object.toString()); 186 } 187} 188