diff --git a/avatar-importer/src/main/java/org/gcube/keycloak/oidc/avatar/importer/AvatarImporter.java b/avatar-importer/src/main/java/org/gcube/keycloak/oidc/avatar/importer/AvatarImporter.java index 8a02b4b..4fd2d5c 100755 --- a/avatar-importer/src/main/java/org/gcube/keycloak/oidc/avatar/importer/AvatarImporter.java +++ b/avatar-importer/src/main/java/org/gcube/keycloak/oidc/avatar/importer/AvatarImporter.java @@ -35,7 +35,7 @@ import org.keycloak.provider.ProviderConfigProperty; import org.keycloak.provider.ProviderConfigurationBuilder; import org.keycloak.social.facebook.FacebookIdentityProviderFactory; import org.keycloak.social.google.GoogleIdentityProviderFactory; -import org.keycloak.social.linkedin.LinkedInIdentityProviderFactory; +import org.keycloak.social.linkedin.LinkedInOIDCIdentityProviderFactory; /** * @author Mauro Mugnaini @@ -62,7 +62,7 @@ public class AvatarImporter extends AbstractClaimMapper { public static final String[] PROVIDERS_WITH_SPECIFIC_CODE = { FacebookIdentityProviderFactory.PROVIDER_ID, - LinkedInIdentityProviderFactory.PROVIDER_ID + LinkedInOIDCIdentityProviderFactory.PROVIDER_ID }; public static final String[] COMPATIBLE_PROVIDERS = (String[]) ArrayUtils.addAll(PROVIDERS_WITH_PICTURE_CLAIM, @@ -169,7 +169,7 @@ public class AvatarImporter extends AbstractClaimMapper { logger.info("Cannot load avatar image from claim: " + imageClaim, e); } } - } else if (LinkedInIdentityProviderFactory.PROVIDER_ID.equals(identityProviderAlias)) { + } else if (LinkedInOIDCIdentityProviderFactory.PROVIDER_ID.equals(identityProviderAlias)) { avatarInputStream = loadAvatarFromLinkedIn(context); } else if (FacebookIdentityProviderFactory.PROVIDER_ID.equals(identityProviderAlias)) { avatarInputStream = loadAvatarFromFacebook(context); @@ -217,6 +217,14 @@ public class AvatarImporter extends AbstractClaimMapper { "https://api.linkedin.com/v2/me?projection=(profilePicture(displayImage~:playableStreams))&oauth2_access_token=" + getAccessTokenString(context)).openStream()))); + // If the token cannot be passed anymore via parameter, try use this +// URLConnection urlConnection = new URL( +// "https://api.linkedin.com/v2/me?projection=(profilePicture(displayImage~:playableStreams))") +// .openConnection(); +// urlConnection.addRequestProperty("Authorization ", "Bearer " + getAccessTokenString(context)); +// JSONObject displayImageProjection = (JSONObject) new JSONParser() +// .parse(new InputStreamReader(urlConnection.getInputStream())); + String imageURL = null; @SuppressWarnings("unchecked")