Class Facebook

java.lang.Object
com.iizix.server.oauth.AbstractOAuthService
com.iizix.server.oauth.services.Facebook
All Implemented Interfaces:
IOAuthService

public class Facebook extends AbstractOAuthService
The Facebook service.
  • Field Details Link icon

  • Constructor Details Link icon

    • Facebook Link icon

      public Facebook(OAuthSession session, String clientID, String clientSecret, String... scopes)
      Constructs the service.
      Parameters:
      session - The OAuthSession.
      clientID - The Client ID.
      clientSecret - The Client Secret.
      scopes - The list of scopes as an array, or none for default scopes:In order to retrieve the user profile information using {@link #getUserProfileInfo()}, you MUST either leave scopes empty or specify the scopes {@link #SCOPE_public_profile}, and if you wish to also get the email address, you must also specify the scope {@link #SCOPE_email}.
      Throws:
      NullPointerException - If session, clientID or clientSecret is null.
      IllegalArgumentException - If clientID or clientSecret is empty String.
      IllegalStateException - If the authentication engine is not initialized.
  • Method Details Link icon

    • initialize Link icon

      public static IServiceCreator<Facebook> initialize(String clientID, String clientSecret, String... scopes)
      Creates an instance of the ParamInitializedService that holds the parameters for the provider authentication.
      Parameters:
      clientID - The Client ID.
      clientSecret - The Client Secret.
      scopes - The list of scopes as an array, or none for default scopes:In order to retrieve the user profile information using {@link #getUserProfileInfo()}, you MUST either leave scopes empty or specify the scopes {@link #SCOPE_public_profile}, and if you wish to also get the email address, you must also specify the scope {@link #SCOPE_email}.
      Throws:
      NullPointerException - If clientID, clientSecret or any of the scopes values are null is null.
      IllegalArgumentException - If clientID, clientSecret or any of the scopes values is empty.
    • getAuthenticationProvider Link icon

      public AuthenticationProvider getAuthenticationProvider()
      Gets authentication provider.
      Returns:
      The authentication provider enum AuthenticationProvider.Facebook.
    • getApproximateSize Link icon

      public Size getApproximateSize()
      Gets the approximate size in pixels of the inner browser window requested. This setting used when possible, but is not guaranteed.
      Returns:
      The size, or null if none is known (full screen).
    • getLogoutURL Link icon

      public String getLogoutURL()
      Returns the logout URL for the OAuth service. It is not the same as invalidating an access URL.
      Specified by:
      getLogoutURL in class AbstractOAuthService
      Returns:
      The logout URL is null for none.
    • getUserProfileInfo Link icon

      Gets the UserProfileInfo from this service.

      This will cause the user to have to authenticate with the service, unless not already done.

      All fields available for this service that are possible to set and available will be initialized. Other values will be left null, unknown or undefined.

      Specified by:
      getUserProfileInfo in class AbstractOAuthService
      Returns:
      The UserProfileInfo instance.
      Throws:
      IllegalStateException - If the authentication has not completed successfully, or if the String "profile" is not among the requested scopes.
      ExecutionException - For execution errors.
      InterruptedException - If the revocation action was interrupted.
      IOException - For I/O errors.