org.brickred.socialauth.provider
Class AolImpl

java.lang.Object
  extended by org.brickred.socialauth.AbstractProvider
      extended by org.brickred.socialauth.provider.AolImpl
All Implemented Interfaces:
Serializable, AuthProvider

public class AolImpl
extends AbstractProvider
implements Serializable

The implementation for the AOL provider. AOL returns very limited profile information and has no implementation for status updates and getting contacts. May be removed in future.

Author:
abhinavm@brickred.com
See Also:
Serialized Form

Field Summary
 
Fields inherited from interface org.brickred.socialauth.AuthProvider
COUNTRY, DOB, EMAIL, EXT_NAMESPACE, FIRST_NAME, FULL_NAME, GENDER, LANGUAGE, LAST_NAME, NICK_NAME, POSTCODE
 
Constructor Summary
AolImpl(OAuthConfig providerConfig)
          Reads properties provided in the configuration file
 
Method Summary
 Response api(String url, String methodType, Map<String,String> params, Map<String,String> headerParams, String body)
          Makes OAuth signed HTTP request to a given URL for making any provider specific calls.
 AccessGrant getAccessGrant()
          Retrieves the AccessGrant object.
 List<Contact> getContactList()
          Gets the list of contacts of the user and their email.
 String getLoginRedirectURL(String redirectUri)
          This is the most important action.
protected  OAuthStrategyBase getOauthStrategy()
          Returns the OAuthStrategyBase of a provider.
protected  List<String> getPluginsList()
          Returns the list of plugins of a provider.
 String getProviderId()
          Retrieves the provider id
 Profile getUserProfile()
          Retrieves the user profile.
 void logout()
          Logout
 void setAccessGrant(AccessGrant accessGrant)
          Stores access grant for the provider *
 void setPermission(Permission p)
           
 void updateStatus(String msg)
          Updates the status on the chosen provider if available.
 Response uploadImage(String message, String fileName, InputStream inputStream)
          Updates the image and message on the chosen provider if available.
 Profile verifyResponse(Map<String,String> requestParams)
          Verifies the user when the external provider redirects back to our application.
 
Methods inherited from class org.brickred.socialauth.AbstractProvider
getPlugin, getPluginsScope, isSupportedPlugin, registerPlugins
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

AolImpl

public AolImpl(OAuthConfig providerConfig)
        throws Exception
Reads properties provided in the configuration file

Parameters:
providerConfig - Properties for consumer key
Throws:
Exception
Method Detail

setAccessGrant

public void setAccessGrant(AccessGrant accessGrant)
Description copied from interface: AuthProvider
Stores access grant for the provider *

Specified by:
setAccessGrant in interface AuthProvider
Parameters:
accessGrant - It contains the access token and other information

getLoginRedirectURL

public String getLoginRedirectURL(String redirectUri)
This is the most important action. It redirects the browser to an appropriate URL which will be used for authentication with the provider that has been set using setId()

Specified by:
getLoginRedirectURL in interface AuthProvider
Throws:
Exception

getContactList

public List<Contact> getContactList()
Gets the list of contacts of the user and their email. this may not be available for all providers.

Specified by:
getContactList in interface AuthProvider
Returns:
List of profile objects representing Contacts. Only name and email will be available

updateStatus

public void updateStatus(String msg)
Updates the status on the chosen provider if available. This may not be implemented for all providers.

Specified by:
updateStatus in interface AuthProvider
Parameters:
msg - Message to be shown as user's status

logout

public void logout()
Logout

Specified by:
logout in interface AuthProvider

setPermission

public void setPermission(Permission p)
Specified by:
setPermission in interface AuthProvider
Parameters:
p - Permission object which can be Permission.AUHTHENTICATE_ONLY, Permission.ALL, Permission.DEFAULT

api

public Response api(String url,
                    String methodType,
                    Map<String,String> params,
                    Map<String,String> headerParams,
                    String body)
             throws Exception
Description copied from interface: AuthProvider
Makes OAuth signed HTTP request to a given URL for making any provider specific calls. For more information, read the comments of this function in different provider.

Specified by:
api in interface AuthProvider
Parameters:
url - URL to make HTTP request.
methodType - Method type can be GET, POST or PUT
params - Any additional parameters whose signature need to compute. Only used in case of "POST" and "PUT" method type.
headerParams - Any additional parameters need to pass as Header Parameters
body - Request Body
Returns:
Response object
Throws:
Exception

getUserProfile

public Profile getUserProfile()
Retrieves the user profile.

Specified by:
getUserProfile in interface AuthProvider
Returns:
Profile object containing the profile information.

getAccessGrant

public AccessGrant getAccessGrant()
Description copied from interface: AuthProvider
Retrieves the AccessGrant object.

Specified by:
getAccessGrant in interface AuthProvider
Returns:
AccessGrant object.

verifyResponse

public Profile verifyResponse(Map<String,String> requestParams)
                       throws Exception
Description copied from interface: AuthProvider
Verifies the user when the external provider redirects back to our application.

Specified by:
verifyResponse in interface AuthProvider
Parameters:
requestParams - Request parameters received from the provider
Returns:
AuthProvider object
Throws:
Exception

getProviderId

public String getProviderId()
Description copied from interface: AuthProvider
Retrieves the provider id

Specified by:
getProviderId in interface AuthProvider
Returns:
provider id.

uploadImage

public Response uploadImage(String message,
                            String fileName,
                            InputStream inputStream)
                     throws Exception
Description copied from interface: AuthProvider
Updates the image and message on the chosen provider if available. This is implemented only for Facebook and Twitter.

Specified by:
uploadImage in interface AuthProvider
Parameters:
message - Status Message
fileName - Image file name
inputStream - Input Stream of image
Returns:
Response object
Throws:
Exception

getPluginsList

protected List<String> getPluginsList()
Description copied from class: AbstractProvider
Returns the list of plugins of a provider.

Specified by:
getPluginsList in class AbstractProvider
Returns:
List of plugins of a provider

getOauthStrategy

protected OAuthStrategyBase getOauthStrategy()
Description copied from class: AbstractProvider
Returns the OAuthStrategyBase of a provider.

Specified by:
getOauthStrategy in class AbstractProvider
Returns:
OAuthStrategyBase of a provider.


Copyright © 2013. All Rights Reserved.