List of usage examples for com.google.gson.stream JsonReader nextLong
public long nextLong() throws IOException
From source file:org.mitre.openid.connect.service.impl.MITREidDataService_1_0.java
License:Apache License
/** * @param reader/* www. j av a 2s .c o m*/ * @throws IOException */ private void readWhitelistedSites(JsonReader reader) throws IOException { reader.beginArray(); while (reader.hasNext()) { WhitelistedSite wlSite = new WhitelistedSite(); Long currentId = null; reader.beginObject(); while (reader.hasNext()) { switch (reader.peek()) { case END_OBJECT: continue; case NAME: String name = reader.nextName(); if (name.equals("id")) { currentId = reader.nextLong(); } else if (name.equals("clientId")) { wlSite.setClientId(reader.nextString()); } else if (name.equals("creatorUserId")) { wlSite.setCreatorUserId(reader.nextString()); } else if (name.equals("allowedScopes")) { Set<String> allowedScopes = readSet(reader); wlSite.setAllowedScopes(allowedScopes); } else { logger.debug("Found unexpected entry"); reader.skipValue(); } break; default: logger.debug("Found unexpected entry"); reader.skipValue(); continue; } } reader.endObject(); Long newId = wlSiteRepository.save(wlSite).getId(); maps.getWhitelistedSiteOldToNewIdMap().put(currentId, newId); } reader.endArray(); logger.info("Done reading whitelisted sites"); }
From source file:org.mitre.openid.connect.service.impl.MITREidDataService_1_1.java
License:Apache License
/** * @param reader//from w ww. j a v a 2s . c o m * @throws IOException */ private void readAuthenticationHolders(JsonReader reader) throws IOException { reader.beginArray(); while (reader.hasNext()) { AuthenticationHolderEntity ahe = new AuthenticationHolderEntity(); reader.beginObject(); Long currentId = null; while (reader.hasNext()) { switch (reader.peek()) { case END_OBJECT: continue; case NAME: String name = reader.nextName(); if (reader.peek() == JsonToken.NULL) { reader.skipValue(); } else if (name.equals("id")) { currentId = reader.nextLong(); } else if (name.equals("ownerId")) { //not needed reader.skipValue(); } else if (name.equals("authentication")) { OAuth2Request clientAuthorization = null; Authentication userAuthentication = null; reader.beginObject(); while (reader.hasNext()) { switch (reader.peek()) { case END_OBJECT: continue; case NAME: String subName = reader.nextName(); if (reader.peek() == JsonToken.NULL) { reader.skipValue(); // skip null values } else if (subName.equals("clientAuthorization")) { clientAuthorization = readAuthorizationRequest(reader); } else if (subName.equals("userAuthentication")) { // skip binary encoded version reader.skipValue(); } else if (subName.equals("savedUserAuthentication")) { userAuthentication = readSavedUserAuthentication(reader); } else { logger.debug("Found unexpected entry"); reader.skipValue(); } break; default: logger.debug("Found unexpected entry"); reader.skipValue(); continue; } } reader.endObject(); OAuth2Authentication auth = new OAuth2Authentication(clientAuthorization, userAuthentication); ahe.setAuthentication(auth); } else { logger.debug("Found unexpected entry"); reader.skipValue(); } break; default: logger.debug("Found unexpected entry"); reader.skipValue(); continue; } } reader.endObject(); Long newId = authHolderRepository.save(ahe).getId(); maps.getAuthHolderOldToNewIdMap().put(currentId, newId); logger.debug("Read authentication holder {}", currentId); } reader.endArray(); logger.info("Done reading authentication holders"); }
From source file:org.mitre.openid.connect.service.impl.MITREidDataService_1_2.java
License:Apache License
/** * @param reader//from w w w . j av a 2 s.c o m * @throws IOException */ private void readRefreshTokens(JsonReader reader) throws IOException { reader.beginArray(); while (reader.hasNext()) { OAuth2RefreshTokenEntity token = new OAuth2RefreshTokenEntity(); reader.beginObject(); Long currentId = null; String clientId = null; Long authHolderId = null; while (reader.hasNext()) { switch (reader.peek()) { case END_OBJECT: continue; case NAME: String name = reader.nextName(); if (reader.peek() == JsonToken.NULL) { reader.skipValue(); } else if (name.equals(ID)) { currentId = reader.nextLong(); } else if (name.equals(EXPIRATION)) { Date date = utcToDate(reader.nextString()); token.setExpiration(date); } else if (name.equals(VALUE)) { String value = reader.nextString(); try { token.setJwt(JWTParser.parse(value)); } catch (ParseException ex) { logger.error("Unable to set refresh token value to {}", value, ex); } } else if (name.equals(CLIENT_ID)) { clientId = reader.nextString(); } else if (name.equals(AUTHENTICATION_HOLDER_ID)) { authHolderId = reader.nextLong(); } else { logger.debug("Found unexpected entry"); reader.skipValue(); } break; default: logger.debug("Found unexpected entry"); reader.skipValue(); continue; } } reader.endObject(); Long newId = tokenRepository.saveRefreshToken(token).getId(); maps.getRefreshTokenToClientRefs().put(currentId, clientId); maps.getRefreshTokenToAuthHolderRefs().put(currentId, authHolderId); maps.getRefreshTokenOldToNewIdMap().put(currentId, newId); logger.debug("Read refresh token {}", currentId); } reader.endArray(); logger.info("Done reading refresh tokens"); }
From source file:org.mitre.openid.connect.service.impl.MITREidDataService_1_2.java
License:Apache License
/** * @param reader/*from www .j ava 2s. co m*/ * @throws IOException */ private void readAccessTokens(JsonReader reader) throws IOException { reader.beginArray(); while (reader.hasNext()) { OAuth2AccessTokenEntity token = new OAuth2AccessTokenEntity(); reader.beginObject(); Long currentId = null; String clientId = null; Long authHolderId = null; Long refreshTokenId = null; while (reader.hasNext()) { switch (reader.peek()) { case END_OBJECT: continue; case NAME: String name = reader.nextName(); if (reader.peek() == JsonToken.NULL) { reader.skipValue(); } else if (name.equals(ID)) { currentId = reader.nextLong(); } else if (name.equals(EXPIRATION)) { Date date = utcToDate(reader.nextString()); token.setExpiration(date); } else if (name.equals(VALUE)) { String value = reader.nextString(); try { // all tokens are JWTs token.setJwt(JWTParser.parse(value)); } catch (ParseException ex) { logger.error("Unable to set refresh token value to {}", value, ex); } } else if (name.equals(CLIENT_ID)) { clientId = reader.nextString(); } else if (name.equals(AUTHENTICATION_HOLDER_ID)) { authHolderId = reader.nextLong(); } else if (name.equals(REFRESH_TOKEN_ID)) { refreshTokenId = reader.nextLong(); } else if (name.equals(SCOPE)) { Set<String> scope = readSet(reader); token.setScope(scope); } else if (name.equals(TYPE)) { token.setTokenType(reader.nextString()); } else { logger.debug("Found unexpected entry"); reader.skipValue(); } break; default: logger.debug("Found unexpected entry"); reader.skipValue(); continue; } } reader.endObject(); Long newId = tokenRepository.saveAccessToken(token).getId(); maps.getAccessTokenToClientRefs().put(currentId, clientId); maps.getAccessTokenToAuthHolderRefs().put(currentId, authHolderId); if (refreshTokenId != null) { maps.getAccessTokenToRefreshTokenRefs().put(currentId, refreshTokenId); } maps.getAccessTokenOldToNewIdMap().put(currentId, newId); logger.debug("Read access token {}", currentId); } reader.endArray(); logger.info("Done reading access tokens"); }
From source file:org.mitre.openid.connect.service.impl.MITREidDataService_1_2.java
License:Apache License
/** * @param reader//w w w .j a v a2s . c o m * @throws IOException */ private void readAuthenticationHolders(JsonReader reader) throws IOException { reader.beginArray(); while (reader.hasNext()) { AuthenticationHolderEntity ahe = new AuthenticationHolderEntity(); reader.beginObject(); Long currentId = null; while (reader.hasNext()) { switch (reader.peek()) { case END_OBJECT: continue; case NAME: String name = reader.nextName(); if (reader.peek() == JsonToken.NULL) { reader.skipValue(); } else if (name.equals(ID)) { currentId = reader.nextLong(); } else if (name.equals(REQUEST_PARAMETERS)) { ahe.setRequestParameters(readMap(reader)); } else if (name.equals(CLIENT_ID)) { ahe.setClientId(reader.nextString()); } else if (name.equals(SCOPE)) { ahe.setScope(readSet(reader)); } else if (name.equals(RESOURCE_IDS)) { ahe.setResourceIds(readSet(reader)); } else if (name.equals(AUTHORITIES)) { Set<String> authorityStrs = readSet(reader); Set<GrantedAuthority> authorities = new HashSet<GrantedAuthority>(); for (String s : authorityStrs) { GrantedAuthority ga = new SimpleGrantedAuthority(s); authorities.add(ga); } ahe.setAuthorities(authorities); } else if (name.equals(APPROVED)) { ahe.setApproved(reader.nextBoolean()); } else if (name.equals(REDIRECT_URI)) { ahe.setRedirectUri(reader.nextString()); } else if (name.equals(RESPONSE_TYPES)) { ahe.setResponseTypes(readSet(reader)); } else if (name.equals(EXTENSIONS)) { ahe.setExtensions(readMap(reader)); } else if (name.equals(SAVED_USER_AUTHENTICATION)) { ahe.setUserAuth(readSavedUserAuthentication(reader)); } else { logger.debug("Found unexpected entry"); reader.skipValue(); } break; default: logger.debug("Found unexpected entry"); reader.skipValue(); continue; } } reader.endObject(); Long newId = authHolderRepository.save(ahe).getId(); maps.getAuthHolderOldToNewIdMap().put(currentId, newId); logger.debug("Read authentication holder {}", currentId); } reader.endArray(); logger.info("Done reading authentication holders"); }
From source file:org.mitre.openid.connect.service.impl.MITREidDataService_1_2.java
License:Apache License
/** * @param reader// w ww .j a va 2 s . co m * @throws IOException */ private void readGrants(JsonReader reader) throws IOException { reader.beginArray(); while (reader.hasNext()) { ApprovedSite site = new ApprovedSite(); Long currentId = null; Set<Long> tokenIds = null; reader.beginObject(); while (reader.hasNext()) { switch (reader.peek()) { case END_OBJECT: continue; case NAME: String name = reader.nextName(); if (reader.peek() == JsonToken.NULL) { reader.skipValue(); } else if (name.equals(ID)) { currentId = reader.nextLong(); } else if (name.equals(ACCESS_DATE)) { Date date = utcToDate(reader.nextString()); site.setAccessDate(date); } else if (name.equals(CLIENT_ID)) { site.setClientId(reader.nextString()); } else if (name.equals(CREATION_DATE)) { Date date = utcToDate(reader.nextString()); site.setCreationDate(date); } else if (name.equals(TIMEOUT_DATE)) { Date date = utcToDate(reader.nextString()); site.setTimeoutDate(date); } else if (name.equals(USER_ID)) { site.setUserId(reader.nextString()); } else if (name.equals(ALLOWED_SCOPES)) { Set<String> allowedScopes = readSet(reader); site.setAllowedScopes(allowedScopes); } else if (name.equals(APPROVED_ACCESS_TOKENS)) { tokenIds = readSet(reader); } else { logger.debug("Found unexpected entry"); reader.skipValue(); } break; default: logger.debug("Found unexpected entry"); reader.skipValue(); continue; } } reader.endObject(); Long newId = approvedSiteRepository.save(site).getId(); maps.getGrantOldToNewIdMap().put(currentId, newId); if (tokenIds != null) { maps.getGrantToAccessTokensRefs().put(currentId, tokenIds); } logger.debug("Read grant {}", currentId); } reader.endArray(); logger.info("Done reading grants"); }
From source file:org.mitre.openid.connect.service.impl.MITREidDataService_1_2.java
License:Apache License
/** * @param reader//from ww w.j a va 2 s . co m * @throws IOException */ private void readWhitelistedSites(JsonReader reader) throws IOException { reader.beginArray(); while (reader.hasNext()) { WhitelistedSite wlSite = new WhitelistedSite(); Long currentId = null; reader.beginObject(); while (reader.hasNext()) { switch (reader.peek()) { case END_OBJECT: continue; case NAME: String name = reader.nextName(); if (name.equals(ID)) { currentId = reader.nextLong(); } else if (name.equals(CLIENT_ID)) { wlSite.setClientId(reader.nextString()); } else if (name.equals(CREATOR_USER_ID)) { wlSite.setCreatorUserId(reader.nextString()); } else if (name.equals(ALLOWED_SCOPES)) { Set<String> allowedScopes = readSet(reader); wlSite.setAllowedScopes(allowedScopes); } else { logger.debug("Found unexpected entry"); reader.skipValue(); } break; default: logger.debug("Found unexpected entry"); reader.skipValue(); continue; } } reader.endObject(); Long newId = wlSiteRepository.save(wlSite).getId(); maps.getWhitelistedSiteOldToNewIdMap().put(currentId, newId); } reader.endArray(); logger.info("Done reading whitelisted sites"); }
From source file:org.mitre.uma.service.impl.UmaDataServiceExtension_1_3.java
License:Apache License
/** * @param reader/*from w w w . ja v a2 s . com*/ */ private void readTokenPermissions(JsonReader reader) throws IOException { reader.beginArray(); while (reader.hasNext()) { reader.beginObject(); Long tokenId = null; Set<Long> permissions = new HashSet<>(); while (reader.hasNext()) { switch (reader.peek()) { case END_OBJECT: continue; case NAME: String name = reader.nextName(); if (name.equals(TOKEN_ID)) { tokenId = reader.nextLong(); } else if (name.equals(PERMISSIONS)) { reader.beginArray(); while (reader.hasNext()) { Permission p = new Permission(); Long rsid = null; Set<String> scope = new HashSet<>(); reader.beginObject(); while (reader.hasNext()) { switch (reader.peek()) { case END_OBJECT: continue; case NAME: String pname = reader.nextName(); if (reader.peek() == JsonToken.NULL) { reader.skipValue(); } else if (pname.equals(RESOURCE_SET)) { rsid = reader.nextLong(); } else if (pname.equals(SCOPES)) { scope = readSet(reader); } else { logger.debug("Found unexpected entry"); reader.skipValue(); } break; default: logger.debug("Found unexpected entry"); reader.skipValue(); continue; } } reader.endObject(); p.setScopes(scope); Permission saved = permissionRepository.saveRawPermission(p); permissionToResourceRefs.put(saved.getId(), rsid); permissions.add(saved.getId()); } reader.endArray(); } break; default: logger.debug("Found unexpected entry"); reader.skipValue(); continue; } } reader.endObject(); tokenToPermissionRefs.put(tokenId, permissions); } reader.endArray(); }
From source file:org.mitre.uma.service.impl.UmaDataServiceExtension_1_3.java
License:Apache License
/** * @param reader// w ww. j a v a 2 s .c om */ private void readPermissionTickets(JsonReader reader) throws IOException { JsonParser parser = new JsonParser(); reader.beginArray(); while (reader.hasNext()) { PermissionTicket ticket = new PermissionTicket(); reader.beginObject(); while (reader.hasNext()) { switch (reader.peek()) { case END_OBJECT: continue; case NAME: String name = reader.nextName(); if (reader.peek() == JsonToken.NULL) { reader.skipValue(); } else if (name.equals(CLAIMS_SUPPLIED)) { Set<Claim> claimsSupplied = new HashSet<>(); reader.beginArray(); while (reader.hasNext()) { Claim c = new Claim(); reader.beginObject(); while (reader.hasNext()) { switch (reader.peek()) { case END_OBJECT: continue; case NAME: String cname = reader.nextName(); if (reader.peek() == JsonToken.NULL) { reader.skipValue(); } else if (cname.equals(ISSUER)) { c.setIssuer(readSet(reader)); } else if (cname.equals(CLAIM_TOKEN_FORMAT)) { c.setClaimTokenFormat(readSet(reader)); } else if (cname.equals(CLAIM_TYPE)) { c.setClaimType(reader.nextString()); } else if (cname.equals(FRIENDLY_NAME)) { c.setFriendlyName(reader.nextString()); } else if (cname.equals(NAME)) { c.setName(reader.nextString()); } else if (cname.equals(VALUE)) { JsonElement e = parser.parse(reader.nextString()); c.setValue(e); } else { logger.debug("Found unexpected entry"); reader.skipValue(); } break; default: logger.debug("Found unexpected entry"); reader.skipValue(); continue; } } reader.endObject(); claimsSupplied.add(c); } reader.endArray(); ticket.setClaimsSupplied(claimsSupplied); } else if (name.equals(EXPIRATION)) { ticket.setExpiration(utcToDate(reader.nextString())); } else if (name.equals(PERMISSION)) { Permission p = new Permission(); Long rsid = null; reader.beginObject(); while (reader.hasNext()) { switch (reader.peek()) { case END_OBJECT: continue; case NAME: String pname = reader.nextName(); if (reader.peek() == JsonToken.NULL) { reader.skipValue(); } else if (pname.equals(RESOURCE_SET)) { rsid = reader.nextLong(); } else if (pname.equals(SCOPES)) { p.setScopes(readSet(reader)); } else { logger.debug("Found unexpected entry"); reader.skipValue(); } break; default: logger.debug("Found unexpected entry"); reader.skipValue(); continue; } } reader.endObject(); Permission saved = permissionRepository.saveRawPermission(p); permissionToResourceRefs.put(saved.getId(), rsid); ticket.setPermission(saved); } else if (name.equals(TICKET)) { ticket.setTicket(reader.nextString()); } else { logger.debug("Found unexpected entry"); reader.skipValue(); } break; default: logger.debug("Found unexpected entry"); reader.skipValue(); continue; } } reader.endObject(); permissionRepository.save(ticket); } reader.endArray(); }
From source file:org.mitre.uma.service.impl.UmaDataServiceExtension_1_3.java
License:Apache License
/** * @param reader//w ww .jav a 2s.c om */ private void readResourceSets(JsonReader reader) throws IOException { JsonParser parser = new JsonParser(); reader.beginArray(); while (reader.hasNext()) { Long oldId = null; ResourceSet rs = new ResourceSet(); reader.beginObject(); while (reader.hasNext()) { switch (reader.peek()) { case END_OBJECT: continue; case NAME: String name = reader.nextName(); if (reader.peek() == JsonToken.NULL) { reader.skipValue(); } else if (name.equals(ID)) { oldId = reader.nextLong(); } else if (name.equals(CLIENT_ID)) { rs.setClientId(reader.nextString()); } else if (name.equals(ICON_URI)) { rs.setIconUri(reader.nextString()); } else if (name.equals(NAME)) { rs.setName(reader.nextString()); } else if (name.equals(TYPE)) { rs.setType(reader.nextString()); } else if (name.equals(URI)) { rs.setUri(reader.nextString()); } else if (name.equals(OWNER)) { rs.setOwner(reader.nextString()); } else if (name.equals(POLICIES)) { Set<Policy> policies = new HashSet<>(); reader.beginArray(); while (reader.hasNext()) { Policy p = new Policy(); reader.beginObject(); while (reader.hasNext()) { switch (reader.peek()) { case END_OBJECT: continue; case NAME: String pname = reader.nextName(); if (reader.peek() == JsonToken.NULL) { reader.skipValue(); } else if (pname.equals(NAME)) { p.setName(reader.nextString()); } else if (pname.equals(SCOPES)) { p.setScopes(readSet(reader)); } else if (pname.equals(CLAIMS_REQUIRED)) { Set<Claim> claimsRequired = new HashSet<>(); reader.beginArray(); while (reader.hasNext()) { Claim c = new Claim(); reader.beginObject(); while (reader.hasNext()) { switch (reader.peek()) { case END_OBJECT: continue; case NAME: String cname = reader.nextName(); if (reader.peek() == JsonToken.NULL) { reader.skipValue(); } else if (cname.equals(ISSUER)) { c.setIssuer(readSet(reader)); } else if (cname.equals(CLAIM_TOKEN_FORMAT)) { c.setClaimTokenFormat(readSet(reader)); } else if (cname.equals(CLAIM_TYPE)) { c.setClaimType(reader.nextString()); } else if (cname.equals(FRIENDLY_NAME)) { c.setFriendlyName(reader.nextString()); } else if (cname.equals(NAME)) { c.setName(reader.nextString()); } else if (cname.equals(VALUE)) { JsonElement e = parser.parse(reader.nextString()); c.setValue(e); } else { logger.debug("Found unexpected entry"); reader.skipValue(); } break; default: logger.debug("Found unexpected entry"); reader.skipValue(); continue; } } reader.endObject(); claimsRequired.add(c); } reader.endArray(); p.setClaimsRequired(claimsRequired); } else { logger.debug("Found unexpected entry"); reader.skipValue(); } break; default: logger.debug("Found unexpected entry"); reader.skipValue(); continue; } } reader.endObject(); policies.add(p); } reader.endArray(); rs.setPolicies(policies); } else if (name.equals(SCOPES)) { rs.setScopes(readSet(reader)); } else { logger.debug("Found unexpected entry"); reader.skipValue(); } break; default: logger.debug("Found unexpected entry"); reader.skipValue(); continue; } } reader.endObject(); Long newId = resourceSetRepository.save(rs).getId(); resourceSetOldToNewIdMap.put(oldId, newId); } reader.endArray(); logger.info("Done reading resource sets"); }