Class LinkedIn

    • Field Detail

      • SCOPE_r_liteprofile

        public static final java.lang.String SCOPE_r_liteprofile
        The scope: basic profile, read only. Today, only "r_liteprofile" is available and is unfortunately very limited.

        "r_liteprofile" (v2)
        "r_basicprofile" (v1), and
        "r_fullprofile" (v1).

        See Also:
        Constant Field Values
      • SCOPE_r_emailaddress

        public static final java.lang.String SCOPE_r_emailaddress
        The scope: email address, read only.
        See Also:
        Constant Field Values
      • DEFAULT_SCOPES

        public static final java.lang.String DEFAULT_SCOPES
        The default scopes: "r_emailaddress r_liteprofile", used when no scope is provided.
        See Also:
        Constant Field Values
    • Constructor Detail

      • LinkedIn

        public LinkedIn​(OAuthSession session,
                        java.lang.String clientID,
                        java.lang.String clientSecret,
                        java.lang.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 as one space delimited string. In order to retrieve the user profile information using {@link #getUserProfileInfo()}, you MUST specify the scopes {@link #SCOPE_r_liteprofile} and if you wish to also get the email address, you must also specify the scope {@link #SCOPE_r_emailaddress}.
        Throws:
        java.lang.NullPointerException - If session, clientID or clientSecret is null.
        java.lang.IllegalArgumentException - If clientID or clientSecret is empty String.
        java.lang.IllegalStateException - If the authentication engine is not initialized.
    • Method Detail

      • getServiceName

        public java.lang.String getServiceName()
        Gets the name of the human readable service name, e.g. Facebook, LinkedIn or Twitter.
        Returns:
        "LinkedIn".
      • getApproximateSize

        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

        public java.lang.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.
      • getUserProfileInfo

        public UserProfileInfo getUserProfileInfo()
                                           throws java.io.IOException,
                                                  java.lang.InterruptedException,
                                                  java.util.concurrent.ExecutionException
        Gets the UserProfileInformation 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:
        java.lang.IllegalStateException - If the authentication has not completed successfully, or if the String "profile" is not among the requested scopes.
        java.util.concurrent.ExecutionException - For execution errors.
        java.lang.InterruptedException - If the revocation action was interrupted.
        java.io.IOException - For I/O errors.