Hi Abraham,
To check if a user exists, you can try to retrieve the user and catch
the exception. If the error code is 1301, the user does not exist.
Here is a small example that retrieves a user and checks if it exists:
import com.google.gdata.data.appsforyourdomain.provisioning.UserEntry;
import sample.appsforyourdomain.AppsForYourDomainClient;
import
com.google.gdata.data.appsforyourdomain.AppsForYourDomainException;
public class CheckUser {
public static void main(String[] arg) throws Exception {
AppsForYourDomainClient apps = new
AppsForYourDomainClient("[EMAIL PROTECTED]", "PASSWORD", "domain.com");
System.out.println( userExists( apps, "notExistingUser" ) );
}
public static boolean userExists( AppsForYourDomainClient apps,
String username ) throws Exception {
try {
UserEntry user = apps.retrieveUser(username);
System.out.println(user.getName().getGivenName() + " " +
user.getName().getFamilyName());
} catch (AppsForYourDomainException appsForYourDomainException)
{
if
( appsForYourDomainException.getErrorCode().getErrorCodeAsInt() ==
1301 )
return false;
else throw appsForYourDomainException;
}
return true;
}
}
Cheers,
Julian
On Oct 16, 6:46 pm, "Abraham Segura" <[EMAIL PROTECTED]> wrote:
> Hi could you have a sample code for retrieveuser, it could be help me to see
> how to do it with my code.
>
> Regards
>
> On Mon, Oct 6, 2008 at 9:18 PM, Alex (Google) <[EMAIL PROTECTED]> wrote:
>
> > Hi Abraham,
>
> > You would need to modify your code so that it handles
> > AppsForYourDomainException:
>
> >http://code.google.com/apis/apps/gdata_provisioning_api_v2.0_referenc...
>
> > If you call apps.retrieveUser(...) on a non-existent user it will
> > throw an AppsForYourDomainException with errorCode EntityDoesNotExist.
>
> > If you call apps.createUser(...) on an existing user it will throw an
> > AppsForYourDomainException with errorCode EntityExists.
>
> > -alex
>
> > On Oct 4, 5:37 pm, "Abraham Segura" <[EMAIL PROTECTED]> wrote:
> > > Hi Tony
>
> > > Well actually, I want to make sure no such username exist, and with my
> > code
> > > I use this to get TOKEN and create a User name it is correct or I need
> > > something else.
>
> > > Regards
>
> > > On Sat, Oct 4, 2008 at 5:32 PM, Tony (Google) <[EMAIL PROTECTED]> wrote:
>
> > > > Hi Abraham,
>
> > > > Are you trying to only check if a username exists in your domain or
> > > > you actually want to make sure no such username before creating a new
> > > > user?
>
> > > > Please let me know your use case so I can better help you.
>
> > > > Thanks,
>
> > > > --Tony
>
> > > > On Oct 3, 10:00 am, "Abraham Segura" <[EMAIL PROTECTED]> wrote:
> > > > > Hi Group, did anyone could help me with and example to check if a
> > > > username
> > > > > is already in google apps.
>
> > > > > And I have writting this code could anyone say me it is fine or if I
> > need
> > > > > more souce.
>
> > > > > package com.kionetworks.gapps.ejb;
> > > > > import
> > com.google.gdata.data.appsforyourdomain.provisioning.UserEntry;
> > > > > import com.google.gdata.client.appsforyourdomain.UserService;
> > > > > import
> > > > com.google.gdata.client.appsforyourdomain.AppsForYourDomainService;
> > > > > import com.google.gdata.util.AuthenticationException;
> > > > > import sample.appsforyourdomain.AppsForYourDomainClient;
>
> > > > > import javax.ejb.Stateless;
>
> > > > > @Stateless
> > > > > public class AppServiceBean implements AppServiceLocal
> > > > > {
> > > > > public static String account="[EMAIL PROTECTED]";
> > > > > public static String password="mypass";
> > > > > public static String domain="domain.com.mx";
>
> > > > > public AppServiceBean()
> > > > > {
> > > > > }
>
> > > > > private String getToken() throws AuthenticationException
> > > > > {
> > > > > String token="";
> > > > > UserService userService = new UserService("apps");
> > > > > token =
>
> > userService.getAuthToken(AppServiceBean.account,AppServiceBean.password,
> > > > > null, null,
> > > > > AppsForYourDomainService.APPS_SERVICE, "apps");
> > > > > return token;
> > > > > }
>
> > > > > public void createUser(String username, String givenName, String
> > > > > familyName, String password)
> > > > > {
> > > > > try
> > > > > {
> > > > > AppsForYourDomainClient apps = new
> > > > > AppsForYourDomainClient(AppServiceBean.account,
> > > > > AppServiceBean.password, AppServiceBean.domain);
> > > > > apps.createUser(username, givenName, familyName,
> > > > > PasswordGenerator.getPassword(
> > > > > PasswordGenerator.MINUSCULAS+
> > > > > PasswordGenerator.MAYUSCULAS,10));
> > > > > UserEntry user = apps.retrieveUser(username);
> > > > > }
> > > > > catch(Exception ex)
> > > > > {
> > > > > }
> > > > > }
>
> > > > > }
>
> > > > > class PasswordGenerator
> > > > > {
> > > > > public static String NUMEROS = "0123456789";
> > > > > public static String MAYUSCULAS = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
> > > > > public static String MINUSCULAS = "abcdefghijklmnopqrstuvwxyz";
> > > > > public static String ESPECIALES = "ñÑ";
>
> > > > > public static String getPinNumber()
> > > > > {
> > > > > return getPassword(NUMEROS, 4);
> > > > > }
>
> > > > > public static String getPassword()
> > > > > {
> > > > > return getPassword(8);
> > > > > }
>
> > > > > public static String getPassword(int length)
> > > > > {
> > > > > return getPassword(NUMEROS + MAYUSCULAS + MINUSCULAS,
> > length);
> > > > > }
>
> > > > > public static String getPassword(String key, int length)
> > > > > {
> > > > > String pswd = "";
> > > > > for (int i = 0; i < length; i++)
> > > > > {
> > > > > pswd+=(key.charAt((int)(Math.random() * key.length())));
> > > > > }
> > > > > return pswd;
> > > > > }
>
> > > > > }
>
> > > > > Regards
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups
"Google Apps APIs" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at
http://groups.google.com/group/google-apps-apis?hl=en
-~----------~----~----~----~------~----~------~--~---