001    /**
002     * Copyright (c) 2000-2012 Liferay, Inc. All rights reserved.
003     *
004     * This library is free software; you can redistribute it and/or modify it under
005     * the terms of the GNU Lesser General Public License as published by the Free
006     * Software Foundation; either version 2.1 of the License, or (at your option)
007     * any later version.
008     *
009     * This library is distributed in the hope that it will be useful, but WITHOUT
010     * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
011     * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
012     * details.
013     */
014    
015    package com.liferay.portal.service;
016    
017    import com.liferay.portal.kernel.exception.PortalException;
018    import com.liferay.portal.kernel.exception.SystemException;
019    import com.liferay.portal.kernel.jsonwebservice.JSONWebService;
020    import com.liferay.portal.kernel.transaction.Isolation;
021    import com.liferay.portal.kernel.transaction.Propagation;
022    import com.liferay.portal.kernel.transaction.Transactional;
023    import com.liferay.portal.security.ac.AccessControlled;
024    
025    /**
026     * The interface for the user remote service.
027     *
028     * <p>
029     * This is a remote service. Methods of this service are expected to have security checks based on the propagated JAAS credentials because this service can be accessed remotely.
030     * </p>
031     *
032     * @author Brian Wing Shun Chan
033     * @see UserServiceUtil
034     * @see com.liferay.portal.service.base.UserServiceBaseImpl
035     * @see com.liferay.portal.service.impl.UserServiceImpl
036     * @generated
037     */
038    @AccessControlled
039    @JSONWebService
040    @Transactional(isolation = Isolation.PORTAL, rollbackFor =  {
041            PortalException.class, SystemException.class})
042    public interface UserService extends BaseService {
043            /*
044             * NOTE FOR DEVELOPERS:
045             *
046             * Never modify or reference this interface directly. Always use {@link UserServiceUtil} to access the user remote service. Add custom service methods to {@link com.liferay.portal.service.impl.UserServiceImpl} and rerun ServiceBuilder to automatically copy the method declarations to this interface.
047             */
048    
049            /**
050            * Returns the Spring bean ID for this bean.
051            *
052            * @return the Spring bean ID for this bean
053            */
054            public java.lang.String getBeanIdentifier();
055    
056            /**
057            * Sets the Spring bean ID for this bean.
058            *
059            * @param beanIdentifier the Spring bean ID for this bean
060            */
061            public void setBeanIdentifier(java.lang.String beanIdentifier);
062    
063            /**
064            * Adds the users to the group.
065            *
066            * @param groupId the primary key of the group
067            * @param userIds the primary keys of the users
068            * @param serviceContext the service context (optionally <code>null</code>)
069            * @throws PortalException if a group or user with the primary key could not
070            be found, or if the user did not have permission to assign group
071            members
072            * @throws SystemException if a system exception occurred
073            */
074            public void addGroupUsers(long groupId, long[] userIds,
075                    com.liferay.portal.service.ServiceContext serviceContext)
076                    throws com.liferay.portal.kernel.exception.PortalException,
077                            com.liferay.portal.kernel.exception.SystemException;
078    
079            /**
080            * Adds the users to the organization.
081            *
082            * @param organizationId the primary key of the organization
083            * @param userIds the primary keys of the users
084            * @throws PortalException if an organization or user with the primary key
085            could not be found, if the user did not have permission to assign
086            organization members, or if current user did not have an
087            organization in common with a given user
088            * @throws SystemException if a system exception occurred
089            */
090            public void addOrganizationUsers(long organizationId, long[] userIds)
091                    throws com.liferay.portal.kernel.exception.PortalException,
092                            com.liferay.portal.kernel.exception.SystemException;
093    
094            /**
095            * Assigns the password policy to the users, removing any other currently
096            * assigned password policies.
097            *
098            * @param passwordPolicyId the primary key of the password policy
099            * @param userIds the primary keys of the users
100            * @throws PortalException if the user did not have permission to assign
101            policy members
102            * @throws SystemException if a system exception occurred
103            */
104            public void addPasswordPolicyUsers(long passwordPolicyId, long[] userIds)
105                    throws com.liferay.portal.kernel.exception.PortalException,
106                            com.liferay.portal.kernel.exception.SystemException;
107    
108            /**
109            * Adds the users to the role.
110            *
111            * @param roleId the primary key of the role
112            * @param userIds the primary keys of the users
113            * @throws PortalException if a role or user with the primary key could not
114            be found or if the user did not have permission to assign role
115            members
116            * @throws SystemException if a system exception occurred
117            */
118            public void addRoleUsers(long roleId, long[] userIds)
119                    throws com.liferay.portal.kernel.exception.PortalException,
120                            com.liferay.portal.kernel.exception.SystemException;
121    
122            /**
123            * Adds the users to the team.
124            *
125            * @param teamId the primary key of the team
126            * @param userIds the primary keys of the users
127            * @throws PortalException if a team or user with the primary key could not
128            be found or if the user did not have permission to assign team
129            members
130            * @throws SystemException if a system exception occurred
131            */
132            public void addTeamUsers(long teamId, long[] userIds)
133                    throws com.liferay.portal.kernel.exception.PortalException,
134                            com.liferay.portal.kernel.exception.SystemException;
135    
136            /**
137            * Adds a user.
138            *
139            * <p>
140            * This method handles the creation and bookkeeping of the user including
141            * its resources, metadata, and internal data structures. It is not
142            * necessary to make subsequent calls to any methods to setup default
143            * groups, resources, etc.
144            * </p>
145            *
146            * @param companyId the primary key of the user's company
147            * @param autoPassword whether a password should be automatically generated
148            for the user
149            * @param password1 the user's password
150            * @param password2 the user's password confirmation
151            * @param autoScreenName whether a screen name should be automatically
152            generated for the user
153            * @param screenName the user's screen name
154            * @param emailAddress the user's email address
155            * @param facebookId the user's facebook ID
156            * @param openId the user's OpenID
157            * @param locale the user's locale
158            * @param firstName the user's first name
159            * @param middleName the user's middle name
160            * @param lastName the user's last name
161            * @param prefixId the user's name prefix ID
162            * @param suffixId the user's name suffix ID
163            * @param male whether the user is male
164            * @param birthdayMonth the user's birthday month (0-based, meaning 0 for
165            January)
166            * @param birthdayDay the user's birthday day
167            * @param birthdayYear the user's birthday year
168            * @param jobTitle the user's job title
169            * @param groupIds the primary keys of the user's groups
170            * @param organizationIds the primary keys of the user's organizations
171            * @param roleIds the primary keys of the roles this user possesses
172            * @param userGroupIds the primary keys of the user's user groups
173            * @param sendEmail whether to send the user an email notification about
174            their new account
175            * @param serviceContext the user's service context (optionally
176            <code>null</code>). Can set the universally unique identifier
177            (with the <code>uuid</code> attribute), asset category IDs, asset
178            tag names, and expando bridge attributes for the user.
179            * @return the new user
180            * @throws PortalException if the user's information was invalid, if the
181            creator did not have permission to add users, or if the email
182            address was reserved
183            * @throws SystemException if a system exception occurred
184            */
185            public com.liferay.portal.model.User addUser(long companyId,
186                    boolean autoPassword, java.lang.String password1,
187                    java.lang.String password2, boolean autoScreenName,
188                    java.lang.String screenName, java.lang.String emailAddress,
189                    long facebookId, java.lang.String openId, java.util.Locale locale,
190                    java.lang.String firstName, java.lang.String middleName,
191                    java.lang.String lastName, int prefixId, int suffixId, boolean male,
192                    int birthdayMonth, int birthdayDay, int birthdayYear,
193                    java.lang.String jobTitle, long[] groupIds, long[] organizationIds,
194                    long[] roleIds, long[] userGroupIds, boolean sendEmail,
195                    com.liferay.portal.service.ServiceContext serviceContext)
196                    throws com.liferay.portal.kernel.exception.PortalException,
197                            com.liferay.portal.kernel.exception.SystemException;
198    
199            /**
200            * Adds a user with additional parameters.
201            *
202            * <p>
203            * This method handles the creation and bookkeeping of the user including
204            * its resources, metadata, and internal data structures. It is not
205            * necessary to make subsequent calls to any methods to setup default
206            * groups, resources, etc.
207            * </p>
208            *
209            * @param companyId the primary key of the user's company
210            * @param autoPassword whether a password should be automatically generated
211            for the user
212            * @param password1 the user's password
213            * @param password2 the user's password confirmation
214            * @param autoScreenName whether a screen name should be automatically
215            generated for the user
216            * @param screenName the user's screen name
217            * @param emailAddress the user's email address
218            * @param facebookId the user's facebook ID
219            * @param openId the user's OpenID
220            * @param locale the user's locale
221            * @param firstName the user's first name
222            * @param middleName the user's middle name
223            * @param lastName the user's last name
224            * @param prefixId the user's name prefix ID
225            * @param suffixId the user's name suffix ID
226            * @param male whether the user is male
227            * @param birthdayMonth the user's birthday month (0-based, meaning 0 for
228            January)
229            * @param birthdayDay the user's birthday day
230            * @param birthdayYear the user's birthday year
231            * @param jobTitle the user's job title
232            * @param groupIds the primary keys of the user's groups
233            * @param organizationIds the primary keys of the user's organizations
234            * @param roleIds the primary keys of the roles this user possesses
235            * @param userGroupIds the primary keys of the user's user groups
236            * @param addresses the user's addresses
237            * @param emailAddresses the user's email addresses
238            * @param phones the user's phone numbers
239            * @param websites the user's websites
240            * @param announcementsDelivers the announcements deliveries
241            * @param sendEmail whether to send the user an email notification about
242            their new account
243            * @param serviceContext the user's service context (optionally
244            <code>null</code>). Can set the universally unique identifier
245            (with the <code>uuid</code> attribute), asset category IDs, asset
246            tag names, and expando bridge attributes for the user.
247            * @return the new user
248            * @throws PortalException if the user's information was invalid, if the
249            creator did not have permission to add users, if the email
250            address was reserved, or some other portal exception occurred
251            * @throws SystemException if a system exception occurred
252            */
253            public com.liferay.portal.model.User addUser(long companyId,
254                    boolean autoPassword, java.lang.String password1,
255                    java.lang.String password2, boolean autoScreenName,
256                    java.lang.String screenName, java.lang.String emailAddress,
257                    long facebookId, java.lang.String openId, java.util.Locale locale,
258                    java.lang.String firstName, java.lang.String middleName,
259                    java.lang.String lastName, int prefixId, int suffixId, boolean male,
260                    int birthdayMonth, int birthdayDay, int birthdayYear,
261                    java.lang.String jobTitle, long[] groupIds, long[] organizationIds,
262                    long[] roleIds, long[] userGroupIds,
263                    java.util.List<com.liferay.portal.model.Address> addresses,
264                    java.util.List<com.liferay.portal.model.EmailAddress> emailAddresses,
265                    java.util.List<com.liferay.portal.model.Phone> phones,
266                    java.util.List<com.liferay.portal.model.Website> websites,
267                    java.util.List<com.liferay.portlet.announcements.model.AnnouncementsDelivery> announcementsDelivers,
268                    boolean sendEmail,
269                    com.liferay.portal.service.ServiceContext serviceContext)
270                    throws com.liferay.portal.kernel.exception.PortalException,
271                            com.liferay.portal.kernel.exception.SystemException;
272    
273            /**
274            * Adds the users to the user group.
275            *
276            * @param userGroupId the primary key of the user group
277            * @param userIds the primary keys of the users
278            * @throws PortalException if a user group or user with the primary could
279            could not be found, or if the current user did not have
280            permission to assign group members
281            * @throws SystemException if a system exception occurred
282            */
283            public void addUserGroupUsers(long userGroupId, long[] userIds)
284                    throws com.liferay.portal.kernel.exception.PortalException,
285                            com.liferay.portal.kernel.exception.SystemException;
286    
287            /**
288            * Adds a user with workflow.
289            *
290            * <p>
291            * This method handles the creation and bookkeeping of the user including
292            * its resources, metadata, and internal data structures. It is not
293            * necessary to make subsequent calls to any methods to setup default
294            * groups, resources, etc.
295            * </p>
296            *
297            * @param companyId the primary key of the user's company
298            * @param autoPassword whether a password should be automatically generated
299            for the user
300            * @param password1 the user's password
301            * @param password2 the user's password confirmation
302            * @param autoScreenName whether a screen name should be automatically
303            generated for the user
304            * @param screenName the user's screen name
305            * @param emailAddress the user's email address
306            * @param facebookId the user's facebook ID
307            * @param openId the user's OpenID
308            * @param locale the user's locale
309            * @param firstName the user's first name
310            * @param middleName the user's middle name
311            * @param lastName the user's last name
312            * @param prefixId the user's name prefix ID
313            * @param suffixId the user's name suffix ID
314            * @param male whether the user is male
315            * @param birthdayMonth the user's birthday month (0-based, meaning 0 for
316            January)
317            * @param birthdayDay the user's birthday day
318            * @param birthdayYear the user's birthday year
319            * @param jobTitle the user's job title
320            * @param groupIds the primary keys of the user's groups
321            * @param organizationIds the primary keys of the user's organizations
322            * @param roleIds the primary keys of the roles this user possesses
323            * @param userGroupIds the primary keys of the user's user groups
324            * @param sendEmail whether to send the user an email notification about
325            their new account
326            * @param serviceContext the user's service context (optionally
327            <code>null</code>). Can set the universally unique identifier
328            (with the <code>uuid</code> attribute), asset category IDs, asset
329            tag names, and expando bridge attributes for the user.
330            * @return the new user
331            * @throws PortalException if the user's information was invalid, if the
332            creator did not have permission to add users, or if the email
333            address was reserved
334            * @throws SystemException if a system exception occurred
335            */
336            public com.liferay.portal.model.User addUserWithWorkflow(long companyId,
337                    boolean autoPassword, java.lang.String password1,
338                    java.lang.String password2, boolean autoScreenName,
339                    java.lang.String screenName, java.lang.String emailAddress,
340                    long facebookId, java.lang.String openId, java.util.Locale locale,
341                    java.lang.String firstName, java.lang.String middleName,
342                    java.lang.String lastName, int prefixId, int suffixId, boolean male,
343                    int birthdayMonth, int birthdayDay, int birthdayYear,
344                    java.lang.String jobTitle, long[] groupIds, long[] organizationIds,
345                    long[] roleIds, long[] userGroupIds, boolean sendEmail,
346                    com.liferay.portal.service.ServiceContext serviceContext)
347                    throws com.liferay.portal.kernel.exception.PortalException,
348                            com.liferay.portal.kernel.exception.SystemException;
349    
350            /**
351            * Adds a user with workflow and additional parameters.
352            *
353            * <p>
354            * This method handles the creation and bookkeeping of the user including
355            * its resources, metadata, and internal data structures. It is not
356            * necessary to make subsequent calls to any methods to setup default
357            * groups, resources, etc.
358            * </p>
359            *
360            * @param companyId the primary key of the user's company
361            * @param autoPassword whether a password should be automatically generated
362            for the user
363            * @param password1 the user's password
364            * @param password2 the user's password confirmation
365            * @param autoScreenName whether a screen name should be automatically
366            generated for the user
367            * @param screenName the user's screen name
368            * @param emailAddress the user's email address
369            * @param facebookId the user's facebook ID
370            * @param openId the user's OpenID
371            * @param locale the user's locale
372            * @param firstName the user's first name
373            * @param middleName the user's middle name
374            * @param lastName the user's last name
375            * @param prefixId the user's name prefix ID
376            * @param suffixId the user's name suffix ID
377            * @param male whether the user is male
378            * @param birthdayMonth the user's birthday month (0-based, meaning 0 for
379            January)
380            * @param birthdayDay the user's birthday day
381            * @param birthdayYear the user's birthday year
382            * @param jobTitle the user's job title
383            * @param groupIds the primary keys of the user's groups
384            * @param organizationIds the primary keys of the user's organizations
385            * @param roleIds the primary keys of the roles this user possesses
386            * @param userGroupIds the primary keys of the user's user groups
387            * @param addresses the user's addresses
388            * @param emailAddresses the user's email addresses
389            * @param phones the user's phone numbers
390            * @param websites the user's websites
391            * @param announcementsDelivers the announcements deliveries
392            * @param sendEmail whether to send the user an email notification about
393            their new account
394            * @param serviceContext the user's service context (optionally
395            <code>null</code>). Can set the universally unique identifier
396            (with the <code>uuid</code> attribute), asset category IDs, asset
397            tag names, and expando bridge attributes for the user.
398            * @return the new user
399            * @throws PortalException if the user's information was invalid, if the
400            creator did not have permission to add users, if the email
401            address was reserved, or some other portal exception occurred
402            * @throws SystemException if a system exception occurred
403            */
404            public com.liferay.portal.model.User addUserWithWorkflow(long companyId,
405                    boolean autoPassword, java.lang.String password1,
406                    java.lang.String password2, boolean autoScreenName,
407                    java.lang.String screenName, java.lang.String emailAddress,
408                    long facebookId, java.lang.String openId, java.util.Locale locale,
409                    java.lang.String firstName, java.lang.String middleName,
410                    java.lang.String lastName, int prefixId, int suffixId, boolean male,
411                    int birthdayMonth, int birthdayDay, int birthdayYear,
412                    java.lang.String jobTitle, long[] groupIds, long[] organizationIds,
413                    long[] roleIds, long[] userGroupIds,
414                    java.util.List<com.liferay.portal.model.Address> addresses,
415                    java.util.List<com.liferay.portal.model.EmailAddress> emailAddresses,
416                    java.util.List<com.liferay.portal.model.Phone> phones,
417                    java.util.List<com.liferay.portal.model.Website> websites,
418                    java.util.List<com.liferay.portlet.announcements.model.AnnouncementsDelivery> announcementsDelivers,
419                    boolean sendEmail,
420                    com.liferay.portal.service.ServiceContext serviceContext)
421                    throws com.liferay.portal.kernel.exception.PortalException,
422                            com.liferay.portal.kernel.exception.SystemException;
423    
424            /**
425            * Deletes the user's portrait image.
426            *
427            * @param userId the primary key of the user
428            * @throws PortalException if a user with the primary key could not be
429            found, if the user's portrait could not be found, or if the
430            current user did not have permission to update the user
431            * @throws SystemException if a system exception occurred
432            */
433            public void deletePortrait(long userId)
434                    throws com.liferay.portal.kernel.exception.PortalException,
435                            com.liferay.portal.kernel.exception.SystemException;
436    
437            /**
438            * Removes the user from the role.
439            *
440            * @param roleId the primary key of the role
441            * @param userId the primary key of the user
442            * @throws PortalException if a role or user with the primary key could not
443            be found, or if the current user did not have permission to
444            assign role members
445            * @throws SystemException if a system exception occurred
446            */
447            public void deleteRoleUser(long roleId, long userId)
448                    throws com.liferay.portal.kernel.exception.PortalException,
449                            com.liferay.portal.kernel.exception.SystemException;
450    
451            /**
452            * Deletes the user.
453            *
454            * @param userId the primary key of the user
455            * @throws PortalException if a user with the primary key could not be found
456            or if the current user did not have permission to delete the user
457            * @throws SystemException if a system exception occurred
458            */
459            public void deleteUser(long userId)
460                    throws com.liferay.portal.kernel.exception.PortalException,
461                            com.liferay.portal.kernel.exception.SystemException;
462    
463            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
464            public java.util.List<com.liferay.portal.model.User> getCompanyUsers(
465                    long companyId, int start, int end)
466                    throws com.liferay.portal.kernel.exception.PortalException,
467                            com.liferay.portal.kernel.exception.SystemException;
468    
469            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
470            public int getCompanyUsersCount(long companyId)
471                    throws com.liferay.portal.kernel.exception.PortalException,
472                            com.liferay.portal.kernel.exception.SystemException;
473    
474            /**
475            * Returns the primary keys of all the users belonging to the group.
476            *
477            * @param groupId the primary key of the group
478            * @return the primary keys of the users belonging to the group
479            * @throws PortalException if the current user did not have permission to
480            view group assignments
481            * @throws SystemException if a system exception occurred
482            */
483            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
484            public long[] getGroupUserIds(long groupId)
485                    throws com.liferay.portal.kernel.exception.PortalException,
486                            com.liferay.portal.kernel.exception.SystemException;
487    
488            /**
489            * Returns all the users belonging to the group.
490            *
491            * @param groupId the primary key of the group
492            * @return the users belonging to the group
493            * @throws PortalException if the current user did not have permission to
494            view group assignments
495            * @throws SystemException if a system exception occurred
496            */
497            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
498            public java.util.List<com.liferay.portal.model.User> getGroupUsers(
499                    long groupId)
500                    throws com.liferay.portal.kernel.exception.PortalException,
501                            com.liferay.portal.kernel.exception.SystemException;
502    
503            /**
504            * Returns the primary keys of all the users belonging to the organization.
505            *
506            * @param organizationId the primary key of the organization
507            * @return the primary keys of the users belonging to the organization
508            * @throws PortalException if the current user did not have permission to
509            view organization assignments
510            * @throws SystemException if a system exception occurred
511            */
512            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
513            public long[] getOrganizationUserIds(long organizationId)
514                    throws com.liferay.portal.kernel.exception.PortalException,
515                            com.liferay.portal.kernel.exception.SystemException;
516    
517            /**
518            * Returns all the users belonging to the organization.
519            *
520            * @param organizationId the primary key of the organization
521            * @return users belonging to the organization
522            * @throws PortalException if the current user did not have permission to
523            view organization assignments
524            * @throws SystemException if a system exception occurred
525            */
526            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
527            public java.util.List<com.liferay.portal.model.User> getOrganizationUsers(
528                    long organizationId)
529                    throws com.liferay.portal.kernel.exception.PortalException,
530                            com.liferay.portal.kernel.exception.SystemException;
531    
532            /**
533            * Returns the primary keys of all the users belonging to the role.
534            *
535            * @param roleId the primary key of the role
536            * @return the primary keys of the users belonging to the role
537            * @throws PortalException if the current user did not have permission to
538            view role members
539            * @throws SystemException if a system exception occurred
540            */
541            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
542            public long[] getRoleUserIds(long roleId)
543                    throws com.liferay.portal.kernel.exception.PortalException,
544                            com.liferay.portal.kernel.exception.SystemException;
545    
546            /**
547            * Returns the user with the email address.
548            *
549            * @param companyId the primary key of the user's company
550            * @param emailAddress the user's email address
551            * @return the user with the email address
552            * @throws PortalException if a user with the email address could not be
553            found or if the current user did not have permission to view the
554            user
555            * @throws SystemException if a system exception occurred
556            */
557            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
558            public com.liferay.portal.model.User getUserByEmailAddress(long companyId,
559                    java.lang.String emailAddress)
560                    throws com.liferay.portal.kernel.exception.PortalException,
561                            com.liferay.portal.kernel.exception.SystemException;
562    
563            /**
564            * Returns the user with the primary key.
565            *
566            * @param userId the primary key of the user
567            * @return the user with the primary key
568            * @throws PortalException if a user with the primary key could not be found
569            or if the current user did not have permission to view the user
570            * @throws SystemException if a system exception occurred
571            */
572            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
573            public com.liferay.portal.model.User getUserById(long userId)
574                    throws com.liferay.portal.kernel.exception.PortalException,
575                            com.liferay.portal.kernel.exception.SystemException;
576    
577            /**
578            * Returns the user with the screen name.
579            *
580            * @param companyId the primary key of the user's company
581            * @param screenName the user's screen name
582            * @return the user with the screen name
583            * @throws PortalException if a user with the screen name could not be found
584            or if the current user did not have permission to view the user
585            * @throws SystemException if a system exception occurred
586            */
587            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
588            public com.liferay.portal.model.User getUserByScreenName(long companyId,
589                    java.lang.String screenName)
590                    throws com.liferay.portal.kernel.exception.PortalException,
591                            com.liferay.portal.kernel.exception.SystemException;
592    
593            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
594            public java.util.List<com.liferay.portal.model.User> getUserGroupUsers(
595                    long userGroupId)
596                    throws com.liferay.portal.kernel.exception.PortalException,
597                            com.liferay.portal.kernel.exception.SystemException;
598    
599            /**
600            * Returns the primary key of the user with the email address.
601            *
602            * @param companyId the primary key of the user's company
603            * @param emailAddress the user's email address
604            * @return the primary key of the user with the email address
605            * @throws PortalException if a user with the email address could not be
606            found
607            * @throws SystemException if a system exception occurred
608            */
609            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
610            public long getUserIdByEmailAddress(long companyId,
611                    java.lang.String emailAddress)
612                    throws com.liferay.portal.kernel.exception.PortalException,
613                            com.liferay.portal.kernel.exception.SystemException;
614    
615            /**
616            * Returns the primary key of the user with the screen name.
617            *
618            * @param companyId the primary key of the user's company
619            * @param screenName the user's screen name
620            * @return the primary key of the user with the screen name
621            * @throws PortalException if a user with the screen name could not be found
622            * @throws SystemException if a system exception occurred
623            */
624            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
625            public long getUserIdByScreenName(long companyId,
626                    java.lang.String screenName)
627                    throws com.liferay.portal.kernel.exception.PortalException,
628                            com.liferay.portal.kernel.exception.SystemException;
629    
630            /**
631            * Returns <code>true</code> if the user is a member of the group.
632            *
633            * @param groupId the primary key of the group
634            * @param userId the primary key of the user
635            * @return <code>true</code> if the user is a member of the group;
636            <code>false</code> otherwise
637            * @throws PortalException if the current user did not have permission to
638            view the user or group members
639            * @throws SystemException if a system exception occurred
640            */
641            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
642            public boolean hasGroupUser(long groupId, long userId)
643                    throws com.liferay.portal.kernel.exception.PortalException,
644                            com.liferay.portal.kernel.exception.SystemException;
645    
646            /**
647            * Returns <code>true</code> if the user is a member of the role.
648            *
649            * @param roleId the primary key of the role
650            * @param userId the primary key of the user
651            * @return <code>true</code> if the user is a member of the role;
652            <code>false</code> otherwise
653            * @throws PortalException if the current user did not have permission to
654            view the user or role members
655            * @throws SystemException if a system exception occurred
656            */
657            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
658            public boolean hasRoleUser(long roleId, long userId)
659                    throws com.liferay.portal.kernel.exception.PortalException,
660                            com.liferay.portal.kernel.exception.SystemException;
661    
662            /**
663            * Returns <code>true</code> if the user has the role with the name,
664            * optionally through inheritance.
665            *
666            * @param companyId the primary key of the role's company
667            * @param name the name of the role (must be a regular role, not an
668            organization, site or provider role)
669            * @param userId the primary key of the user
670            * @param inherited whether to include roles inherited from organizations,
671            sites, etc.
672            * @return <code>true</code> if the user has the role; <code>false</code>
673            otherwise
674            * @throws PortalException if a role with the name could not be found
675            * @throws SystemException if a system exception occurred
676            */
677            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
678            public boolean hasRoleUser(long companyId, java.lang.String name,
679                    long userId, boolean inherited)
680                    throws com.liferay.portal.kernel.exception.PortalException,
681                            com.liferay.portal.kernel.exception.SystemException;
682    
683            /**
684            * Sets the users in the role, removing and adding users to the role as
685            * necessary.
686            *
687            * @param roleId the primary key of the role
688            * @param userIds the primary keys of the users
689            * @throws PortalException if the current user did not have permission to
690            assign role members
691            * @throws SystemException if a system exception occurred
692            */
693            public void setRoleUsers(long roleId, long[] userIds)
694                    throws com.liferay.portal.kernel.exception.PortalException,
695                            com.liferay.portal.kernel.exception.SystemException;
696    
697            /**
698            * Sets the users in the user group, removing and adding users to the user
699            * group as necessary.
700            *
701            * @param userGroupId the primary key of the user group
702            * @param userIds the primary keys of the users
703            * @throws PortalException if the current user did not have permission to
704            assign group members
705            * @throws SystemException if a system exception occurred
706            */
707            public void setUserGroupUsers(long userGroupId, long[] userIds)
708                    throws com.liferay.portal.kernel.exception.PortalException,
709                            com.liferay.portal.kernel.exception.SystemException;
710    
711            /**
712            * Removes the users from the teams of a group.
713            *
714            * @param groupId the primary key of the group
715            * @param userIds the primary keys of the users
716            * @throws PortalException if the current user did not have permission to
717            modify user group assignments
718            * @throws SystemException if a system exception occurred
719            */
720            public void unsetGroupTeamsUsers(long groupId, long[] userIds)
721                    throws com.liferay.portal.kernel.exception.PortalException,
722                            com.liferay.portal.kernel.exception.SystemException;
723    
724            /**
725            * Removes the users from the group.
726            *
727            * @param groupId the primary key of the group
728            * @param userIds the primary keys of the users
729            * @param serviceContext the service context (optionally <code>null</code>)
730            * @throws PortalException if the current user did not have permission to
731            modify group assignments
732            * @throws SystemException if a system exception occurred
733            */
734            public void unsetGroupUsers(long groupId, long[] userIds,
735                    com.liferay.portal.service.ServiceContext serviceContext)
736                    throws com.liferay.portal.kernel.exception.PortalException,
737                            com.liferay.portal.kernel.exception.SystemException;
738    
739            /**
740            * Removes the users from the organization.
741            *
742            * @param organizationId the primary key of the organization
743            * @param userIds the primary keys of the users
744            * @throws PortalException if the current user did not have permission to
745            modify organization assignments
746            * @throws SystemException if a system exception occurred
747            */
748            public void unsetOrganizationUsers(long organizationId, long[] userIds)
749                    throws com.liferay.portal.kernel.exception.PortalException,
750                            com.liferay.portal.kernel.exception.SystemException;
751    
752            /**
753            * Removes the users from the password policy.
754            *
755            * @param passwordPolicyId the primary key of the password policy
756            * @param userIds the primary keys of the users
757            * @throws PortalException if the current user did not have permission to
758            modify policy assignments
759            * @throws SystemException if a system exception occurred
760            */
761            public void unsetPasswordPolicyUsers(long passwordPolicyId, long[] userIds)
762                    throws com.liferay.portal.kernel.exception.PortalException,
763                            com.liferay.portal.kernel.exception.SystemException;
764    
765            /**
766            * Removes the users from the role.
767            *
768            * @param roleId the primary key of the role
769            * @param userIds the primary keys of the users
770            * @throws PortalException if the current user did not have permission to
771            modify role assignments
772            * @throws SystemException if a system exception occurred
773            */
774            public void unsetRoleUsers(long roleId, long[] userIds)
775                    throws com.liferay.portal.kernel.exception.PortalException,
776                            com.liferay.portal.kernel.exception.SystemException;
777    
778            /**
779            * Removes the users from the team.
780            *
781            * @param teamId the primary key of the team
782            * @param userIds the primary keys of the users
783            * @throws PortalException if the current user did not have permission to
784            modify team assignments
785            * @throws SystemException if a system exception occurred
786            */
787            public void unsetTeamUsers(long teamId, long[] userIds)
788                    throws com.liferay.portal.kernel.exception.PortalException,
789                            com.liferay.portal.kernel.exception.SystemException;
790    
791            /**
792            * Removes the users from the user group.
793            *
794            * @param userGroupId the primary key of the user group
795            * @param userIds the primary keys of the users
796            * @throws PortalException if the current user did not have permission to
797            modify user group assignments
798            * @throws SystemException if a system exception occurred
799            */
800            public void unsetUserGroupUsers(long userGroupId, long[] userIds)
801                    throws com.liferay.portal.kernel.exception.PortalException,
802                            com.liferay.portal.kernel.exception.SystemException;
803    
804            /**
805            * Updates the user's response to the terms of use agreement.
806            *
807            * @param userId the primary key of the user
808            * @param agreedToTermsOfUse whether the user has agree to the terms of use
809            * @return the user
810            * @throws PortalException if the current user did not have permission to
811            update the user's agreement to terms-of-use
812            * @throws SystemException if a system exception occurred
813            */
814            public com.liferay.portal.model.User updateAgreedToTermsOfUse(long userId,
815                    boolean agreedToTermsOfUse)
816                    throws com.liferay.portal.kernel.exception.PortalException,
817                            com.liferay.portal.kernel.exception.SystemException;
818    
819            /**
820            * Updates the user's email address.
821            *
822            * @param userId the primary key of the user
823            * @param password the user's password
824            * @param emailAddress1 the user's new email address
825            * @param emailAddress2 the user's new email address confirmation
826            * @param serviceContext the service context. Must set the portal URL, main
827            path, primary key of the layout, remote address, remote host, and
828            agent for the user.
829            * @return the user
830            * @throws PortalException if a user with the primary key could not be found
831            or if the current user did not have permission to update the user
832            * @throws SystemException if a system exception occurred
833            */
834            public com.liferay.portal.model.User updateEmailAddress(long userId,
835                    java.lang.String password, java.lang.String emailAddress1,
836                    java.lang.String emailAddress2,
837                    com.liferay.portal.service.ServiceContext serviceContext)
838                    throws com.liferay.portal.kernel.exception.PortalException,
839                            com.liferay.portal.kernel.exception.SystemException;
840    
841            /**
842            * Updates a user account that was automatically created when a guest user
843            * participated in an action (e.g. posting a comment) and only provided his
844            * name and email address.
845            *
846            * @param companyId the primary key of the user's company
847            * @param autoPassword whether a password should be automatically generated
848            for the user
849            * @param password1 the user's password
850            * @param password2 the user's password confirmation
851            * @param autoScreenName whether a screen name should be automatically
852            generated for the user
853            * @param screenName the user's screen name
854            * @param emailAddress the user's email address
855            * @param facebookId the user's facebook ID
856            * @param openId the user's OpenID
857            * @param locale the user's locale
858            * @param firstName the user's first name
859            * @param middleName the user's middle name
860            * @param lastName the user's last name
861            * @param prefixId the user's name prefix ID
862            * @param suffixId the user's name suffix ID
863            * @param male whether the user is male
864            * @param birthdayMonth the user's birthday month (0-based, meaning 0 for
865            January)
866            * @param birthdayDay the user's birthday day
867            * @param birthdayYear the user's birthday year
868            * @param jobTitle the user's job title
869            * @param updateUserInformation whether to update the user's information
870            * @param sendEmail whether to send the user an email notification about
871            their new account
872            * @param serviceContext the user's service context (optionally
873            <code>null</code>). Can set the expando bridge attributes for the
874            user.
875            * @return the user
876            * @throws PortalException if the user's information was invalid or if the
877            email address was reserved
878            * @throws SystemException if a system exception occurred
879            */
880            public com.liferay.portal.model.User updateIncompleteUser(long companyId,
881                    boolean autoPassword, java.lang.String password1,
882                    java.lang.String password2, boolean autoScreenName,
883                    java.lang.String screenName, java.lang.String emailAddress,
884                    long facebookId, java.lang.String openId, java.util.Locale locale,
885                    java.lang.String firstName, java.lang.String middleName,
886                    java.lang.String lastName, int prefixId, int suffixId, boolean male,
887                    int birthdayMonth, int birthdayDay, int birthdayYear,
888                    java.lang.String jobTitle, boolean updateUserInformation,
889                    boolean sendEmail,
890                    com.liferay.portal.service.ServiceContext serviceContext)
891                    throws com.liferay.portal.kernel.exception.PortalException,
892                            com.liferay.portal.kernel.exception.SystemException;
893    
894            /**
895            * Updates whether the user is locked out from logging in.
896            *
897            * @param userId the primary key of the user
898            * @param lockout whether the user is locked out
899            * @return the user
900            * @throws PortalException if the user did not have permission to lock out
901            the user
902            * @throws SystemException if a system exception occurred
903            */
904            public com.liferay.portal.model.User updateLockoutById(long userId,
905                    boolean lockout)
906                    throws com.liferay.portal.kernel.exception.PortalException,
907                            com.liferay.portal.kernel.exception.SystemException;
908    
909            /**
910            * Updates the user's OpenID.
911            *
912            * @param userId the primary key of the user
913            * @param openId the new OpenID
914            * @return the user
915            * @throws PortalException if a user with the primary key could not be found
916            or if the current user did not have permission to update the user
917            * @throws SystemException if a system exception occurred
918            */
919            public com.liferay.portal.model.User updateOpenId(long userId,
920                    java.lang.String openId)
921                    throws com.liferay.portal.kernel.exception.PortalException,
922                            com.liferay.portal.kernel.exception.SystemException;
923    
924            /**
925            * Sets the organizations that the user is in, removing and adding
926            * organizations as necessary.
927            *
928            * @param userId the primary key of the user
929            * @param organizationIds the primary keys of the organizations
930            * @param serviceContext the service context. Must set whether user
931            indexing is enabled.
932            * @throws PortalException if a user with the primary key could not be found
933            or if the current user did not have permission to update the user
934            * @throws SystemException if a system exception occurred
935            */
936            public void updateOrganizations(long userId, long[] organizationIds,
937                    com.liferay.portal.service.ServiceContext serviceContext)
938                    throws com.liferay.portal.kernel.exception.PortalException,
939                            com.liferay.portal.kernel.exception.SystemException;
940    
941            /**
942            * Updates the user's password without tracking or validation of the change.
943            *
944            * @param userId the primary key of the user
945            * @param password1 the user's new password
946            * @param password2 the user's new password confirmation
947            * @param passwordReset whether the user should be asked to reset their
948            password the next time they log in
949            * @return the user
950            * @throws PortalException if a user with the primary key could not be found
951            or if the current user did not have permission to update the user
952            * @throws SystemException if a system exception occurred
953            */
954            public com.liferay.portal.model.User updatePassword(long userId,
955                    java.lang.String password1, java.lang.String password2,
956                    boolean passwordReset)
957                    throws com.liferay.portal.kernel.exception.PortalException,
958                            com.liferay.portal.kernel.exception.SystemException;
959    
960            /**
961            * Updates the user's portrait image.
962            *
963            * @param userId the primary key of the user
964            * @param bytes the new portrait image data
965            * @return the user
966            * @throws PortalException if a user with the primary key could not be
967            found, if the new portrait was invalid, or if the current user
968            did not have permission to update the user
969            * @throws SystemException if a system exception occurred
970            */
971            public com.liferay.portal.model.User updatePortrait(long userId,
972                    byte[] bytes)
973                    throws com.liferay.portal.kernel.exception.PortalException,
974                            com.liferay.portal.kernel.exception.SystemException;
975    
976            /**
977            * Updates the user's password reset question and answer.
978            *
979            * @param userId the primary key of the user
980            * @param question the user's new password reset question
981            * @param answer the user's new password reset answer
982            * @return the user
983            * @throws PortalException if a user with the primary key could not be
984            found, if the new question or answer were invalid, or if the
985            current user did not have permission to update the user
986            * @throws SystemException if a system exception occurred
987            */
988            public com.liferay.portal.model.User updateReminderQuery(long userId,
989                    java.lang.String question, java.lang.String answer)
990                    throws com.liferay.portal.kernel.exception.PortalException,
991                            com.liferay.portal.kernel.exception.SystemException;
992    
993            /**
994            * Updates the user's screen name.
995            *
996            * @param userId the primary key of the user
997            * @param screenName the user's new screen name
998            * @return the user
999            * @throws PortalException if a user with the primary key could not be
1000            found, if the new screen name was invalid, or if the current user
1001            did not have permission to update the user
1002            * @throws SystemException if a system exception occurred
1003            */
1004            public com.liferay.portal.model.User updateScreenName(long userId,
1005                    java.lang.String screenName)
1006                    throws com.liferay.portal.kernel.exception.PortalException,
1007                            com.liferay.portal.kernel.exception.SystemException;
1008    
1009            /**
1010            * Updates the user's workflow status.
1011            *
1012            * @param userId the primary key of the user
1013            * @param status the user's new workflow status
1014            * @return the user
1015            * @throws PortalException if a user with the primary key could not be
1016            found, if the current user was updating her own status to
1017            anything but {@link
1018            com.liferay.portal.kernel.workflow.WorkflowConstants#STATUS_APPROVED},
1019            or if the current user did not have permission to update the
1020            user's workflow status.
1021            * @throws SystemException if a system exception occurred
1022            */
1023            public com.liferay.portal.model.User updateStatus(long userId, int status)
1024                    throws com.liferay.portal.kernel.exception.PortalException,
1025                            com.liferay.portal.kernel.exception.SystemException;
1026    
1027            /**
1028            * Updates the user with additional parameters.
1029            *
1030            * @param userId the primary key of the user
1031            * @param oldPassword the user's old password
1032            * @param newPassword1 the user's new password (optionally
1033            <code>null</code>)
1034            * @param newPassword2 the user's new password confirmation (optionally
1035            <code>null</code>)
1036            * @param passwordReset whether the user should be asked to reset their
1037            password the next time they login
1038            * @param reminderQueryQuestion the user's new password reset question
1039            * @param reminderQueryAnswer the user's new password reset answer
1040            * @param screenName the user's new screen name
1041            * @param emailAddress the user's new email address
1042            * @param facebookId the user's new Facebook ID
1043            * @param openId the user's new OpenID
1044            * @param languageId the user's new language ID
1045            * @param timeZoneId the user's new time zone ID
1046            * @param greeting the user's new greeting
1047            * @param comments the user's new comments
1048            * @param firstName the user's new first name
1049            * @param middleName the user's new middle name
1050            * @param lastName the user's new last name
1051            * @param prefixId the user's new name prefix ID
1052            * @param suffixId the user's new name suffix ID
1053            * @param male whether user is male
1054            * @param birthdayMonth the user's new birthday month (0-based, meaning 0
1055            for January)
1056            * @param birthdayDay the user's new birthday day
1057            * @param birthdayYear the user's birthday year
1058            * @param smsSn the user's new SMS screen name
1059            * @param aimSn the user's new AIM screen name
1060            * @param facebookSn the user's new Facebook screen name
1061            * @param icqSn the user's new ICQ screen name
1062            * @param jabberSn the user's new Jabber screen name
1063            * @param msnSn the user's new MSN screen name
1064            * @param mySpaceSn the user's new MySpace screen name
1065            * @param skypeSn the user's new Skype screen name
1066            * @param twitterSn the user's new Twitter screen name
1067            * @param ymSn the user's new Yahoo! Messenger screen name
1068            * @param jobTitle the user's new job title
1069            * @param groupIds the primary keys of the user's groups
1070            * @param organizationIds the primary keys of the user's organizations
1071            * @param roleIds the primary keys of the user's roles
1072            * @param userGroupRoles the user user's group roles
1073            * @param userGroupIds the primary keys of the user's user groups
1074            * @param addresses the user's addresses
1075            * @param emailAddresses the user's email addresses
1076            * @param phones the user's phone numbers
1077            * @param websites the user's websites
1078            * @param announcementsDelivers the announcements deliveries
1079            * @param serviceContext the user's service context (optionally
1080            <code>null</code>). Can set the universally unique identifier
1081            (with the <code>uuid</code> attribute), asset category IDs, asset
1082            tag names, and expando bridge attributes for the user.
1083            * @return the user
1084            * @throws PortalException if a user with the primary key could not be
1085            found, if the new information was invalid, or if the current user
1086            did not have permission to update the user
1087            * @throws SystemException if a system exception occurred
1088            */
1089            public com.liferay.portal.model.User updateUser(long userId,
1090                    java.lang.String oldPassword, java.lang.String newPassword1,
1091                    java.lang.String newPassword2, boolean passwordReset,
1092                    java.lang.String reminderQueryQuestion,
1093                    java.lang.String reminderQueryAnswer, java.lang.String screenName,
1094                    java.lang.String emailAddress, long facebookId,
1095                    java.lang.String openId, java.lang.String languageId,
1096                    java.lang.String timeZoneId, java.lang.String greeting,
1097                    java.lang.String comments, java.lang.String firstName,
1098                    java.lang.String middleName, java.lang.String lastName, int prefixId,
1099                    int suffixId, boolean male, int birthdayMonth, int birthdayDay,
1100                    int birthdayYear, java.lang.String smsSn, java.lang.String aimSn,
1101                    java.lang.String facebookSn, java.lang.String icqSn,
1102                    java.lang.String jabberSn, java.lang.String msnSn,
1103                    java.lang.String mySpaceSn, java.lang.String skypeSn,
1104                    java.lang.String twitterSn, java.lang.String ymSn,
1105                    java.lang.String jobTitle, long[] groupIds, long[] organizationIds,
1106                    long[] roleIds,
1107                    java.util.List<com.liferay.portal.model.UserGroupRole> userGroupRoles,
1108                    long[] userGroupIds,
1109                    java.util.List<com.liferay.portal.model.Address> addresses,
1110                    java.util.List<com.liferay.portal.model.EmailAddress> emailAddresses,
1111                    java.util.List<com.liferay.portal.model.Phone> phones,
1112                    java.util.List<com.liferay.portal.model.Website> websites,
1113                    java.util.List<com.liferay.portlet.announcements.model.AnnouncementsDelivery> announcementsDelivers,
1114                    com.liferay.portal.service.ServiceContext serviceContext)
1115                    throws com.liferay.portal.kernel.exception.PortalException,
1116                            com.liferay.portal.kernel.exception.SystemException;
1117    
1118            /**
1119            * Updates the user.
1120            *
1121            * @param userId the primary key of the user
1122            * @param oldPassword the user's old password
1123            * @param newPassword1 the user's new password (optionally
1124            <code>null</code>)
1125            * @param newPassword2 the user's new password confirmation (optionally
1126            <code>null</code>)
1127            * @param passwordReset whether the user should be asked to reset their
1128            password the next time they login
1129            * @param reminderQueryQuestion the user's new password reset question
1130            * @param reminderQueryAnswer the user's new password reset answer
1131            * @param screenName the user's new screen name
1132            * @param emailAddress the user's new email address
1133            * @param facebookId the user's new Facebook ID
1134            * @param openId the user's new OpenID
1135            * @param languageId the user's new language ID
1136            * @param timeZoneId the user's new time zone ID
1137            * @param greeting the user's new greeting
1138            * @param comments the user's new comments
1139            * @param firstName the user's new first name
1140            * @param middleName the user's new middle name
1141            * @param lastName the user's new last name
1142            * @param prefixId the user's new name prefix ID
1143            * @param suffixId the user's new name suffix ID
1144            * @param male whether user is male
1145            * @param birthdayMonth the user's new birthday month (0-based, meaning 0
1146            for January)
1147            * @param birthdayDay the user's new birthday day
1148            * @param birthdayYear the user's birthday year
1149            * @param smsSn the user's new SMS screen name
1150            * @param aimSn the user's new AIM screen name
1151            * @param facebookSn the user's new Facebook screen name
1152            * @param icqSn the user's new ICQ screen name
1153            * @param jabberSn the user's new Jabber screen name
1154            * @param msnSn the user's new MSN screen name
1155            * @param mySpaceSn the user's new MySpace screen name
1156            * @param skypeSn the user's new Skype screen name
1157            * @param twitterSn the user's new Twitter screen name
1158            * @param ymSn the user's new Yahoo! Messenger screen name
1159            * @param jobTitle the user's new job title
1160            * @param groupIds the primary keys of the user's groups
1161            * @param organizationIds the primary keys of the user's organizations
1162            * @param roleIds the primary keys of the user's roles
1163            * @param userGroupRoles the user user's group roles
1164            * @param userGroupIds the primary keys of the user's user groups
1165            * @param serviceContext the user's service context (optionally
1166            <code>null</code>). Can set the universally unique identifier
1167            (with the <code>uuid</code> attribute), asset category IDs, asset
1168            tag names, and expando bridge attributes for the user.
1169            * @return the user
1170            * @throws PortalException if a user with the primary key could not be
1171            found, if the new information was invalid, or if the current user
1172            did not have permission to update the user
1173            * @throws SystemException if a system exception occurred
1174            */
1175            public com.liferay.portal.model.User updateUser(long userId,
1176                    java.lang.String oldPassword, java.lang.String newPassword1,
1177                    java.lang.String newPassword2, boolean passwordReset,
1178                    java.lang.String reminderQueryQuestion,
1179                    java.lang.String reminderQueryAnswer, java.lang.String screenName,
1180                    java.lang.String emailAddress, long facebookId,
1181                    java.lang.String openId, java.lang.String languageId,
1182                    java.lang.String timeZoneId, java.lang.String greeting,
1183                    java.lang.String comments, java.lang.String firstName,
1184                    java.lang.String middleName, java.lang.String lastName, int prefixId,
1185                    int suffixId, boolean male, int birthdayMonth, int birthdayDay,
1186                    int birthdayYear, java.lang.String smsSn, java.lang.String aimSn,
1187                    java.lang.String facebookSn, java.lang.String icqSn,
1188                    java.lang.String jabberSn, java.lang.String msnSn,
1189                    java.lang.String mySpaceSn, java.lang.String skypeSn,
1190                    java.lang.String twitterSn, java.lang.String ymSn,
1191                    java.lang.String jobTitle, long[] groupIds, long[] organizationIds,
1192                    long[] roleIds,
1193                    java.util.List<com.liferay.portal.model.UserGroupRole> userGroupRoles,
1194                    long[] userGroupIds,
1195                    com.liferay.portal.service.ServiceContext serviceContext)
1196                    throws com.liferay.portal.kernel.exception.PortalException,
1197                            com.liferay.portal.kernel.exception.SystemException;
1198    }