Principal buildPrincipal(Jwt jwt) { String subject = jwt.subject() .orElseThrow(() -> new JwtException("JWT does not contain subject claim, cannot create principal.")); String name = jwt.preferredUsername() .orElse(subject); Principal.Builder builder = Principal.builder(); builder.name(name) .id(subject); jwt.payloadClaims() .forEach((key, jsonValue) -> builder.addAttribute(key, JwtUtil.toObject(jsonValue))); jwt.email().ifPresent(value -> builder.addAttribute("email", value)); jwt.emailVerified().ifPresent(value -> builder.addAttribute("email_verified", value)); jwt.locale().ifPresent(value -> builder.addAttribute("locale", value)); jwt.familyName().ifPresent(value -> builder.addAttribute("family_name", value)); jwt.givenName().ifPresent(value -> builder.addAttribute("given_name", value)); jwt.fullName().ifPresent(value -> builder.addAttribute("full_name", value)); return builder.build(); }
private Principal buildPrincipal(Jwt jwt) { String subject = jwt.subject() .orElseThrow(() -> new JwtException("JWT does not contain subject claim, cannot create principal.")); String name = jwt.preferredUsername() .orElse(subject); Principal.Builder builder = Principal.builder(); builder.name(name) .id(subject); jwt.payloadClaims() .forEach((key, jsonValue) -> builder.addAttribute(key, JwtUtil.toObject(jsonValue))); jwt.email().ifPresent(value -> builder.addAttribute("email", value)); jwt.emailVerified().ifPresent(value -> builder.addAttribute("email_verified", value)); jwt.locale().ifPresent(value -> builder.addAttribute("locale", value)); jwt.familyName().ifPresent(value -> builder.addAttribute("family_name", value)); jwt.givenName().ifPresent(value -> builder.addAttribute("given_name", value)); jwt.fullName().ifPresent(value -> builder.addAttribute("full_name", value)); return builder.build(); } }
private JsonWebTokenImpl(SignedJwt signed) { this.jwt = signed.getJwt(); this.signed = signed; BasicAttributes container = BasicAttributes.create(); jwt.payloadClaims() .forEach((key, jsonValue) -> container.put(key, JwtUtil.toObject(jsonValue))); jwt.email().ifPresent(value -> container.put("email", value)); jwt.emailVerified().ifPresent(value -> container.put("email_verified", value)); jwt.locale().ifPresent(value -> container.put("locale", value)); jwt.familyName().ifPresent(value -> container.put("family_name", value)); jwt.givenName().ifPresent(value -> container.put("given_name", value)); jwt.fullName().ifPresent(value -> container.put("full_name", value)); this.properties = container; String subject = jwt.subject() .orElseThrow(() -> new JwtException("JWT does not contain subject claim, cannot create principal.")); this.name = OptionalHelper.from(jwt.userPrincipal()) .or(jwt::preferredUsername).asOptional() .orElse(subject); this.id = subject; }
Principal buildPrincipal(Jwt jwt) { String subject = jwt.subject() .orElseThrow(() -> new JwtException("JWT does not contain subject claim, cannot create principal.")); String name = jwt.preferredUsername() .orElse(subject); Principal.Builder builder = Principal.builder(); builder.name(name) .id(subject); jwt.payloadClaims() .forEach((key, jsonValue) -> builder.addAttribute(key, JwtUtil.toObject(jsonValue))); jwt.email().ifPresent(value -> builder.addAttribute("email", value)); jwt.emailVerified().ifPresent(value -> builder.addAttribute("email_verified", value)); jwt.locale().ifPresent(value -> builder.addAttribute("locale", value)); jwt.familyName().ifPresent(value -> builder.addAttribute("family_name", value)); jwt.givenName().ifPresent(value -> builder.addAttribute("given_name", value)); jwt.fullName().ifPresent(value -> builder.addAttribute("full_name", value)); return builder.build(); }
private JsonWebTokenImpl(SignedJwt signed) { this.jwt = signed.getJwt(); this.signed = signed; BasicAttributes container = BasicAttributes.create(); jwt.payloadClaims() .forEach((key, jsonValue) -> container.put(key, JwtUtil.toObject(jsonValue))); jwt.email().ifPresent(value -> container.put("email", value)); jwt.emailVerified().ifPresent(value -> container.put("email_verified", value)); jwt.locale().ifPresent(value -> container.put("locale", value)); jwt.familyName().ifPresent(value -> container.put("family_name", value)); jwt.givenName().ifPresent(value -> container.put("given_name", value)); jwt.fullName().ifPresent(value -> container.put("full_name", value)); this.properties = container; String subject = jwt.subject() .orElseThrow(() -> new JwtException("JWT does not contain subject claim, cannot create principal.")); this.name = OptionalHelper.from(jwt.userPrincipal()) .or(jwt::preferredUsername).asOptional() .orElse(subject); this.id = subject; }