com.mohiva.play.silhouette.impl.providers

OAuth2Provider

abstract class OAuth2Provider extends SocialProvider with Logger

Base class for all OAuth2 providers.

Linear Supertypes
Known Subclasses
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. OAuth2Provider
  2. Logger
  3. SocialProvider
  4. SocialProfileBuilder
  5. Provider
  6. AnyRef
  7. Any
  1. Hide All
  2. Show all
Learn more about member selection
Visibility
  1. Public
  2. All

Instance Constructors

  1. new OAuth2Provider(httpLayer: HTTPLayer, stateProvider: OAuth2StateProvider, settings: OAuth2Settings)

    httpLayer

    The HTTP layer implementation.

    stateProvider

    The state provider implementation.

    settings

    The provider settings.

Type Members

  1. type A = OAuth2Info

    The type of the auth info.

    The type of the auth info.

    Definition Classes
    OAuth2ProviderSocialProvider
  2. abstract type Content

    The content type to parse a profile from.

    The content type to parse a profile from.

    Definition Classes
    SocialProfileBuilder
  3. abstract type Profile <: SocialProfile

    The type of the profile a profile builder is responsible for.

    The type of the profile a profile builder is responsible for.

    Definition Classes
    SocialProfileBuilder

Abstract Value Members

  1. abstract def buildProfile(authInfo: A): Future[Profile]

    Subclasses need to implement this method to populate the profile information from the service provider.

    Subclasses need to implement this method to populate the profile information from the service provider.

    authInfo

    The auth info received from the provider.

    returns

    On success the build social profile, otherwise a failure.

    Attributes
    protected
    Definition Classes
    SocialProfileBuilder
  2. abstract def id: String

    Gets the provider ID.

    Gets the provider ID.

    returns

    The provider ID.

    Definition Classes
    Provider
  3. abstract def profileParser: SocialProfileParser[Content, Profile]

    Returns the profile parser implementation.

    Returns the profile parser implementation.

    returns

    The profile parser implementation.

    Attributes
    protected
    Definition Classes
    SocialProfileBuilder
  4. abstract def urls: Map[String, String]

    Gets the URLs that are needed to retrieve the profile data.

    Gets the URLs that are needed to retrieve the profile data.

    Some providers need more than one request to different URLs to query the profile data. So we use a Map here to allow defining multiple URLs.

    returns

    The URLs that are needed to retrieve the profile data.

    Attributes
    protected
    Definition Classes
    SocialProfileBuilder

Concrete Value Members

  1. final def !=(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  2. final def !=(arg0: Any): Boolean

    Definition Classes
    Any
  3. final def ##(): Int

    Definition Classes
    AnyRef → Any
  4. final def ==(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  5. final def ==(arg0: Any): Boolean

    Definition Classes
    Any
  6. final def asInstanceOf[T0]: T0

    Definition Classes
    Any
  7. def authenticate[B]()(implicit request: ExtractableRequest[B]): Future[Either[Result, OAuth2Info]]

    Starts the authentication process.

    Starts the authentication process.

    B

    The type of the request body.

    request

    The current request.

    returns

    Either a Result or the auth info from the provider.

    Definition Classes
    OAuth2ProviderSocialProvider
  8. def buildInfo(response: WSResponse): Try[OAuth2Info]

    Builds the OAuth2 info from response.

    Builds the OAuth2 info from response.

    response

    The response from the provider.

    returns

    The OAuth2 info on success, otherwise a failure.

    Attributes
    protected
  9. def clone(): AnyRef

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  10. final def eq(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  11. def equals(arg0: Any): Boolean

    Definition Classes
    AnyRef → Any
  12. def finalize(): Unit

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  13. def getAccessToken(code: String)(implicit request: RequestHeader): Future[OAuth2Info]

    Gets the access token.

    Gets the access token.

    code

    The access code.

    request

    The current request.

    returns

    The info containing the access token.

    Attributes
    protected
  14. final def getClass(): Class[_]

    Definition Classes
    AnyRef → Any
  15. def hashCode(): Int

    Definition Classes
    AnyRef → Any
  16. val headers: Seq[(String, String)]

    A list with headers to send to the API.

    A list with headers to send to the API.

    Attributes
    protected
  17. final def isInstanceOf[T0]: Boolean

    Definition Classes
    Any
  18. val logger: Logger

    A named logger instance.

    A named logger instance.

    Definition Classes
    Logger
  19. final def ne(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  20. final def notify(): Unit

    Definition Classes
    AnyRef
  21. final def notifyAll(): Unit

    Definition Classes
    AnyRef
  22. def resolveCallbackURL(url: String)(implicit request: RequestHeader): String

    Resolves the url to be absolute relative to the request.

    Resolves the url to be absolute relative to the request.

    This will pass the url through if its already absolute.

    url

    The url to resolve.

    request

    The current request.

    returns

    The absolute url.

    Attributes
    protected
    Definition Classes
    SocialProvider
  23. def retrieveProfile(authInfo: A): Future[Profile]

    Retrieves the user profile for the given auth info.

    Retrieves the user profile for the given auth info.

    This method can be used to retrieve the profile information for an already authenticated identity.

    authInfo

    The auth info for which the profile information should be retrieved.

    returns

    The profile information for the given auth info.

    Definition Classes
    SocialProvider
  24. final def synchronized[T0](arg0: ⇒ T0): T0

    Definition Classes
    AnyRef
  25. def toString(): String

    Definition Classes
    AnyRef → Any
  26. final def wait(): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  27. final def wait(arg0: Long, arg1: Int): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  28. final def wait(arg0: Long): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from Logger

Inherited from SocialProvider

Inherited from SocialProfileBuilder

Inherited from Provider

Inherited from AnyRef

Inherited from Any

Ungrouped