public HashMap getIdentity()

in karavan-app/src/main/java/org/apache/camel/karavan/api/AbstractApiResource.java [35:58]


    public HashMap<String, String> getIdentity(SecurityContext securityContext) {
        var identity = new HashMap<String, String>();
        identity.put("email", "karavan@test.org");
        identity.put("name", "karavan");

        if (securityContext != null && securityContext.getUserPrincipal() != null && securityContext.getUserPrincipal() instanceof DefaultJWTCallerPrincipal principal) {
            if (principal.getName() != null) {
                identity.put("name", principal.getName());
            }
            identity.put("email", principal.getClaim(Claims.email));
        } else if (securityIdentity != null) {
            if (securityIdentity.getPrincipal() != null && securityIdentity.getPrincipal().getName() != null) {
                identity.put("name", securityIdentity.getPrincipal().getName());
            }
            if (securityIdentity.getAttributes().get("email") != null && !securityIdentity.getAttributes().get("email").toString().isBlank()) {
                identity.put("email", securityIdentity.getAttributes().get("email").toString());
            } else if (securityIdentity.getAttributes().get("userinfo") != null) {
                UserInfo userInfo = (UserInfo) securityIdentity.getAttributes().get("userinfo");
                String email = Objects.isNull(userInfo.getEmail()) || userInfo.getEmail().isBlank() ? "karavan@test.org" : userInfo.getEmail();
                identity.put("email", email);
            }
        }
        return identity;
    }