com.google.appengine.api.users
Interface UserService


public interface UserService

The UserService provides information useful for forcing a user to log in or out, and retrieving information about the user who is currently logged-in.


Method Summary
 java.lang.String createLoginURL(java.lang.String destinationURL)
          Returns an URL that can be used to display a login page to the user.
 java.lang.String createLoginURL(java.lang.String destinationURL, java.lang.String authDomain)
          Returns an URL that can be used to display a login page to the user.
 java.lang.String createLoginURL(java.lang.String destinationURL, java.lang.String authDomain, java.lang.String federatedIdentity, java.util.Set<java.lang.String> attributesRequest)
          Returns an URL that can be used to redirect the user to for third party login for federated login the user.
 java.lang.String createLogoutURL(java.lang.String destinationURL)
          Returns an URL that can be used to log the current user out of this app.
 java.lang.String createLogoutURL(java.lang.String destinationURL, java.lang.String authDomain)
          Returns an URL that can be used to log the current user out of this app.
 User getCurrentUser()
          If the user is logged in, this method will return a User that contains information about them.
 boolean isUserAdmin()
          Returns true if the user making this request is an admin for this application, false otherwise.
 boolean isUserLoggedIn()
          Returns true if there is a user logged in, false otherwise.
 

Method Detail

createLoginURL

java.lang.String createLoginURL(java.lang.String destinationURL)
Returns an URL that can be used to display a login page to the user.

Parameters:
destinationURL - where the user will be redirected after they log in.
Returns:
The URL that will present a login prompt.
Throws:
java.lang.IllegalArgumentException - If the destinationURL is not valid.

createLoginURL

java.lang.String createLoginURL(java.lang.String destinationURL,
                                java.lang.String authDomain)
Returns an URL that can be used to display a login page to the user. For trusted apps only. If the calling app does not have permission to use this feature, then this will behave just like createLoginURL(destinationURL).

Parameters:
destinationURL - where the user will be redirected after they log in.
authDomain - authentication domain to use.
Returns:
The URL that will present a login prompt.
Throws:
java.lang.IllegalArgumentException - If the destinationURL is not valid.

createLoginURL

java.lang.String createLoginURL(java.lang.String destinationURL,
                                java.lang.String authDomain,
                                java.lang.String federatedIdentity,
                                java.util.Set<java.lang.String> attributesRequest)
Returns an URL that can be used to redirect the user to for third party login for federated login the user.

Parameters:
destinationURL - where the user will be redirected after they log in.
federatedIdentity - federated identity string which is to be asserted for users who are authenticated using a non-Google ID (e.g., OpenID). In order to use federated logins this feature must be enabled for the application. Otherwise, this should be null.
authDomain - authentication domain to use.
attributesRequest - additional attributions requested for this login, IDP may not may not support these attributes.
Returns:
The URL that will present a login prompt.
Throws:
java.lang.IllegalArgumentException - If the destinationURL is not valid.

createLogoutURL

java.lang.String createLogoutURL(java.lang.String destinationURL)
Returns an URL that can be used to log the current user out of this app.

Parameters:
destinationURL - where the user will be redirected after they log out.
Returns:
The URL that will log the user out.
Throws:
java.lang.IllegalArgumentException - If the destinationURL is not valid.

createLogoutURL

java.lang.String createLogoutURL(java.lang.String destinationURL,
                                 java.lang.String authDomain)
Returns an URL that can be used to log the current user out of this app. For trusted apps only. If the calling app does not have permission to use this feature, then this will behave just like createLogoutURL(destinationURL).

Parameters:
destinationURL - where the user will be redirected after they log out.
authDomain - authentication domain to use.
Returns:
The URL that will log the user out.
Throws:
java.lang.IllegalArgumentException - If the destinationURL is not valid.

isUserLoggedIn

boolean isUserLoggedIn()
Returns true if there is a user logged in, false otherwise.


isUserAdmin

boolean isUserAdmin()
Returns true if the user making this request is an admin for this application, false otherwise.

Throws:
java.lang.IllegalStateException - If the current user is not logged in.

getCurrentUser

User getCurrentUser()
If the user is logged in, this method will return a User that contains information about them. Note that repeated calls may not necessarily return the same User object.

Returns:
User if the user is logged in, null otherwise.