Package org.pac4j.oauth.profile.facebook
Class FacebookProfileCreator
java.lang.Object
org.pac4j.oauth.profile.creator.OAuth20ProfileCreator
org.pac4j.oauth.profile.facebook.FacebookProfileCreator
- All Implemented Interfaces:
org.pac4j.core.profile.creator.ProfileCreator
A specific Facebook profile creator.
- Since:
- 2.0.0
- Author:
- Jerome Leleu
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected org.pac4j.core.client.IndirectClientprotected OAuthConfigurationprotected final org.slf4j.Loggerprotected static final com.fasterxml.jackson.databind.ObjectMapperConstantmapper -
Constructor Summary
ConstructorsConstructorDescriptionFacebookProfileCreator(OAuth20Configuration configuration, org.pac4j.core.client.IndirectClient client) Constructor for FacebookProfileCreator. -
Method Summary
Modifier and TypeMethodDescriptionprotected StringaddExchangeToken(String url, com.github.scribejava.core.model.OAuth2AccessToken accessToken) Adds the token to the URL in question.Optional<org.pac4j.core.profile.UserProfile>create(org.pac4j.core.context.CallContext ctx, org.pac4j.core.credentials.Credentials credentials) protected com.github.scribejava.core.model.OAuthRequestcreateOAuthRequest(String url, com.github.scribejava.core.model.Verb verb) Create an OAuth request.protected Optional<org.pac4j.core.profile.UserProfile>retrieveUserProfileFromToken(org.pac4j.core.context.WebContext context, com.github.scribejava.core.model.Token accessToken) Retrieve the user profile from the access token.protected StringsendRequestForData(com.github.scribejava.core.oauth.OAuthService service, com.github.scribejava.core.model.Token accessToken, String dataUrl, com.github.scribejava.core.model.Verb verb) Make a request to get the data of the authenticated user for the provider.Methods inherited from class org.pac4j.oauth.profile.creator.OAuth20ProfileCreator
addTokenToProfile, getAccessToken, signRequest
-
Field Details
-
logger
protected final org.slf4j.Logger logger -
mapper
protected static final com.fasterxml.jackson.databind.ObjectMapper mapperConstantmapper -
configuration
-
client
protected org.pac4j.core.client.IndirectClient client
-
-
Constructor Details
-
FacebookProfileCreator
public FacebookProfileCreator(OAuth20Configuration configuration, org.pac4j.core.client.IndirectClient client) Constructor for FacebookProfileCreator.
- Parameters:
configuration- aOAuth20Configurationobjectclient- aIndirectClientobject
-
-
Method Details
-
retrieveUserProfileFromToken
protected Optional<org.pac4j.core.profile.UserProfile> retrieveUserProfileFromToken(org.pac4j.core.context.WebContext context, com.github.scribejava.core.model.Token accessToken) Retrieve the user profile from the access token.- Parameters:
context- the web contextaccessToken- the access token- Returns:
- the user profile
-
addExchangeToken
protected String addExchangeToken(String url, com.github.scribejava.core.model.OAuth2AccessToken accessToken) Adds the token to the URL in question. If we require appsecret_proof, then this method will also add the appsecret_proof parameter to the URL, as Facebook expects.- Parameters:
url- the URL to modifyaccessToken- the token we're passing back and forth- Returns:
- url with additional parameter(s)
-
create
public Optional<org.pac4j.core.profile.UserProfile> create(org.pac4j.core.context.CallContext ctx, org.pac4j.core.credentials.Credentials credentials) - Specified by:
createin interfaceorg.pac4j.core.profile.creator.ProfileCreator
-
sendRequestForData
protected String sendRequestForData(com.github.scribejava.core.oauth.OAuthService service, com.github.scribejava.core.model.Token accessToken, String dataUrl, com.github.scribejava.core.model.Verb verb) Make a request to get the data of the authenticated user for the provider.- Parameters:
service- the OAuth serviceaccessToken- the access tokendataUrl- url of the dataverb- method used to request data- Returns:
- the user data response
-
createOAuthRequest
protected com.github.scribejava.core.model.OAuthRequest createOAuthRequest(String url, com.github.scribejava.core.model.Verb verb) Create an OAuth request.- Parameters:
url- the url to callverb- method used to create the request- Returns:
- the request
-