This is an automated email from the ASF dual-hosted git repository. orpiske pushed a commit to branch main in repository https://gitbox.apache.org/repos/asf/camel.git
commit 15c805c26d28b6427126cfe21853f952a1a8898e Author: Otavio Rodolfo Piske <[email protected]> AuthorDate: Tue Feb 10 08:40:15 2026 +0000 (chores): modernize instanceof checks in camel-keycloak --- .../keycloak/security/KeycloakSecurityHelper.java | 52 +++++++++++----------- 1 file changed, 27 insertions(+), 25 deletions(-) diff --git a/components/camel-keycloak/src/main/java/org/apache/camel/component/keycloak/security/KeycloakSecurityHelper.java b/components/camel-keycloak/src/main/java/org/apache/camel/component/keycloak/security/KeycloakSecurityHelper.java index 9ef6a9d6f5ab..30967fbeed7c 100644 --- a/components/camel-keycloak/src/main/java/org/apache/camel/component/keycloak/security/KeycloakSecurityHelper.java +++ b/components/camel-keycloak/src/main/java/org/apache/camel/component/keycloak/security/KeycloakSecurityHelper.java @@ -153,10 +153,12 @@ public final class KeycloakSecurityHelper { // Extract permissions from custom claims (primary approach for simple setups) Object permissionsClaim = token.getOtherClaims().get("permissions"); - if (permissionsClaim instanceof java.util.Collection<?>) { - @SuppressWarnings("unchecked") - java.util.Collection<String> permissionsCollection = (java.util.Collection<String>) permissionsClaim; - permissions.addAll(permissionsCollection); + if (permissionsClaim instanceof java.util.Collection<?> permissionsCollection) { + for (Object perm : permissionsCollection) { + if (perm instanceof String s) { + permissions.add(s); + } + } } // Also check for scope-based permissions @@ -199,31 +201,29 @@ public final class KeycloakSecurityHelper { // Extract roles from realm_access claim Object realmAccess = introspectionResult.getClaim("realm_access"); - if (realmAccess instanceof Map) { - @SuppressWarnings("unchecked") - Map<String, Object> realmAccessMap = (Map<String, Object>) realmAccess; + if (realmAccess instanceof Map<?, ?> realmAccessMap) { Object realmRoles = realmAccessMap.get("roles"); - if (realmRoles instanceof Collection) { - @SuppressWarnings("unchecked") - Collection<String> realmRolesCollection = (Collection<String>) realmRoles; - roles.addAll(realmRolesCollection); + if (realmRoles instanceof Collection<?> realmRolesCollection) { + for (Object role : realmRolesCollection) { + if (role instanceof String s) { + roles.add(s); + } + } } } // Extract client roles from resource_access claim Object resourceAccess = introspectionResult.getClaim("resource_access"); - if (resourceAccess instanceof Map) { - @SuppressWarnings("unchecked") - Map<String, Object> resourceAccessMap = (Map<String, Object>) resourceAccess; + if (resourceAccess instanceof Map<?, ?> resourceAccessMap) { Object clientAccess = resourceAccessMap.get(clientId); - if (clientAccess instanceof Map) { - @SuppressWarnings("unchecked") - Map<String, Object> clientAccessMap = (Map<String, Object>) clientAccess; + if (clientAccess instanceof Map<?, ?> clientAccessMap) { Object clientRoles = clientAccessMap.get("roles"); - if (clientRoles instanceof Collection) { - @SuppressWarnings("unchecked") - Collection<String> clientRolesCollection = (Collection<String>) clientRoles; - roles.addAll(clientRolesCollection); + if (clientRoles instanceof Collection<?> clientRolesCollection) { + for (Object role : clientRolesCollection) { + if (role instanceof String s) { + roles.add(s); + } + } } } } @@ -243,10 +243,12 @@ public final class KeycloakSecurityHelper { // Extract permissions from custom claims Object permissionsClaim = introspectionResult.getClaim("permissions"); - if (permissionsClaim instanceof Collection) { - @SuppressWarnings("unchecked") - Collection<String> permissionsCollection = (Collection<String>) permissionsClaim; - permissions.addAll(permissionsCollection); + if (permissionsClaim instanceof Collection<?> permissionsCollection) { + for (Object perm : permissionsCollection) { + if (perm instanceof String s) { + permissions.add(s); + } + } } // Also check for scope-based permissions
