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