Class GitHubClient

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.GitHubClient
All Implemented Interfaces:
org.pac4j.core.client.Client

public class GitHubClient extends OAuth20Client

This class is the OAuth client to authenticate users in GitHub.

The scope can be defined to require specific permissions from the user by using the setScope(String) method. By default, the scope is: user.

It returns a GitHubProfile.

More information at http://developer.github.com/v3/users/

Since:
1.0.0
Author:
Jerome Leleu
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static final String
    Constant DEFAULT_SCOPE="user"

    Fields inherited from class org.pac4j.oauth.client.OAuth20Client

    configuration

    Fields inherited from class org.pac4j.core.client.IndirectClient

    ATTEMPTED_AUTHENTICATION_SUFFIX, callbackUrl, callbackUrlResolver, urlResolver

    Fields inherited from class org.pac4j.core.client.BaseClient

    logger, saveProfileInSession
  • Constructor Summary

    Constructors
    Constructor
    Description
    Constructor for GitHubClient.
    GitHubClient(String key, String secret)
    Constructor for GitHubClient.
  • Method Summary

    Modifier and Type
    Method
    Description
    getScope.
    protected void
    internalInit(boolean forceReinit)
    void
    setScope.

    Methods inherited from class org.pac4j.oauth.client.OAuth20Client

    beforeInternalInit, getKey, getSecret, setKey, setSecret

    Methods inherited from class org.pac4j.core.client.IndirectClient

    afterInternalInit, checkCredentials, computeFinalCallbackUrl, getAjaxRequestResolver, getCallbackUrl, getCallbackUrlResolver, getCodeVerifierSessionAttributeName, getLogoutAction, getLogoutActionBuilder, getLogoutProcessor, getNonceSessionAttributeName, getRedirectionAction, getRedirectionActionBuilder, getStateSessionAttributeName, getUrlResolver, isCheckAuthenticationAttempt, newDefaultCallbackUrlResolver, processLogout, setAjaxRequestResolver, setCallbackUrl, setCallbackUrlResolver, setCheckAuthenticationAttempt, setLogoutActionBuilder, setLogoutActionBuilderIfUndefined, setLogoutProcessor, setLogoutProcessorIfUndefined, setRedirectionActionBuilder, setRedirectionActionBuilderIfUndefined, setUrlResolver, toString

    Methods inherited from class org.pac4j.core.client.BaseClient

    addAuthorizationGenerator, addAuthorizationGenerators, getAuthenticator, getAuthorizationGenerators, getCredentials, getCredentialsExtractor, getCustomProperties, getLogger, getName, getProfileCreator, getProfileFactoryWhenNotAuthenticated, getSaveProfileInSession, getSaveProfileInSession, getUserProfile, internalValidateCredentials, isMultiProfile, isMultiProfile, notifySessionRenewal, renewUserProfile, setAuthenticator, setAuthenticatorIfUndefined, setAuthorizationGenerator, setAuthorizationGenerators, setAuthorizationGenerators, setCredentialsExtractor, setCredentialsExtractorIfUndefined, setCustomProperties, setMultiProfile, setName, setProfileCreator, setProfileCreatorIfUndefined, setProfileFactoryWhenNotAuthenticated, setSaveProfileInSession, validateCredentials

    Methods inherited from class org.pac4j.core.util.InitializableObject

    getInitialized, getLastAttempt, getMaxAttempts, getMinTimeIntervalBetweenAttemptsInMilliseconds, getNbAttempts, init, init, isInitialized, reinit, setMaxAttempts, setMinTimeIntervalBetweenAttemptsInMilliseconds, shouldInitialize

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
  • Field Details

  • Constructor Details

    • GitHubClient

      public GitHubClient()

      Constructor for GitHubClient.

    • GitHubClient

      public GitHubClient(String key, String secret)

      Constructor for GitHubClient.

      Parameters:
      key - a String object
      secret - a String object
  • Method Details

    • internalInit

      protected void internalInit(boolean forceReinit)
      Overrides:
      internalInit in class OAuth20Client
    • getScope

      public String getScope()

      getScope.

      Returns:
      a String object
    • setScope

      public void setScope(String scope)

      setScope.

      Parameters:
      scope - a String object