1082 final JSONObject requestObject =
new JSONObject(p_json);
1084 final List<String>
redirectUris =
new ArrayList<String>();
1085 if (requestObject.has(REDIRECT_URIS.toString())) {
1086 JSONArray redirectUrisJsonArray = requestObject.getJSONArray(REDIRECT_URIS.toString());
1087 for (
int i = 0; i < redirectUrisJsonArray.length(); i++) {
1088 String redirectionUri = redirectUrisJsonArray.getString(i);
1089 redirectUris.add(redirectionUri);
1093 final List<String> claimRedirectUris =
new ArrayList<String>();
1094 if (requestObject.has(CLAIMS_REDIRECT_URIS.toString())) {
1095 JSONArray jsonArray = requestObject.getJSONArray(CLAIMS_REDIRECT_URIS.toString());
1096 for (
int i = 0; i < jsonArray.length(); i++) {
1097 String uri = jsonArray.getString(i);
1098 claimRedirectUris.add(uri);
1102 final Set<ResponseType>
responseTypes =
new HashSet<ResponseType>();
1103 if (requestObject.has(RESPONSE_TYPES.toString())) {
1104 JSONArray responseTypesJsonArray = requestObject.getJSONArray(RESPONSE_TYPES.toString());
1105 for (
int i = 0; i < responseTypesJsonArray.length(); i++) {
1106 String[] rts = responseTypesJsonArray.getString(i).split(
" ");
1107 for (
int j = 0; j < rts.length; j++) {
1108 ResponseType rt = ResponseType.fromString(rts[j]);
1110 responseTypes.add(rt);
1116 final Set<GrantType>
grantTypes =
new HashSet<GrantType>();
1117 if (requestObject.has(GRANT_TYPES.toString())) {
1118 JSONArray grantTypesJsonArray = requestObject.getJSONArray(GRANT_TYPES.toString());
1119 for (
int i = 0; i < grantTypesJsonArray.length(); i++) {
1120 GrantType gt = GrantType.fromString(grantTypesJsonArray.getString(i));
1127 final List<String>
contacts =
new ArrayList<String>();
1128 if (requestObject.has(CONTACTS.toString())) {
1129 JSONArray contactsJsonArray = requestObject.getJSONArray(CONTACTS.toString());
1130 for (
int i = 0; i < contactsJsonArray.length(); i++) {
1131 contacts.add(contactsJsonArray.getString(i));
1136 if (requestObject.has(DEFAULT_ACR_VALUES.toString())) {
1137 JSONArray defaultAcrValuesJsonArray = requestObject.getJSONArray(DEFAULT_ACR_VALUES.toString());
1138 for (
int i = 0; i < defaultAcrValuesJsonArray.length(); i++) {
1139 defaultAcrValues.add(defaultAcrValuesJsonArray.getString(i));
1144 if (requestObject.has(POST_LOGOUT_REDIRECT_URIS.toString())) {
1145 JSONArray postLogoutRedirectUrisJsonArray = requestObject.getJSONArray(POST_LOGOUT_REDIRECT_URIS.toString());
1146 for (
int i = 0; i < postLogoutRedirectUrisJsonArray.length(); i++) {
1147 postLogoutRedirectUris.add(postLogoutRedirectUrisJsonArray.getString(i));
1151 final List<String>
requestUris =
new ArrayList<String>();
1152 if (requestObject.has(REQUEST_URIS.toString())) {
1153 JSONArray requestUrisJsonArray = requestObject.getJSONArray(REQUEST_URIS.toString());
1154 for (
int i = 0; i < requestUrisJsonArray.length(); i++) {
1155 requestUris.add(requestUrisJsonArray.getString(i));
1160 if (requestObject.has(AUTHORIZED_ORIGINS.toString())) {
1161 JSONArray authorizedOriginsJsonArray = requestObject.getJSONArray((AUTHORIZED_ORIGINS.toString()));
1162 for (
int i = 0; i < authorizedOriginsJsonArray.length(); i++) {
1163 authorizedOrigins.add(authorizedOriginsJsonArray.getString(i));
1167 final List<String>
scope =
new ArrayList<String>();
1168 if (authorizationRequestCustomAllowedParameters && requestObject.has(SCOPES.toString())) {
1169 JSONArray scopesJsonArray = requestObject.getJSONArray(SCOPES.toString());
1170 for (
int i = 0; i < scopesJsonArray.length(); i++) {
1171 scope.add(scopesJsonArray.getString(i));
1173 }
else if (requestObject.has(SCOPE.toString())) {
1174 String scopeString = requestObject.getString(SCOPE.toString());
1175 String[] scopeArray = scopeString.split(
" ");
1176 for (String s : scopeArray) {
1177 if (StringUtils.isNotBlank(s)) {
1183 final List<String>
claims =
new ArrayList<String>();
1184 if (requestObject.has(CLAIMS.toString())) {
1185 String claimsString = requestObject.getString(CLAIMS.toString());
1186 String[] claimsArray = claimsString.split(
" ");
1187 for (String c : claimsArray) {
1188 if (StringUtils.isNotBlank(c)) {
1195 if (requestObject.has(FRONT_CHANNEL_LOGOUT_URI.toString())) {
1197 JSONArray frontChannelLogoutUriJsonArray = requestObject.getJSONArray(FRONT_CHANNEL_LOGOUT_URI.toString());
1198 for (
int i = 0; i < frontChannelLogoutUriJsonArray.length(); i++) {
1199 frontChannelLogoutUris.add(frontChannelLogoutUriJsonArray.getString(i));
1201 }
catch (JSONException e) {
1202 frontChannelLogoutUris.add(requestObject.optString(FRONT_CHANNEL_LOGOUT_URI.toString()));
1207 if (requestObject.has(CLIENT_SECRET_EXPIRES_AT_.getName())) {
1208 if (requestObject.optLong(CLIENT_SECRET_EXPIRES_AT_.getName()) > 0) {
1209 clientSecretExpiresAt =
new Date(requestObject.optLong(CLIENT_SECRET_EXPIRES_AT_.getName()));
1214 result.setJsonObject(requestObject);
1215 result.setClientSecretExpiresAt(clientSecretExpiresAt);
1216 result.setRequestUris(requestUris);
1217 result.setAuthorizedOrigins(authorizedOrigins);
1218 result.setClaimsRedirectUris(claimRedirectUris);
1219 result.setInitiateLoginUri(requestObject.optString(INITIATE_LOGIN_URI.toString()));
1220 result.setPostLogoutRedirectUris(postLogoutRedirectUris);
1221 result.setDefaultAcrValues(defaultAcrValues);
1222 result.setRequireAuthTime(requestObject.has(REQUIRE_AUTH_TIME.toString()) && requestObject.getBoolean(REQUIRE_AUTH_TIME.toString()));
1223 result.setFrontChannelLogoutUris(frontChannelLogoutUris);
1224 result.setFrontChannelLogoutSessionRequired(requestObject.optBoolean(FRONT_CHANNEL_LOGOUT_SESSION_REQUIRED.toString()));
1225 result.setDefaultMaxAge(requestObject.has(DEFAULT_MAX_AGE.toString()) ?
1226 requestObject.getInt(DEFAULT_MAX_AGE.toString()) : null);
1227 result.setAccessTokenAsJwt(requestObject.optBoolean(ACCESS_TOKEN_AS_JWT.toString()));
1228 result.setAccessTokenSigningAlg(SignatureAlgorithm.fromString(requestObject.optString(ACCESS_TOKEN_SIGNING_ALG.toString())));
1229 result.setIdTokenSignedResponseAlg(requestObject.has(ID_TOKEN_SIGNED_RESPONSE_ALG.toString()) ?
1230 SignatureAlgorithm.fromString(requestObject.getString(ID_TOKEN_SIGNED_RESPONSE_ALG.toString())) : null);
1231 result.setIdTokenEncryptedResponseAlg(requestObject.has(ID_TOKEN_ENCRYPTED_RESPONSE_ALG.toString()) ?
1232 KeyEncryptionAlgorithm.fromName(requestObject.getString(ID_TOKEN_ENCRYPTED_RESPONSE_ALG.toString())) : null);
1233 result.setIdTokenEncryptedResponseEnc(requestObject.has(ID_TOKEN_ENCRYPTED_RESPONSE_ENC.toString()) ?
1234 BlockEncryptionAlgorithm.fromName(requestObject.getString(ID_TOKEN_ENCRYPTED_RESPONSE_ENC.toString())) : null);
1235 result.setUserInfoSignedResponseAlg(requestObject.has(USERINFO_SIGNED_RESPONSE_ALG.toString()) ?
1236 SignatureAlgorithm.fromString(requestObject.getString(USERINFO_SIGNED_RESPONSE_ALG.toString())) : null);
1237 result.setUserInfoEncryptedResponseAlg(requestObject.has(USERINFO_ENCRYPTED_RESPONSE_ALG.toString()) ?
1238 KeyEncryptionAlgorithm.fromName(requestObject.getString(USERINFO_ENCRYPTED_RESPONSE_ALG.toString())) : null);
1239 result.setUserInfoEncryptedResponseEnc(requestObject.has(USERINFO_ENCRYPTED_RESPONSE_ENC.toString()) ?
1240 BlockEncryptionAlgorithm.fromName(requestObject.getString(USERINFO_ENCRYPTED_RESPONSE_ENC.toString())) : null);
1241 result.setRequestObjectSigningAlg(requestObject.has(REQUEST_OBJECT_SIGNING_ALG.toString()) ?
1242 SignatureAlgorithm.fromString(requestObject.getString(REQUEST_OBJECT_SIGNING_ALG.toString())) : null);
1243 result.setRequestObjectEncryptionAlg(requestObject.has(REQUEST_OBJECT_ENCRYPTION_ALG.toString()) ?
1244 KeyEncryptionAlgorithm.fromName(requestObject.getString(REQUEST_OBJECT_ENCRYPTION_ALG.toString())) : null);
1245 result.setRequestObjectEncryptionEnc(requestObject.has(REQUEST_OBJECT_ENCRYPTION_ENC.toString()) ?
1246 BlockEncryptionAlgorithm.fromName(requestObject.getString(REQUEST_OBJECT_ENCRYPTION_ENC.toString())) : null);
1247 result.setTokenEndpointAuthMethod(requestObject.has(TOKEN_ENDPOINT_AUTH_METHOD.toString()) ?
1248 AuthenticationMethod.fromString(requestObject.getString(TOKEN_ENDPOINT_AUTH_METHOD.toString())) : null);
1249 result.setTokenEndpointAuthSigningAlg(requestObject.has(TOKEN_ENDPOINT_AUTH_SIGNING_ALG.toString()) ?
1250 SignatureAlgorithm.fromString(requestObject.getString(TOKEN_ENDPOINT_AUTH_SIGNING_ALG.toString())) : null);
1251 result.setRedirectUris(redirectUris);
1252 result.setScopes(scope);
1253 result.setScope(scope);
1254 result.setClaims(claims);
1255 result.setResponseTypes(
new ArrayList<ResponseType>(responseTypes));
1256 result.setGrantTypes(
new ArrayList<GrantType>(grantTypes));
1257 result.setApplicationType(requestObject.has(APPLICATION_TYPE.toString()) ?
1258 ApplicationType.fromString(requestObject.getString(APPLICATION_TYPE.toString())) : ApplicationType.WEB);
1259 result.setContacts(contacts);
1260 result.setClientName(requestObject.optString(CLIENT_NAME.toString()));
1261 result.setIdTokenTokenBindingCnf(requestObject.optString(ID_TOKEN_TOKEN_BINDING_CNF.toString(),
""));
1262 result.setLogoUri(requestObject.optString(LOGO_URI.toString()));
1263 result.setClientUri(requestObject.optString(CLIENT_URI.toString()));
1264 result.setPolicyUri(requestObject.optString(POLICY_URI.toString()));
1265 result.setTosUri(requestObject.optString(TOS_URI.toString()));
1266 result.setJwksUri(requestObject.optString(JWKS_URI.toString()));
1267 result.setJwks(requestObject.optString(JWKS.toString()));
1268 result.setSectorIdentifierUri(requestObject.optString(SECTOR_IDENTIFIER_URI.toString()));
1269 result.setSubjectType(requestObject.has(SUBJECT_TYPE.toString()) ?
1270 SubjectType.fromString(requestObject.getString(SUBJECT_TYPE.toString())) : null);
List< String > defaultAcrValues
Definition: RegisterRequest.java:73
List< String > requestUris
Definition: RegisterRequest.java:76
Date clientSecretExpiresAt
Definition: RegisterRequest.java:94
List< String > redirectUris
Definition: RegisterRequest.java:40
RegisterRequest()
Definition: RegisterRequest.java:104
List< String > frontChannelLogoutUris
Definition: RegisterRequest.java:50
List< String > authorizedOrigins
Definition: RegisterRequest.java:77
List< ResponseType > responseTypes
Definition: RegisterRequest.java:42
List< GrantType > grantTypes
Definition: RegisterRequest.java:43
List< String > claims
Definition: RegisterRequest.java:92
List< String > postLogoutRedirectUris
Definition: RegisterRequest.java:75
List< String > contacts
Definition: RegisterRequest.java:45
List< String > scope
Definition: RegisterRequest.java:87