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.transaction.Isolation;
020    import com.liferay.portal.kernel.transaction.Propagation;
021    import com.liferay.portal.kernel.transaction.Transactional;
022    
023    /**
024     * The interface for the organization local service.
025     *
026     * <p>
027     * This is a local service. Methods of this service will not have security checks based on the propagated JAAS credentials because this service can only be accessed from within the same VM.
028     * </p>
029     *
030     * @author Brian Wing Shun Chan
031     * @see OrganizationLocalServiceUtil
032     * @see com.liferay.portal.service.base.OrganizationLocalServiceBaseImpl
033     * @see com.liferay.portal.service.impl.OrganizationLocalServiceImpl
034     * @generated
035     */
036    @Transactional(isolation = Isolation.PORTAL, rollbackFor =  {
037            PortalException.class, SystemException.class})
038    public interface OrganizationLocalService extends BaseLocalService,
039            PersistedModelLocalService {
040            /*
041             * NOTE FOR DEVELOPERS:
042             *
043             * Never modify or reference this interface directly. Always use {@link OrganizationLocalServiceUtil} to access the organization local service. Add custom service methods to {@link com.liferay.portal.service.impl.OrganizationLocalServiceImpl} and rerun ServiceBuilder to automatically copy the method declarations to this interface.
044             */
045    
046            /**
047            * Adds the organization to the database. Also notifies the appropriate model listeners.
048            *
049            * @param organization the organization
050            * @return the organization that was added
051            * @throws SystemException if a system exception occurred
052            */
053            public com.liferay.portal.model.Organization addOrganization(
054                    com.liferay.portal.model.Organization organization)
055                    throws com.liferay.portal.kernel.exception.SystemException;
056    
057            /**
058            * Creates a new organization with the primary key. Does not add the organization to the database.
059            *
060            * @param organizationId the primary key for the new organization
061            * @return the new organization
062            */
063            public com.liferay.portal.model.Organization createOrganization(
064                    long organizationId);
065    
066            /**
067            * Deletes the organization with the primary key from the database. Also notifies the appropriate model listeners.
068            *
069            * @param organizationId the primary key of the organization
070            * @return the organization that was removed
071            * @throws PortalException if a organization with the primary key could not be found
072            * @throws SystemException if a system exception occurred
073            */
074            public com.liferay.portal.model.Organization deleteOrganization(
075                    long organizationId)
076                    throws com.liferay.portal.kernel.exception.PortalException,
077                            com.liferay.portal.kernel.exception.SystemException;
078    
079            /**
080            * Deletes the organization from the database. Also notifies the appropriate model listeners.
081            *
082            * @param organization the organization
083            * @return the organization that was removed
084            * @throws PortalException
085            * @throws SystemException if a system exception occurred
086            */
087            public com.liferay.portal.model.Organization deleteOrganization(
088                    com.liferay.portal.model.Organization organization)
089                    throws com.liferay.portal.kernel.exception.PortalException,
090                            com.liferay.portal.kernel.exception.SystemException;
091    
092            public com.liferay.portal.kernel.dao.orm.DynamicQuery dynamicQuery();
093    
094            /**
095            * Performs a dynamic query on the database and returns the matching rows.
096            *
097            * @param dynamicQuery the dynamic query
098            * @return the matching rows
099            * @throws SystemException if a system exception occurred
100            */
101            @SuppressWarnings("rawtypes")
102            public java.util.List dynamicQuery(
103                    com.liferay.portal.kernel.dao.orm.DynamicQuery dynamicQuery)
104                    throws com.liferay.portal.kernel.exception.SystemException;
105    
106            /**
107            * Performs a dynamic query on the database and returns a range of the matching rows.
108            *
109            * <p>
110            * Useful when paginating results. Returns a maximum of <code>end - start</code> instances. <code>start</code> and <code>end</code> are not primary keys, they are indexes in the result set. Thus, <code>0</code> refers to the first result in the set. Setting both <code>start</code> and <code>end</code> to {@link com.liferay.portal.kernel.dao.orm.QueryUtil#ALL_POS} will return the full result set.
111            * </p>
112            *
113            * @param dynamicQuery the dynamic query
114            * @param start the lower bound of the range of model instances
115            * @param end the upper bound of the range of model instances (not inclusive)
116            * @return the range of matching rows
117            * @throws SystemException if a system exception occurred
118            */
119            @SuppressWarnings("rawtypes")
120            public java.util.List dynamicQuery(
121                    com.liferay.portal.kernel.dao.orm.DynamicQuery dynamicQuery, int start,
122                    int end) throws com.liferay.portal.kernel.exception.SystemException;
123    
124            /**
125            * Performs a dynamic query on the database and returns an ordered range of the matching rows.
126            *
127            * <p>
128            * Useful when paginating results. Returns a maximum of <code>end - start</code> instances. <code>start</code> and <code>end</code> are not primary keys, they are indexes in the result set. Thus, <code>0</code> refers to the first result in the set. Setting both <code>start</code> and <code>end</code> to {@link com.liferay.portal.kernel.dao.orm.QueryUtil#ALL_POS} will return the full result set.
129            * </p>
130            *
131            * @param dynamicQuery the dynamic query
132            * @param start the lower bound of the range of model instances
133            * @param end the upper bound of the range of model instances (not inclusive)
134            * @param orderByComparator the comparator to order the results by (optionally <code>null</code>)
135            * @return the ordered range of matching rows
136            * @throws SystemException if a system exception occurred
137            */
138            @SuppressWarnings("rawtypes")
139            public java.util.List dynamicQuery(
140                    com.liferay.portal.kernel.dao.orm.DynamicQuery dynamicQuery, int start,
141                    int end,
142                    com.liferay.portal.kernel.util.OrderByComparator orderByComparator)
143                    throws com.liferay.portal.kernel.exception.SystemException;
144    
145            /**
146            * Returns the number of rows that match the dynamic query.
147            *
148            * @param dynamicQuery the dynamic query
149            * @return the number of rows that match the dynamic query
150            * @throws SystemException if a system exception occurred
151            */
152            public long dynamicQueryCount(
153                    com.liferay.portal.kernel.dao.orm.DynamicQuery dynamicQuery)
154                    throws com.liferay.portal.kernel.exception.SystemException;
155    
156            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
157            public com.liferay.portal.model.Organization fetchOrganization(
158                    long organizationId)
159                    throws com.liferay.portal.kernel.exception.SystemException;
160    
161            /**
162            * Returns the organization with the primary key.
163            *
164            * @param organizationId the primary key of the organization
165            * @return the organization
166            * @throws PortalException if a organization with the primary key could not be found
167            * @throws SystemException if a system exception occurred
168            */
169            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
170            public com.liferay.portal.model.Organization getOrganization(
171                    long organizationId)
172                    throws com.liferay.portal.kernel.exception.PortalException,
173                            com.liferay.portal.kernel.exception.SystemException;
174    
175            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
176            public com.liferay.portal.model.PersistedModel getPersistedModel(
177                    java.io.Serializable primaryKeyObj)
178                    throws com.liferay.portal.kernel.exception.PortalException,
179                            com.liferay.portal.kernel.exception.SystemException;
180    
181            /**
182            * Returns a range of all the organizations.
183            *
184            * <p>
185            * Useful when paginating results. Returns a maximum of <code>end - start</code> instances. <code>start</code> and <code>end</code> are not primary keys, they are indexes in the result set. Thus, <code>0</code> refers to the first result in the set. Setting both <code>start</code> and <code>end</code> to {@link com.liferay.portal.kernel.dao.orm.QueryUtil#ALL_POS} will return the full result set.
186            * </p>
187            *
188            * @param start the lower bound of the range of organizations
189            * @param end the upper bound of the range of organizations (not inclusive)
190            * @return the range of organizations
191            * @throws SystemException if a system exception occurred
192            */
193            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
194            public java.util.List<com.liferay.portal.model.Organization> getOrganizations(
195                    int start, int end)
196                    throws com.liferay.portal.kernel.exception.SystemException;
197    
198            /**
199            * Returns the number of organizations.
200            *
201            * @return the number of organizations
202            * @throws SystemException if a system exception occurred
203            */
204            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
205            public int getOrganizationsCount()
206                    throws com.liferay.portal.kernel.exception.SystemException;
207    
208            /**
209            * Updates the organization in the database or adds it if it does not yet exist. Also notifies the appropriate model listeners.
210            *
211            * @param organization the organization
212            * @return the organization that was updated
213            * @throws SystemException if a system exception occurred
214            */
215            public com.liferay.portal.model.Organization updateOrganization(
216                    com.liferay.portal.model.Organization organization)
217                    throws com.liferay.portal.kernel.exception.SystemException;
218    
219            /**
220            * Returns the Spring bean ID for this bean.
221            *
222            * @return the Spring bean ID for this bean
223            */
224            public java.lang.String getBeanIdentifier();
225    
226            /**
227            * Sets the Spring bean ID for this bean.
228            *
229            * @param beanIdentifier the Spring bean ID for this bean
230            */
231            public void setBeanIdentifier(java.lang.String beanIdentifier);
232    
233            /**
234            * Adds the organizations to the group.
235            *
236            * @param groupId the primary key of the group
237            * @param organizationIds the primary keys of the organizations
238            * @throws PortalException if a group or organization with the primary key
239            could not be found
240            * @throws SystemException if a system exception occurred
241            */
242            public void addGroupOrganizations(long groupId, long[] organizationIds)
243                    throws com.liferay.portal.kernel.exception.PortalException,
244                            com.liferay.portal.kernel.exception.SystemException;
245    
246            /**
247            * Adds an organization.
248            *
249            * <p>
250            * This method handles the creation and bookkeeping of the organization
251            * including its resources, metadata, and internal data structures. It is
252            * not necessary to make a subsequent call to {@link
253            * #addOrganizationResources(long, Organization)}.
254            * </p>
255            *
256            * @param userId the primary key of the creator/owner of the organization
257            * @param parentOrganizationId the primary key of the organization's parent
258            organization
259            * @param name the organization's name
260            * @param type the organization's type
261            * @param recursable whether the permissions of the organization are to be
262            inherited by its sub-organizations
263            * @param regionId the primary key of the organization's region
264            * @param countryId the primary key of the organization's country
265            * @param statusId the organization's workflow status
266            * @param comments the comments about the organization
267            * @param site whether the organization is to be associated with a main
268            site
269            * @param serviceContext the organization's service context (optionally
270            <code>null</code>). Can set asset category IDs, asset tag names,
271            and expando bridge attributes for the organization.
272            * @return the organization
273            * @throws PortalException if a creator or parent organization with the
274            primary key could not be found or if the organization's
275            information was invalid
276            * @throws SystemException if a system exception occurred
277            */
278            public com.liferay.portal.model.Organization addOrganization(long userId,
279                    long parentOrganizationId, java.lang.String name,
280                    java.lang.String type, boolean recursable, long regionId,
281                    long countryId, int statusId, java.lang.String comments, boolean site,
282                    com.liferay.portal.service.ServiceContext serviceContext)
283                    throws com.liferay.portal.kernel.exception.PortalException,
284                            com.liferay.portal.kernel.exception.SystemException;
285    
286            /**
287            * Adds a resource for each type of permission available on the
288            * organization.
289            *
290            * @param userId the primary key of the creator/owner of the organization
291            * @param organization the organization
292            * @throws PortalException if a portal exception occurred
293            * @throws SystemException if a system exception occurred
294            */
295            public void addOrganizationResources(long userId,
296                    com.liferay.portal.model.Organization organization)
297                    throws com.liferay.portal.kernel.exception.PortalException,
298                            com.liferay.portal.kernel.exception.SystemException;
299    
300            /**
301            * Assigns the password policy to the organizations, removing any other
302            * currently assigned password policies.
303            *
304            * @param passwordPolicyId the primary key of the password policy
305            * @param organizationIds the primary keys of the organizations
306            * @throws SystemException if a system exception occurred
307            */
308            public void addPasswordPolicyOrganizations(long passwordPolicyId,
309                    long[] organizationIds)
310                    throws com.liferay.portal.kernel.exception.SystemException;
311    
312            /**
313            * Deletes the logo of the organization.
314            *
315            * @param organizationId the primary key of the organization
316            * @throws PortalException if an organization or parent organization with
317            the primary key could not be found or if the organization's logo
318            could not be found
319            * @throws SystemException if a system exception occurred
320            */
321            public void deleteLogo(long organizationId)
322                    throws com.liferay.portal.kernel.exception.PortalException,
323                            com.liferay.portal.kernel.exception.SystemException;
324    
325            /**
326            * Returns all the organizations belonging to the group.
327            *
328            * @param groupId the primary key of the group
329            * @return the organizations belonging to the group
330            * @throws SystemException if a system exception occurred
331            */
332            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
333            public java.util.List<com.liferay.portal.model.Organization> getGroupOrganizations(
334                    long groupId)
335                    throws com.liferay.portal.kernel.exception.SystemException;
336    
337            /**
338            * Returns the organization with the name.
339            *
340            * @param companyId the primary key of the organization's company
341            * @param name the organization's name
342            * @return the organization with the name
343            * @throws PortalException if the organization with the name could not be
344            found
345            * @throws SystemException if a system exception occurred
346            */
347            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
348            public com.liferay.portal.model.Organization getOrganization(
349                    long companyId, java.lang.String name)
350                    throws com.liferay.portal.kernel.exception.PortalException,
351                            com.liferay.portal.kernel.exception.SystemException;
352    
353            /**
354            * Returns the primary key of the organization with the name.
355            *
356            * @param companyId the primary key of the organization's company
357            * @param name the organization's name
358            * @return the primary key of the organization with the name, or
359            <code>0</code> if the organization could not be found
360            * @throws SystemException if a system exception occurred
361            */
362            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
363            public long getOrganizationId(long companyId, java.lang.String name)
364                    throws com.liferay.portal.kernel.exception.SystemException;
365    
366            /**
367            * Returns all the organizations belonging to the parent organization.
368            *
369            * @param companyId the primary key of the organization's company
370            * @param parentOrganizationId the primary key of the organization's parent
371            organization
372            * @return the organizations belonging to the parent organization
373            * @throws SystemException if a system exception occurred
374            */
375            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
376            public java.util.List<com.liferay.portal.model.Organization> getOrganizations(
377                    long companyId, long parentOrganizationId)
378                    throws com.liferay.portal.kernel.exception.SystemException;
379    
380            /**
381            * Returns a range of all the organizations belonging to the parent
382            * organization.
383            *
384            * <p>
385            * Useful when paginating results. Returns a maximum of <code>end -
386            * start</code> instances. <code>start</code> and <code>end</code> are not
387            * primary keys, they are indexes in the result set. Thus, <code>0</code>
388            * refers to the first result in the set. Setting both <code>start</code>
389            * and <code>end</code> to {@link
390            * com.liferay.portal.kernel.dao.orm.QueryUtil#ALL_POS} will return the full
391            * result set.
392            * </p>
393            *
394            * @param companyId the primary key of the organization's company
395            * @param parentOrganizationId the primary key of the organization's parent
396            organization
397            * @param start the lower bound of the range of organizations to return
398            * @param end the upper bound of the range of organizations to return (not
399            inclusive)
400            * @return the range of organizations belonging to the parent organization
401            * @throws SystemException if a system exception occurred
402            * @see com.liferay.portal.service.persistence.OrganizationPersistence#findByC_P(
403            long, long, int, int)
404            */
405            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
406            public java.util.List<com.liferay.portal.model.Organization> getOrganizations(
407                    long companyId, long parentOrganizationId, int start, int end)
408                    throws com.liferay.portal.kernel.exception.SystemException;
409    
410            /**
411            * Returns the organizations with the primary keys.
412            *
413            * @param organizationIds the primary keys of the organizations
414            * @return the organizations with the primary keys
415            * @throws PortalException if any one of the organizations could not be
416            found
417            * @throws SystemException if a system exception occurred
418            */
419            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
420            public java.util.List<com.liferay.portal.model.Organization> getOrganizations(
421                    long[] organizationIds)
422                    throws com.liferay.portal.kernel.exception.PortalException,
423                            com.liferay.portal.kernel.exception.SystemException;
424    
425            /**
426            * Returns the number of organizations belonging to the parent organization.
427            *
428            * @param companyId the primary key of the organization's company
429            * @param parentOrganizationId the primary key of the organization's parent
430            organization
431            * @return the number of organizations belonging to the parent organization
432            * @throws SystemException if a system exception occurred
433            */
434            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
435            public int getOrganizationsCount(long companyId, long parentOrganizationId)
436                    throws com.liferay.portal.kernel.exception.SystemException;
437    
438            /**
439            * Returns the parent organizations in order by closest ancestor. The list
440            * starts with the organization itself.
441            *
442            * @param organizationId the primary key of the organization
443            * @return the parent organizations in order by closest ancestor
444            * @throws PortalException if an organization with the primary key could not
445            be found
446            * @throws SystemException if a system exception occurred
447            */
448            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
449            public java.util.List<com.liferay.portal.model.Organization> getParentOrganizations(
450                    long organizationId)
451                    throws com.liferay.portal.kernel.exception.PortalException,
452                            com.liferay.portal.kernel.exception.SystemException;
453    
454            /**
455            * Returns the sub-organizations of the organizations.
456            *
457            * @param organizations the organizations from which to get
458            sub-organizations
459            * @return the sub-organizations of the organizations
460            * @throws SystemException if a system exception occurred
461            */
462            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
463            public java.util.List<com.liferay.portal.model.Organization> getSuborganizations(
464                    java.util.List<com.liferay.portal.model.Organization> organizations)
465                    throws com.liferay.portal.kernel.exception.SystemException;
466    
467            /**
468            * Returns the intersection of <code>allOrganizations</code> and
469            * <code>availableOrganizations</code>.
470            *
471            * @param allOrganizations the organizations to check for availability
472            * @param availableOrganizations the available organizations
473            * @return the intersection of <code>allOrganizations</code> and
474            <code>availableOrganizations</code>
475            */
476            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
477            public java.util.List<com.liferay.portal.model.Organization> getSubsetOrganizations(
478                    java.util.List<com.liferay.portal.model.Organization> allOrganizations,
479                    java.util.List<com.liferay.portal.model.Organization> availableOrganizations);
480    
481            /**
482            * Returns all the organizations associated with the user.
483            *
484            * @param userId the primary key of the user
485            * @return the organizations associated with the user
486            * @throws PortalException if a user with the primary key could not be found
487            * @throws SystemException if a system exception occurred
488            */
489            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
490            public java.util.List<com.liferay.portal.model.Organization> getUserOrganizations(
491                    long userId)
492                    throws com.liferay.portal.kernel.exception.PortalException,
493                            com.liferay.portal.kernel.exception.SystemException;
494    
495            /**
496            * Returns all the organizations associated with the user. If
497            * includeAdministrative is <code>true</code>, the result includes those
498            * organizations that are not directly associated to the user but he is an
499            * administrator or an owner of the organization.
500            *
501            * @param userId the primary key of the user
502            * @param includeAdministrative whether to includes organizations that are
503            indirectly associated to the user because he is an administrator
504            or an owner of the organization
505            * @return the organizations associated with the user
506            * @throws PortalException if a user with the primary key could not be found
507            * @throws SystemException if a system exception occurred
508            */
509            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
510            public java.util.List<com.liferay.portal.model.Organization> getUserOrganizations(
511                    long userId, boolean includeAdministrative)
512                    throws com.liferay.portal.kernel.exception.PortalException,
513                            com.liferay.portal.kernel.exception.SystemException;
514    
515            /**
516            * Returns a range of all the organizations associated with the user.
517            *
518            * <p>
519            * Useful when paginating results. Returns a maximum of <code>end -
520            * start</code> instances. <code>start</code> and <code>end</code> are not
521            * primary keys, they are indexes in the result set. Thus, <code>0</code>
522            * refers to the first result in the set. Setting both <code>start</code>
523            * and <code>end</code> to {@link
524            * com.liferay.portal.kernel.dao.orm.QueryUtil#ALL_POS} will return the full
525            * result set.
526            * </p>
527            *
528            * @param userId the primary key of the user
529            * @param start the lower bound of the range of organizations to return
530            * @param end the upper bound of the range of organizations to return (not
531            inclusive)
532            * @return the range organizations associated with the user
533            * @throws PortalException if a user with the primary key could not be found
534            * @throws SystemException if a system exception occurred
535            */
536            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
537            public java.util.List<com.liferay.portal.model.Organization> getUserOrganizations(
538                    long userId, int start, int end)
539                    throws com.liferay.portal.kernel.exception.PortalException,
540                            com.liferay.portal.kernel.exception.SystemException;
541    
542            /**
543            * Returns the number of organizations associated with the user.
544            *
545            * @param userId the primary key of the user
546            * @return the number of organizations associated with the user
547            * @throws SystemException if a system exception occurred
548            */
549            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
550            public int getUserOrganizationsCount(long userId)
551                    throws com.liferay.portal.kernel.exception.SystemException;
552    
553            /**
554            * Returns <code>true</code> if the organization belongs to the group.
555            *
556            * @param groupId the primary key of the group
557            * @param organizationId the primary key of the organization
558            * @return <code>true</code> if the organization belongs to the group;
559            <code>false</code> otherwise
560            * @throws SystemException if a system exception occurred
561            */
562            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
563            public boolean hasGroupOrganization(long groupId, long organizationId)
564                    throws com.liferay.portal.kernel.exception.SystemException;
565    
566            /**
567            * Returns <code>true</code> if the password policy has been assigned to the
568            * organization.
569            *
570            * @param passwordPolicyId the primary key of the password policy
571            * @param organizationId the primary key of the organization
572            * @return <code>true</code> if the password policy has been assigned to the
573            organization; <code>false</code> otherwise
574            * @throws SystemException if a system exception occurred
575            */
576            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
577            public boolean hasPasswordPolicyOrganization(long passwordPolicyId,
578                    long organizationId)
579                    throws com.liferay.portal.kernel.exception.SystemException;
580    
581            /**
582            * Returns <code>true</code> if the user is a member of the organization.
583            * This method is usually called to determine if the user has view access to
584            * a resource belonging to the organization.
585            *
586            * @param userId the primary key of the user
587            * @param organizationId the primary key of the organization
588            * @return <code>true</code> if the user has access to the organization;
589            <code>false</code> otherwise
590            * @throws SystemException if a system exception occurred
591            */
592            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
593            public boolean hasUserOrganization(long userId, long organizationId)
594                    throws com.liferay.portal.kernel.exception.SystemException;
595    
596            /**
597            * Returns <code>true</code> if the user is a member of the organization,
598            * optionally focusing on sub-organizations or the specified organization.
599            * This method is usually called to determine if the user has view access to
600            * a resource belonging to the organization.
601            *
602            * <p>
603            *
604            * <ol>
605            * <li>
606            * If <code>inheritSuborganizations=<code>false</code></code>:
607            * the method checks whether the user belongs to the organization specified
608            * by <code>organizationId</code>. The parameter
609            * <code>includeSpecifiedOrganization</code> is ignored.
610            * </li>
611            * <li>
612            * The parameter <code>includeSpecifiedOrganization</code> is
613            * ignored unless <code>inheritSuborganizations</code> is also
614            * <code>true</code>.
615            * </li>
616            * <li>
617            * If <code>inheritSuborganizations=<code>true</code></code> and
618            * <code>includeSpecifiedOrganization=<code>false</code></code>: the method
619            * checks
620            * whether the user belongs to one of the child organizations of the one
621            * specified by <code>organizationId</code>.
622            * </li>
623            * <li>
624            * If <code>inheritSuborganizations=<code>true</code></code> and
625            * <code>includeSpecifiedOrganization=<code>true</code></code>: the method
626            * checks whether
627            * the user belongs to the organization specified by
628            * <code>organizationId</code> or any of
629            * its child organizations.
630            * </li>
631            * </ol>
632            *
633            * <p>
634            *
635            * @param userId the primary key of the organization's user
636            * @param organizationId the primary key of the organization
637            * @param inheritSuborganizations if <code>true</code> sub-organizations
638            are considered in the determination
639            * @param includeSpecifiedOrganization if <code>true</code> the
640            organization specified by <code>organizationId</code> is
641            considered in the determination
642            * @return <code>true</code> if the user has access to the organization;
643            <code>false</code> otherwise
644            * @throws PortalException if an organization with the primary key could not
645            be found
646            * @throws SystemException if a system exception occurred
647            * @see com.liferay.portal.service.persistence.OrganizationFinder
648            */
649            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
650            public boolean hasUserOrganization(long userId, long organizationId,
651                    boolean inheritSuborganizations, boolean includeSpecifiedOrganization)
652                    throws com.liferay.portal.kernel.exception.PortalException,
653                            com.liferay.portal.kernel.exception.SystemException;
654    
655            /**
656            * Rebuilds the organizations tree.
657            *
658            * <p>
659            * Only call this method if the tree has become stale through operations
660            * other than normal CRUD. Under normal circumstances the tree is
661            * automatically rebuilt whenever necessary.
662            * </p>
663            *
664            * @param companyId the primary key of the organization's company
665            * @throws PortalException if an organization with the primary key could not
666            be found
667            * @throws SystemException if a system exception occurred
668            */
669            public void rebuildTree(long companyId)
670                    throws com.liferay.portal.kernel.exception.PortalException,
671                            com.liferay.portal.kernel.exception.SystemException;
672    
673            /**
674            * Returns a range of all the organizations of the company.
675            *
676            * <p>
677            * Useful when paginating results. Returns a maximum of <code>end -
678            * start</code> instances. <code>start</code> and <code>end</code> are not
679            * primary keys, they are indexes in the result set. Thus, <code>0</code>
680            * refers to the first result in the set. Setting both <code>start</code>
681            * and <code>end</code> to {@link
682            * com.liferay.portal.kernel.dao.orm.QueryUtil#ALL_POS} will return the full
683            * result set.
684            * </p>
685            *
686            * @param companyId the primary key of the company
687            * @param params the finder parameters (optionally <code>null</code>). For
688            more information see {@link
689            com.liferay.portlet.usersadmin.util.OrganizationIndexer}
690            * @param start the lower bound of the range of organizations to return
691            * @param end the upper bound of the range of organizations to return (not
692            inclusive)
693            * @return the range of all the organizations of the company
694            * @throws SystemException if a system exception occurred
695            */
696            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
697            public java.util.List<com.liferay.portal.model.Organization> search(
698                    long companyId,
699                    java.util.LinkedHashMap<java.lang.String, java.lang.Object> params,
700                    int start, int end)
701                    throws com.liferay.portal.kernel.exception.SystemException;
702    
703            /**
704            * Returns an ordered range of all the organizations that match the
705            * keywords, using the indexer. It is preferable to use this method instead
706            * of the non-indexed version whenever possible for performance reasons.
707            *
708            * <p>
709            * Useful when paginating results. Returns a maximum of <code>end -
710            * start</code> instances. <code>start</code> and <code>end</code> are not
711            * primary keys, they are indexes in the result set. Thus, <code>0</code>
712            * refers to the first result in the set. Setting both <code>start</code>
713            * and <code>end</code> to {@link
714            * com.liferay.portal.kernel.dao.orm.QueryUtil#ALL_POS} will return the full
715            * result set.
716            * </p>
717            *
718            * @param companyId the primary key of the organization's company
719            * @param parentOrganizationId the primary key of the organization's parent
720            organization
721            * @param keywords the keywords (space separated), which may occur in the
722            organization's name, street, city, zipcode, type, region or
723            country (optionally <code>null</code>)
724            * @param params the finder parameters (optionally <code>null</code>). For
725            more information see {@link
726            com.liferay.portlet.usersadmin.util.OrganizationIndexer}
727            * @param start the lower bound of the range of organizations to return
728            * @param end the upper bound of the range of organizations to return (not
729            inclusive)
730            * @param sort the field and direction by which to sort (optionally
731            <code>null</code>)
732            * @return the matching organizations ordered by name
733            * @throws SystemException if a system exception occurred
734            * @see com.liferay.portlet.usersadmin.util.OrganizationIndexer
735            */
736            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
737            public com.liferay.portal.kernel.search.Hits search(long companyId,
738                    long parentOrganizationId, java.lang.String keywords,
739                    java.util.LinkedHashMap<java.lang.String, java.lang.Object> params,
740                    int start, int end, com.liferay.portal.kernel.search.Sort sort)
741                    throws com.liferay.portal.kernel.exception.SystemException;
742    
743            /**
744            * Returns a name ordered range of all the organizations that match the
745            * keywords, type, region, and country, without using the indexer. It is
746            * preferable to use the indexed version {@link #search(long, long, String,
747            * LinkedHashMap, int, int, Sort)} instead of this method wherever possible
748            * for performance reasons.
749            *
750            * <p>
751            * Useful when paginating results. Returns a maximum of <code>end -
752            * start</code> instances. <code>start</code> and <code>end</code> are not
753            * primary keys, they are indexes in the result set. Thus, <code>0</code>
754            * refers to the first result in the set. Setting both <code>start</code>
755            * and <code>end</code> to {@link
756            * com.liferay.portal.kernel.dao.orm.QueryUtil#ALL_POS} will return the full
757            * result set.
758            * </p>
759            *
760            * @param companyId the primary key of the organization's company
761            * @param parentOrganizationId the primary key of the organization's parent
762            organization
763            * @param keywords the keywords (space separated), which may occur in the
764            organization's name, street, city, or zipcode (optionally
765            <code>null</code>)
766            * @param type the organization's type (optionally <code>null</code>)
767            * @param regionId the primary key of the organization's region (optionally
768            <code>null</code>)
769            * @param countryId the primary key of the organization's country
770            (optionally <code>null</code>)
771            * @param params the finder params. For more information see {@link
772            com.liferay.portal.service.persistence.OrganizationFinder}
773            * @param start the lower bound of the range of organizations to return
774            * @param end the upper bound of the range of organizations to return (not
775            inclusive)
776            * @return the matching organizations ordered by name
777            * @throws SystemException if a system exception occurred
778            * @see com.liferay.portal.service.persistence.OrganizationFinder
779            */
780            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
781            public java.util.List<com.liferay.portal.model.Organization> search(
782                    long companyId, long parentOrganizationId, java.lang.String keywords,
783                    java.lang.String type, java.lang.Long regionId,
784                    java.lang.Long countryId,
785                    java.util.LinkedHashMap<java.lang.String, java.lang.Object> params,
786                    int start, int end)
787                    throws com.liferay.portal.kernel.exception.SystemException;
788    
789            /**
790            * Returns an ordered range of all the organizations that match the
791            * keywords, type, region, and country, without using the indexer. It is
792            * preferable to use the indexed version {@link #search(long, long, String,
793            * String, String, String, String, String, String, LinkedHashMap, boolean,
794            * int, int, Sort)} instead of this method wherever possible for performance
795            * reasons.
796            *
797            * <p>
798            * Useful when paginating results. Returns a maximum of <code>end -
799            * start</code> instances. <code>start</code> and <code>end</code> are not
800            * primary keys, they are indexes in the result set. Thus, <code>0</code>
801            * refers to the first result in the set. Setting both <code>start</code>
802            * and <code>end</code> to {@link
803            * com.liferay.portal.kernel.dao.orm.QueryUtil#ALL_POS} will return the full
804            * result set.
805            * </p>
806            *
807            * @param companyId the primary key of the organization's company
808            * @param parentOrganizationId the primary key of the organization's parent
809            organization
810            * @param keywords the keywords (space separated), which may occur in the
811            organization's name, street, city, or zipcode (optionally
812            <code>null</code>)
813            * @param type the organization's type (optionally <code>null</code>)
814            * @param regionId the primary key of the organization's region (optionally
815            <code>null</code>)
816            * @param countryId the primary key of the organization's country
817            (optionally <code>null</code>)
818            * @param params the finder params. For more information see {@link
819            com.liferay.portal.service.persistence.OrganizationFinder}
820            * @param start the lower bound of the range of organizations to return
821            * @param end the upper bound of the range of organizations to return (not
822            inclusive)
823            * @param obc the comparator to order the organizations (optionally
824            <code>null</code>)
825            * @return the matching organizations ordered by comparator <code>obc</code>
826            * @throws SystemException if a system exception occurred
827            * @see com.liferay.portal.service.persistence.OrganizationFinder
828            */
829            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
830            public java.util.List<com.liferay.portal.model.Organization> search(
831                    long companyId, long parentOrganizationId, java.lang.String keywords,
832                    java.lang.String type, java.lang.Long regionId,
833                    java.lang.Long countryId,
834                    java.util.LinkedHashMap<java.lang.String, java.lang.Object> params,
835                    int start, int end, com.liferay.portal.kernel.util.OrderByComparator obc)
836                    throws com.liferay.portal.kernel.exception.SystemException;
837    
838            /**
839            * Returns a name ordered range of all the organizations with the type,
840            * region, and country, and whose name, street, city, and zipcode match the
841            * keywords specified for them, without using the indexer. It is preferable
842            * to use the indexed version {@link #search(long, long, String, String,
843            * String, String, String, String, String, LinkedHashMap, boolean, int, int,
844            * Sort)} instead of this method wherever possible for performance reasons.
845            *
846            * <p>
847            * Useful when paginating results. Returns a maximum of <code>end -
848            * start</code> instances. <code>start</code> and <code>end</code> are not
849            * primary keys, they are indexes in the result set. Thus, <code>0</code>
850            * refers to the first result in the set. Setting both <code>start</code>
851            * and <code>end</code> to {@link
852            * com.liferay.portal.kernel.dao.orm.QueryUtil#ALL_POS} will return the full
853            * result set.
854            * </p>
855            *
856            * @param companyId the primary key of the organization's company
857            * @param parentOrganizationId the primary key of the organization's parent
858            * @param name the name keywords (space separated, optionally
859            <code>null</code>)
860            * @param type the organization's type (optionally <code>null</code>)
861            * @param street the street keywords (optionally <code>null</code>)
862            * @param city the city keywords (optionally <code>null</code>)
863            * @param zip the zipcode keywords (optionally <code>null</code>)
864            * @param regionId the primary key of the organization's region (optionally
865            <code>null</code>)
866            * @param countryId the primary key of the organization's country
867            (optionally <code>null</code>)
868            * @param params the finder parameters (optionally <code>null</code>). For
869            more information see {@link
870            com.liferay.portal.service.persistence.OrganizationFinder}
871            * @param andOperator whether every field must match its keywords, or just
872            one field. For example, &quot;organizations with the name
873            'Employees' and city 'Chicago'&quot; vs &quot;organizations with
874            the name 'Employees' or the city 'Chicago'&quot;.
875            * @param start the lower bound of the range of organizations to return
876            * @param end the upper bound of the range of organizations to return (not
877            inclusive)
878            * @return the matching organizations ordered by name
879            * @throws SystemException if a system exception occurred
880            * @see com.liferay.portal.service.persistence.OrganizationFinder
881            */
882            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
883            public java.util.List<com.liferay.portal.model.Organization> search(
884                    long companyId, long parentOrganizationId, java.lang.String name,
885                    java.lang.String type, java.lang.String street, java.lang.String city,
886                    java.lang.String zip, java.lang.Long regionId,
887                    java.lang.Long countryId,
888                    java.util.LinkedHashMap<java.lang.String, java.lang.Object> params,
889                    boolean andOperator, int start, int end)
890                    throws com.liferay.portal.kernel.exception.SystemException;
891    
892            /**
893            * Returns an ordered range of all the organizations with the type, region,
894            * and country, and whose name, street, city, and zipcode match the keywords
895            * specified for them, without using the indexer. It is preferable to use
896            * the indexed version {@link #search(long, long, String, String, String,
897            * String, String, String, String, LinkedHashMap, boolean, int, int, Sort)}
898            * instead of this method wherever possible for performance reasons.
899            *
900            * <p>
901            * Useful when paginating results. Returns a maximum of <code>end -
902            * start</code> instances. <code>start</code> and <code>end</code> are not
903            * primary keys, they are indexes in the result set. Thus, <code>0</code>
904            * refers to the first result in the set. Setting both <code>start</code>
905            * and <code>end</code> to {@link
906            * com.liferay.portal.kernel.dao.orm.QueryUtil#ALL_POS} will return the full
907            * result set.
908            * </p>
909            *
910            * @param companyId the primary key of the organization's company
911            * @param parentOrganizationId the primary key of the organization's parent
912            organization
913            * @param name the name keywords (space separated, optionally
914            <code>null</code>)
915            * @param type the organization's type (optionally <code>null</code>)
916            * @param street the street keywords (optionally <code>null</code>)
917            * @param city the city keywords (optionally <code>null</code>)
918            * @param zip the zipcode keywords (optionally <code>null</code>)
919            * @param regionId the primary key of the organization's region (optionally
920            <code>null</code>)
921            * @param countryId the primary key of the organization's country
922            (optionally <code>null</code>)
923            * @param params the finder parameters (optionally <code>null</code>). For
924            more information see {@link
925            com.liferay.portal.service.persistence.OrganizationFinder}
926            * @param andOperator whether every field must match its keywords, or just
927            one field. For example, &quot;organizations with the name
928            'Employees' and city 'Chicago'&quot; vs &quot;organizations with
929            the name 'Employees' or the city 'Chicago'&quot;.
930            * @param start the lower bound of the range of organizations to return
931            * @param end the upper bound of the range of organizations to return (not
932            inclusive)
933            * @param obc the comparator to order the organizations (optionally
934            <code>null</code>)
935            * @return the matching organizations ordered by comparator <code>obc</code>
936            * @throws SystemException if a system exception occurred
937            * @see com.liferay.portal.service.persistence.OrganizationFinder
938            */
939            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
940            public java.util.List<com.liferay.portal.model.Organization> search(
941                    long companyId, long parentOrganizationId, java.lang.String name,
942                    java.lang.String type, java.lang.String street, java.lang.String city,
943                    java.lang.String zip, java.lang.Long regionId,
944                    java.lang.Long countryId,
945                    java.util.LinkedHashMap<java.lang.String, java.lang.Object> params,
946                    boolean andOperator, int start, int end,
947                    com.liferay.portal.kernel.util.OrderByComparator obc)
948                    throws com.liferay.portal.kernel.exception.SystemException;
949    
950            /**
951            * Returns an ordered range of all the organizations whose name, type, or
952            * location fields match the keywords specified for them, using the indexer.
953            * It is preferable to use this method instead of the non-indexed version
954            * whenever possible for performance reasons.
955            *
956            * <p>
957            * Useful when paginating results. Returns a maximum of <code>end -
958            * start</code> instances. <code>start</code> and <code>end</code> are not
959            * primary keys, they are indexes in the result set. Thus, <code>0</code>
960            * refers to the first result in the set. Setting both <code>start</code>
961            * and <code>end</code> to {@link
962            * com.liferay.portal.kernel.dao.orm.QueryUtil#ALL_POS} will return the full
963            * result set.
964            * </p>
965            *
966            * @param companyId the primary key of the organization's company
967            * @param parentOrganizationId the primary key of the organization's parent
968            organization
969            * @param name the name keywords (space separated, optionally
970            <code>null</code>)
971            * @param type the type keywords (optionally <code>null</code>)
972            * @param street the street keywords (optionally <code>null</code>)
973            * @param city the city keywords (optionally <code>null</code>)
974            * @param zip the zipcode keywords (optionally <code>null</code>)
975            * @param region the region keywords (optionally <code>null</code>)
976            * @param country the country keywords (optionally <code>null</code>)
977            * @param params the finder parameters (optionally <code>null</code>). For
978            more information see {@link
979            com.liferay.portlet.usersadmin.util.OrganizationIndexer}.
980            * @param andSearch whether every field must match its keywords or just one
981            field
982            * @param start the lower bound of the range of organizations to return
983            * @param end the upper bound of the range of organizations to return (not
984            inclusive)
985            * @param sort the field and direction by which to sort (optionally
986            <code>null</code>)
987            * @return the matching organizations ordered by <code>sort</code>
988            * @throws SystemException if a system exception occurred
989            * @see com.liferay.portlet.usersadmin.util.OrganizationIndexer
990            */
991            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
992            public com.liferay.portal.kernel.search.Hits search(long companyId,
993                    long parentOrganizationId, java.lang.String name,
994                    java.lang.String type, java.lang.String street, java.lang.String city,
995                    java.lang.String zip, java.lang.String region,
996                    java.lang.String country,
997                    java.util.LinkedHashMap<java.lang.String, java.lang.Object> params,
998                    boolean andSearch, int start, int end,
999                    com.liferay.portal.kernel.search.Sort sort)
1000                    throws com.liferay.portal.kernel.exception.SystemException;
1001    
1002            /**
1003            * Returns the number of organizations that match the keywords, type,
1004            * region, and country.
1005            *
1006            * @param companyId the primary key of the organization's company
1007            * @param parentOrganizationId the primary key of the organization's parent
1008            organization
1009            * @param keywords the keywords (space separated), which may occur in the
1010            organization's name, street, city, or zipcode (optionally
1011            <code>null</code>)
1012            * @param type the organization's type (optionally <code>null</code>)
1013            * @param regionId the primary key of the organization's region (optionally
1014            <code>null</code>)
1015            * @param countryId the primary key of the organization's country
1016            (optionally <code>null</code>)
1017            * @param params the finder parameters (optionally <code>null</code>). For
1018            more information see {@link
1019            com.liferay.portal.service.persistence.OrganizationFinder}
1020            * @return the number of matching organizations
1021            * @throws SystemException if a system exception occurred
1022            * @see com.liferay.portal.service.persistence.OrganizationFinder
1023            */
1024            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
1025            public int searchCount(long companyId, long parentOrganizationId,
1026                    java.lang.String keywords, java.lang.String type,
1027                    java.lang.Long regionId, java.lang.Long countryId,
1028                    java.util.LinkedHashMap<java.lang.String, java.lang.Object> params)
1029                    throws com.liferay.portal.kernel.exception.SystemException;
1030    
1031            /**
1032            * Returns the number of organizations with the type, region, and country,
1033            * and whose name, street, city, and zipcode match the keywords specified
1034            * for them.
1035            *
1036            * @param companyId the primary key of the organization's company
1037            * @param parentOrganizationId the primary key of the organization's parent
1038            organization
1039            * @param name the name keywords (space separated, optionally
1040            <code>null</code>)
1041            * @param type the organization's type (optionally <code>null</code>)
1042            * @param street the street keywords (optionally <code>null</code>)
1043            * @param city the city keywords (optionally <code>null</code>)
1044            * @param zip the zipcode keywords (optionally <code>null</code>)
1045            * @param regionId the primary key of the organization's region (optionally
1046            <code>null</code>)
1047            * @param countryId the primary key of the organization's country
1048            (optionally <code>null</code>)
1049            * @param params the finder parameters (optionally <code>null</code>). For
1050            more information see {@link
1051            com.liferay.portal.service.persistence.OrganizationFinder}
1052            * @param andOperator whether every field must match its keywords, or just
1053            one field. For example, &quot;organizations with the name
1054            'Employees' and city 'Chicago'&quot; vs &quot;organizations with
1055            the name 'Employees' or the city 'Chicago'&quot;.
1056            * @return the number of matching organizations
1057            * @throws SystemException if a system exception occurred
1058            * @see com.liferay.portal.service.persistence.OrganizationFinder
1059            */
1060            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
1061            public int searchCount(long companyId, long parentOrganizationId,
1062                    java.lang.String name, java.lang.String type, java.lang.String street,
1063                    java.lang.String city, java.lang.String zip, java.lang.Long regionId,
1064                    java.lang.Long countryId,
1065                    java.util.LinkedHashMap<java.lang.String, java.lang.Object> params,
1066                    boolean andOperator)
1067                    throws com.liferay.portal.kernel.exception.SystemException;
1068    
1069            /**
1070            * Sets the organizations in the group, removing and adding organizations to
1071            * the group as necessary.
1072            *
1073            * @param groupId the primary key of the group
1074            * @param organizationIds the primary keys of the organizations
1075            * @throws PortalException if a portal exception occurred
1076            * @throws SystemException if a system exception occurred
1077            */
1078            public void setGroupOrganizations(long groupId, long[] organizationIds)
1079                    throws com.liferay.portal.kernel.exception.PortalException,
1080                            com.liferay.portal.kernel.exception.SystemException;
1081    
1082            /**
1083            * Removes the organizations from the group.
1084            *
1085            * @param groupId the primary key of the group
1086            * @param organizationIds the primary keys of the organizations
1087            * @throws PortalException if a portal exception occurred
1088            * @throws SystemException if a system exception occurred
1089            */
1090            public void unsetGroupOrganizations(long groupId, long[] organizationIds)
1091                    throws com.liferay.portal.kernel.exception.PortalException,
1092                            com.liferay.portal.kernel.exception.SystemException;
1093    
1094            /**
1095            * Removes the organizations from the password policy.
1096            *
1097            * @param passwordPolicyId the primary key of the password policy
1098            * @param organizationIds the primary keys of the organizations
1099            * @throws SystemException if a system exception occurred
1100            */
1101            public void unsetPasswordPolicyOrganizations(long passwordPolicyId,
1102                    long[] organizationIds)
1103                    throws com.liferay.portal.kernel.exception.SystemException;
1104    
1105            /**
1106            * Updates the organization's asset with the new asset categories and tag
1107            * names, removing and adding asset categories and tag names as necessary.
1108            *
1109            * @param userId the primary key of the user
1110            * @param organization the organization
1111            * @param assetCategoryIds the primary keys of the asset categories
1112            * @param assetTagNames the asset tag names
1113            * @throws PortalException if a user with the primary key could not be found
1114            * @throws SystemException if a system exception occurred
1115            */
1116            public void updateAsset(long userId,
1117                    com.liferay.portal.model.Organization organization,
1118                    long[] assetCategoryIds, java.lang.String[] assetTagNames)
1119                    throws com.liferay.portal.kernel.exception.PortalException,
1120                            com.liferay.portal.kernel.exception.SystemException;
1121    
1122            /**
1123            * Updates the organization.
1124            *
1125            * @param companyId the primary key of the organization's company
1126            * @param organizationId the primary key of the organization
1127            * @param parentOrganizationId the primary key of organization's parent
1128            organization
1129            * @param name the organization's name
1130            * @param type the organization's type
1131            * @param recursable whether permissions of the organization are to be
1132            inherited by its sub-organizations
1133            * @param regionId the primary key of the organization's region
1134            * @param countryId the primary key of the organization's country
1135            * @param statusId the organization's workflow status
1136            * @param comments the comments about the organization
1137            * @param site whether the organization is to be associated with a main
1138            site
1139            * @param serviceContext the organization's service context (optionally
1140            <code>null</code>). Can set asset category IDs and asset tag
1141            names for the organization, and merge expando bridge attributes
1142            for the organization.
1143            * @return the organization
1144            * @throws PortalException if an organization or parent organization with
1145            the primary key could not be found or if the new information was
1146            invalid
1147            * @throws SystemException if a system exception occurred
1148            */
1149            public com.liferay.portal.model.Organization updateOrganization(
1150                    long companyId, long organizationId, long parentOrganizationId,
1151                    java.lang.String name, java.lang.String type, boolean recursable,
1152                    long regionId, long countryId, int statusId, java.lang.String comments,
1153                    boolean site, com.liferay.portal.service.ServiceContext serviceContext)
1154                    throws com.liferay.portal.kernel.exception.PortalException,
1155                            com.liferay.portal.kernel.exception.SystemException;
1156    }