Class FacebookClient
- java.lang.Object
-
- org.pac4j.core.util.InitializableObject
-
- org.pac4j.core.client.BaseClient
-
- org.pac4j.core.client.IndirectClient
-
- org.pac4j.oauth.client.OAuth20Client
-
- org.pac4j.oauth.client.FacebookClient
-
- All Implemented Interfaces:
org.pac4j.core.client.Client
public class FacebookClient extends OAuth20Client
This class is the OAuth client to authenticate users in Facebook.
By default, the following scope is requested to Facebook: user_likes, user_about_me, user_birthday, user_education_history, email, user_hometown, user_relationship_details, user_location, user_religion_politics, user_relationships, user_website and user_work_history.
The scope can be defined to require permissions from the user and retrieve fields from Facebook, by using the
setScope(String)method.By default, the following fields are requested to Facebook: id, name, first_name, middle_name, last_name, gender, locale, languages, link, third_party_id, timezone, updated_time, verified, about, birthday, education, email, hometown, interested_in, location, political, favorite_athletes, favorite_teams, quotes, relationship_status, religion, significant_other, website and work.
The fields can be defined and requested to Facebook, by using the
setFields(String)method.The number of results can be limited by using the
setLimit(int)method.An extended access token can be requested by setting
trueon theFacebookConfiguration.setRequiresExtendedToken(boolean)method.It returns a
FacebookProfile.More information at http://developers.facebook.com/docs/reference/api/user/
More information at https://developers.facebook.com/docs/howtos/login/extending-tokens/
- Since:
- 1.0.0
- Author:
- Jerome Leleu, Mehdi BEN HAJ ABBES
-
-
Field Summary
-
Fields inherited from class org.pac4j.oauth.client.OAuth20Client
configuration
-
-
Constructor Summary
Constructors Constructor Description FacebookClient()FacebookClient(java.lang.String key, java.lang.String secret)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description FacebookConfigurationgetConfiguration()java.lang.StringgetFields()intgetLimit()java.lang.StringgetScope()protected voidinternalInit(boolean forceReinit)voidsetFields(java.lang.String fields)voidsetLimit(int limit)voidsetScope(java.lang.String scope)-
Methods inherited from class org.pac4j.oauth.client.OAuth20Client
beforeInternalInit, getKey, getSecret, setConfiguration, setKey, setSecret, toString
-
Methods inherited from class org.pac4j.core.client.IndirectClient
afterInternalInit, computeFinalCallbackUrl, defaultLogoutActionBuilder, defaultRedirectionActionBuilder, getAjaxRequestResolver, getCallbackUrl, getCallbackUrlResolver, getCodeVerifierSessionAttributeName, getCredentials, getLogoutAction, getLogoutActionBuilder, getNonceSessionAttributeName, getRedirectionAction, getRedirectionActionBuilder, getStateSessionAttributeName, getUrlResolver, isCheckAuthenticationAttempt, newDefaultCallbackUrlResolver, setAjaxRequestResolver, setCallbackUrl, setCallbackUrlResolver, setCheckAuthenticationAttempt, setLogoutActionBuilder, setRedirectionActionBuilder, setUrlResolver
-
Methods inherited from class org.pac4j.core.client.BaseClient
addAuthorizationGenerator, addAuthorizationGenerators, defaultAuthenticator, defaultCredentialsExtractor, defaultProfileCreator, getAuthenticator, getAuthorizationGenerators, getCredentialsExtractor, getCustomProperties, getName, getProfileCreator, getProfileFactoryWhenNotAuthenticated, getSaveProfileInSession, getUserProfile, isMultiProfile, notifySessionRenewal, renewUserProfile, retrieveCredentials, retrieveUserProfile, setAuthenticator, setAuthorizationGenerator, setAuthorizationGenerators, setAuthorizationGenerators, setCredentialsExtractor, setCustomProperties, setMultiProfile, setName, setProfileCreator, setProfileFactoryWhenNotAuthenticated, setSaveProfileInSession
-
-
-
-
Method Detail
-
internalInit
protected void internalInit(boolean forceReinit)
- Overrides:
internalInitin classOAuth20Client
-
getConfiguration
public FacebookConfiguration getConfiguration()
- Overrides:
getConfigurationin classOAuth20Client
-
getScope
public java.lang.String getScope()
-
setScope
public void setScope(java.lang.String scope)
-
getFields
public java.lang.String getFields()
-
setFields
public void setFields(java.lang.String fields)
-
getLimit
public int getLimit()
-
setLimit
public void setLimit(int limit)
-
-