001    /**
002     * Copyright (c) 2000-2011 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 company 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 CompanyLocalServiceUtil
032     * @see com.liferay.portal.service.base.CompanyLocalServiceBaseImpl
033     * @see com.liferay.portal.service.impl.CompanyLocalServiceImpl
034     * @generated
035     */
036    @Transactional(isolation = Isolation.PORTAL, rollbackFor =  {
037            PortalException.class, SystemException.class})
038    public interface CompanyLocalService extends PersistedModelLocalService {
039            /*
040             * NOTE FOR DEVELOPERS:
041             *
042             * Never modify or reference this interface directly. Always use {@link CompanyLocalServiceUtil} to access the company local service. Add custom service methods to {@link com.liferay.portal.service.impl.CompanyLocalServiceImpl} and rerun ServiceBuilder to automatically copy the method declarations to this interface.
043             */
044    
045            /**
046            * Adds the company to the database. Also notifies the appropriate model listeners.
047            *
048            * @param company the company
049            * @return the company that was added
050            * @throws SystemException if a system exception occurred
051            */
052            public com.liferay.portal.model.Company addCompany(
053                    com.liferay.portal.model.Company company)
054                    throws com.liferay.portal.kernel.exception.SystemException;
055    
056            /**
057            * Creates a new company with the primary key. Does not add the company to the database.
058            *
059            * @param companyId the primary key for the new company
060            * @return the new company
061            */
062            public com.liferay.portal.model.Company createCompany(long companyId);
063    
064            /**
065            * Deletes the company with the primary key from the database. Also notifies the appropriate model listeners.
066            *
067            * @param companyId the primary key of the company
068            * @throws PortalException if a company with the primary key could not be found
069            * @throws SystemException if a system exception occurred
070            */
071            public void deleteCompany(long companyId)
072                    throws com.liferay.portal.kernel.exception.PortalException,
073                            com.liferay.portal.kernel.exception.SystemException;
074    
075            /**
076            * Deletes the company from the database. Also notifies the appropriate model listeners.
077            *
078            * @param company the company
079            * @throws SystemException if a system exception occurred
080            */
081            public void deleteCompany(com.liferay.portal.model.Company company)
082                    throws com.liferay.portal.kernel.exception.SystemException;
083    
084            /**
085            * Performs a dynamic query on the database and returns the matching rows.
086            *
087            * @param dynamicQuery the dynamic query
088            * @return the matching rows
089            * @throws SystemException if a system exception occurred
090            */
091            @SuppressWarnings("rawtypes")
092            public java.util.List dynamicQuery(
093                    com.liferay.portal.kernel.dao.orm.DynamicQuery dynamicQuery)
094                    throws com.liferay.portal.kernel.exception.SystemException;
095    
096            /**
097            * Performs a dynamic query on the database and returns a range of the matching rows.
098            *
099            * <p>
100            * 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.
101            * </p>
102            *
103            * @param dynamicQuery the dynamic query
104            * @param start the lower bound of the range of model instances
105            * @param end the upper bound of the range of model instances (not inclusive)
106            * @return the range of matching rows
107            * @throws SystemException if a system exception occurred
108            */
109            @SuppressWarnings("rawtypes")
110            public java.util.List dynamicQuery(
111                    com.liferay.portal.kernel.dao.orm.DynamicQuery dynamicQuery, int start,
112                    int end) throws com.liferay.portal.kernel.exception.SystemException;
113    
114            /**
115            * Performs a dynamic query on the database and returns an ordered range of the matching rows.
116            *
117            * <p>
118            * 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.
119            * </p>
120            *
121            * @param dynamicQuery the dynamic query
122            * @param start the lower bound of the range of model instances
123            * @param end the upper bound of the range of model instances (not inclusive)
124            * @param orderByComparator the comparator to order the results by (optionally <code>null</code>)
125            * @return the ordered range of matching rows
126            * @throws SystemException if a system exception occurred
127            */
128            @SuppressWarnings("rawtypes")
129            public java.util.List dynamicQuery(
130                    com.liferay.portal.kernel.dao.orm.DynamicQuery dynamicQuery, int start,
131                    int end,
132                    com.liferay.portal.kernel.util.OrderByComparator orderByComparator)
133                    throws com.liferay.portal.kernel.exception.SystemException;
134    
135            /**
136            * Returns the number of rows that match the dynamic query.
137            *
138            * @param dynamicQuery the dynamic query
139            * @return the number of rows that match the dynamic query
140            * @throws SystemException if a system exception occurred
141            */
142            public long dynamicQueryCount(
143                    com.liferay.portal.kernel.dao.orm.DynamicQuery dynamicQuery)
144                    throws com.liferay.portal.kernel.exception.SystemException;
145    
146            /**
147            * Returns the company with the primary key.
148            *
149            * @param companyId the primary key of the company
150            * @return the company
151            * @throws PortalException if a company with the primary key could not be found
152            * @throws SystemException if a system exception occurred
153            */
154            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
155            public com.liferay.portal.model.Company getCompany(long companyId)
156                    throws com.liferay.portal.kernel.exception.PortalException,
157                            com.liferay.portal.kernel.exception.SystemException;
158    
159            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
160            public com.liferay.portal.model.PersistedModel getPersistedModel(
161                    java.io.Serializable primaryKeyObj)
162                    throws com.liferay.portal.kernel.exception.PortalException,
163                            com.liferay.portal.kernel.exception.SystemException;
164    
165            /**
166            * Returns a range of all the companies.
167            *
168            * <p>
169            * 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.
170            * </p>
171            *
172            * @param start the lower bound of the range of companies
173            * @param end the upper bound of the range of companies (not inclusive)
174            * @return the range of companies
175            * @throws SystemException if a system exception occurred
176            */
177            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
178            public java.util.List<com.liferay.portal.model.Company> getCompanies(
179                    int start, int end)
180                    throws com.liferay.portal.kernel.exception.SystemException;
181    
182            /**
183            * Returns the number of companies.
184            *
185            * @return the number of companies
186            * @throws SystemException if a system exception occurred
187            */
188            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
189            public int getCompaniesCount()
190                    throws com.liferay.portal.kernel.exception.SystemException;
191    
192            /**
193            * Updates the company in the database or adds it if it does not yet exist. Also notifies the appropriate model listeners.
194            *
195            * @param company the company
196            * @return the company that was updated
197            * @throws SystemException if a system exception occurred
198            */
199            public com.liferay.portal.model.Company updateCompany(
200                    com.liferay.portal.model.Company company)
201                    throws com.liferay.portal.kernel.exception.SystemException;
202    
203            /**
204            * Updates the company in the database or adds it if it does not yet exist. Also notifies the appropriate model listeners.
205            *
206            * @param company the company
207            * @param merge whether to merge the company with the current session. See {@link com.liferay.portal.service.persistence.BatchSession#update(com.liferay.portal.kernel.dao.orm.Session, com.liferay.portal.model.BaseModel, boolean)} for an explanation.
208            * @return the company that was updated
209            * @throws SystemException if a system exception occurred
210            */
211            public com.liferay.portal.model.Company updateCompany(
212                    com.liferay.portal.model.Company company, boolean merge)
213                    throws com.liferay.portal.kernel.exception.SystemException;
214    
215            /**
216            * Returns the Spring bean ID for this bean.
217            *
218            * @return the Spring bean ID for this bean
219            */
220            public java.lang.String getBeanIdentifier();
221    
222            /**
223            * Sets the Spring bean ID for this bean.
224            *
225            * @param beanIdentifier the Spring bean ID for this bean
226            */
227            public void setBeanIdentifier(java.lang.String beanIdentifier);
228    
229            /**
230            * Adds a company.
231            *
232            * @param webId the the company's web domain
233            * @param virtualHostname the company's virtual host name
234            * @param mx the company's mail domain
235            * @param shardName the company's shard
236            * @param system whether the company is the very first company (i.e., the
237            super company)
238            * @param maxUsers the max number of company users (optionally
239            <code>0</code>)
240            * @param active whether the company is active
241            * @return the company
242            * @throws PortalException if the web domain, virtual host name, or mail
243            domain was invalid
244            * @throws SystemException if a system exception occurred
245            */
246            public com.liferay.portal.model.Company addCompany(java.lang.String webId,
247                    java.lang.String virtualHostname, java.lang.String mx,
248                    java.lang.String shardName, boolean system, int maxUsers, boolean active)
249                    throws com.liferay.portal.kernel.exception.PortalException,
250                            com.liferay.portal.kernel.exception.SystemException;
251    
252            /**
253            * Returns the company with the web domain.
254            *
255            * The method sets mail domain to the web domain, and the shard name to
256            * the default name set in portal.properties
257            *
258            * @param webId the company's web domain
259            * @return the company with the web domain
260            * @throws PortalException if a portal exception occurred
261            * @throws SystemException if a system exception occurred
262            */
263            public com.liferay.portal.model.Company checkCompany(java.lang.String webId)
264                    throws com.liferay.portal.kernel.exception.PortalException,
265                            com.liferay.portal.kernel.exception.SystemException;
266    
267            /**
268            * Returns the company with the web domain, mail domain, and shard. If no
269            * such company exits, the method will create a new company.
270            *
271            * The method goes through a series of checks to ensure that the company
272            * contains default users, groups, etc.
273            *
274            * @param webId the company's web domain
275            * @param mx the company's mail domain
276            * @param shardName the company's shard
277            * @return the company with the web domain, mail domain, and shard
278            * @throws PortalException if a portal exception occurred
279            * @throws SystemException if a system exception occurred
280            */
281            public com.liferay.portal.model.Company checkCompany(
282                    java.lang.String webId, java.lang.String mx, java.lang.String shardName)
283                    throws com.liferay.portal.kernel.exception.PortalException,
284                            com.liferay.portal.kernel.exception.SystemException;
285    
286            /**
287            * Checks if the company has an encryption key. It will create a key if one
288            * does not exist.
289            *
290            * @param companyId the primary key of the company
291            * @throws PortalException if a company with the primary key could not be
292            found
293            * @throws SystemException if a system exception occurred
294            */
295            public void checkCompanyKey(long companyId)
296                    throws com.liferay.portal.kernel.exception.PortalException,
297                            com.liferay.portal.kernel.exception.SystemException;
298    
299            /**
300            * Deletes the company's logo.
301            *
302            * @param companyId the primary key of the company
303            * @throws PortalException if the company with the primary key could not be
304            found or if the company's logo could not be found
305            * @throws SystemException if a system exception occurred
306            */
307            public void deleteLogo(long companyId)
308                    throws com.liferay.portal.kernel.exception.PortalException,
309                            com.liferay.portal.kernel.exception.SystemException;
310    
311            /**
312            * Returns the company with the primary key.
313            *
314            * @param companyId the primary key of the company
315            * @return the company with the primary key, <code>null</code> if a company
316            with the primary key could not be found
317            * @throws SystemException if a system exception occurred
318            */
319            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
320            public com.liferay.portal.model.Company fetchCompany(long companyId)
321                    throws com.liferay.portal.kernel.exception.SystemException;
322    
323            /**
324            * Returns the company with the virtual host name.
325            *
326            * @param virtualHostname the virtual host name
327            * @return the company with the virtual host name, <code>null</code> if a
328            company with the virtual host could not be found
329            * @throws SystemException if a system exception occurred
330            */
331            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
332            public com.liferay.portal.model.Company fetchCompanyByVirtualHost(
333                    java.lang.String virtualHostname)
334                    throws com.liferay.portal.kernel.exception.SystemException;
335    
336            /**
337            * Returns all the companies.
338            *
339            * @return the companies
340            * @throws SystemException if a system exception occurred
341            */
342            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
343            public java.util.List<com.liferay.portal.model.Company> getCompanies()
344                    throws com.liferay.portal.kernel.exception.SystemException;
345    
346            /**
347            * Returns all the companies used by WSRP.
348            *
349            * @param system whether the company is the very first company (i.e., the
350            super company)
351            * @return the companies used by WSRP
352            * @throws SystemException if a system exception occurred
353            */
354            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
355            public java.util.List<com.liferay.portal.model.Company> getCompanies(
356                    boolean system)
357                    throws com.liferay.portal.kernel.exception.SystemException;
358    
359            /**
360            * Returns the number of companies used by WSRP.
361            *
362            * @param system whether the company is the very first company (i.e., the
363            super company)
364            * @return the number of companies used by WSRP
365            * @throws SystemException if a system exception occurred
366            */
367            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
368            public int getCompaniesCount(boolean system)
369                    throws com.liferay.portal.kernel.exception.SystemException;
370    
371            /**
372            * Returns the company with the primary key.
373            *
374            * @param companyId the primary key of the company
375            * @return the company with the primary key
376            * @throws PortalException if a company with the primary key could not be
377            found
378            * @throws SystemException if a system exception occurred
379            */
380            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
381            public com.liferay.portal.model.Company getCompanyById(long companyId)
382                    throws com.liferay.portal.kernel.exception.PortalException,
383                            com.liferay.portal.kernel.exception.SystemException;
384    
385            /**
386            * Returns the company with the logo.
387            *
388            * @param logoId the ID of the company's logo
389            * @return the company with the logo
390            * @throws PortalException if the company with the logo could not be found
391            * @throws SystemException if a system exception occurred
392            */
393            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
394            public com.liferay.portal.model.Company getCompanyByLogoId(long logoId)
395                    throws com.liferay.portal.kernel.exception.PortalException,
396                            com.liferay.portal.kernel.exception.SystemException;
397    
398            /**
399            * Returns the company with the mail domain.
400            *
401            * @param mx the company's mail domain
402            * @return the company with the mail domain
403            * @throws PortalException if the company with the mail domain could not be
404            found
405            * @throws SystemException if a system exception occurred
406            */
407            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
408            public com.liferay.portal.model.Company getCompanyByMx(java.lang.String mx)
409                    throws com.liferay.portal.kernel.exception.PortalException,
410                            com.liferay.portal.kernel.exception.SystemException;
411    
412            /**
413            * Returns the company with the virtual host name.
414            *
415            * @param virtualHostname the company's virtual host name
416            * @return the company with the virtual host name
417            * @throws PortalException if the company with the virtual host name could
418            not be found or if the virtual host was not associated with a
419            company
420            * @throws SystemException if a system exception occurred
421            */
422            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
423            public com.liferay.portal.model.Company getCompanyByVirtualHost(
424                    java.lang.String virtualHostname)
425                    throws com.liferay.portal.kernel.exception.PortalException,
426                            com.liferay.portal.kernel.exception.SystemException;
427    
428            /**
429            * Returns the company with the web domain.
430            *
431            * @param webId the company's web domain
432            * @return the company with the web domain
433            * @throws PortalException if the company with the web domain could not be
434            found
435            * @throws SystemException if a system exception occurred
436            */
437            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
438            public com.liferay.portal.model.Company getCompanyByWebId(
439                    java.lang.String webId)
440                    throws com.liferay.portal.kernel.exception.PortalException,
441                            com.liferay.portal.kernel.exception.SystemException;
442    
443            /**
444            * Returns the user's company.
445            *
446            * @param userId the primary key of the user
447            * @return Returns the first company if there is only one company or the
448            user's company if there are more than one company;
449            <code>0</code> otherwise
450            * @throws Exception if a user with the primary key could not be found
451            */
452            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
453            public long getCompanyIdByUserId(long userId) throws java.lang.Exception;
454    
455            /**
456            * Removes the values that match the keys of the company's preferences.
457            *
458            * This method is called by {@link
459            * com.liferay.portlet.portalsettings.action.EditLDAPServerAction} remotely
460            * through {@link com.liferay.portal.service.CompanyService}.
461            *
462            * @param companyId the primary key of the company
463            * @param keys the company's preferences keys to be remove
464            * @throws SystemException if a system exception occurred
465            */
466            public void removePreferences(long companyId, java.lang.String[] keys)
467                    throws com.liferay.portal.kernel.exception.SystemException;
468    
469            /**
470            * Returns an ordered range of all assets that match the keywords in the
471            * company.
472            *
473            * The method is called in {@link
474            * com.liferay.portal.search.PortalOpenSearchImpl} which is not longer used
475            * by the Search portlet.
476            *
477            * @param companyId the primary key of the company
478            * @param userId the primary key of the user
479            * @param keywords the keywords (space separated),which may occur in
480            assets in the company (optionally <code>null</code>)
481            * @param start the lower bound of the range of assets to return
482            * @param end the upper bound of the range of assets to return (not
483            inclusive)
484            * @return the matching assets in the company
485            * @throws SystemException if a system exception occurred
486            */
487            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
488            public com.liferay.portal.kernel.search.Hits search(long companyId,
489                    long userId, java.lang.String keywords, int start, int end)
490                    throws com.liferay.portal.kernel.exception.SystemException;
491    
492            /**
493            * Returns an ordered range of all assets that match the keywords in the
494            * portlet within the company.
495            *
496            * @param companyId the primary key of the company
497            * @param userId the primary key of the user
498            * @param portletId the primary key of the portlet (optionally
499            <code>null</code>)
500            * @param groupId the primary key of the group (optionally <code>0</code>)
501            * @param type the mime type of assets to return(optionally
502            <code>null</code>)
503            * @param keywords the keywords (space separated), which may occur in any
504            assets in the portlet (optionally <code>null</code>)
505            * @param start the lower bound of the range of assets to return
506            * @param end the upper bound of the range of assets to return (not
507            inclusive)
508            * @return the matching assets in the portlet within the company
509            * @throws SystemException if a system exception occurred
510            */
511            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
512            public com.liferay.portal.kernel.search.Hits search(long companyId,
513                    long userId, java.lang.String portletId, long groupId,
514                    java.lang.String type, java.lang.String keywords, int start, int end)
515                    throws com.liferay.portal.kernel.exception.SystemException;
516    
517            /**
518            * Updates the company.
519            *
520            * @param companyId the primary key of the company
521            * @param virtualHostname the company's virtual host name
522            * @param mx the company's mail domain
523            * @param maxUsers the max number of company users (optionally
524            <code>0</code>)
525            * @param active whether the company is active
526            * @return the company with the primary key
527            * @throws PortalException if a company with primary key could not be found
528            or if the new information was invalid
529            * @throws SystemException if a system exception occurred
530            */
531            public com.liferay.portal.model.Company updateCompany(long companyId,
532                    java.lang.String virtualHostname, java.lang.String mx, int maxUsers,
533                    boolean active)
534                    throws com.liferay.portal.kernel.exception.PortalException,
535                            com.liferay.portal.kernel.exception.SystemException;
536    
537            /**
538            * Update the company with additional account information.
539            *
540            * @param companyId the primary key of the company
541            * @param virtualHostname the company's virtual host name
542            * @param mx the company's mail domain
543            * @param homeURL the company's home URL (optionally <code>null</code>)
544            * @param name the company's account name(optionally <code>null</code>)
545            * @param legalName the company's account legal name (optionally
546            <code>null</code>)
547            * @param legalId the company's account legal ID (optionally
548            <code>null</code>)
549            * @param legalType the company's account legal type (optionally
550            <code>null</code>)
551            * @param sicCode the company's account SIC code (optionally
552            <code>null</code>)
553            * @param tickerSymbol the company's account ticker symbol (optionally
554            <code>null</code>)
555            * @param industry the company's account industry (optionally
556            <code>null</code>)
557            * @param type the company's account type (optionally <code>null</code>)
558            * @param size the company's account size (optionally <code>null</code>)
559            * @return the company with the primary key
560            * @throws PortalException if a company with the primary key could not be
561            found or if the new information was invalid
562            * @throws SystemException if a system exception occurred
563            */
564            public com.liferay.portal.model.Company updateCompany(long companyId,
565                    java.lang.String virtualHostname, java.lang.String mx,
566                    java.lang.String homeURL, java.lang.String name,
567                    java.lang.String legalName, java.lang.String legalId,
568                    java.lang.String legalType, java.lang.String sicCode,
569                    java.lang.String tickerSymbol, java.lang.String industry,
570                    java.lang.String type, java.lang.String size)
571                    throws com.liferay.portal.kernel.exception.PortalException,
572                            com.liferay.portal.kernel.exception.SystemException;
573    
574            /**
575            * Update the company's display.
576            *
577            * @param companyId the primary key of the company
578            * @param languageId the ID of the company's default user's language
579            * @param timeZoneId the ID of the company's default user's time zone
580            * @throws PortalException if the company's default user could not be found
581            * @throws SystemException if a system exception occurred
582            */
583            public void updateDisplay(long companyId, java.lang.String languageId,
584                    java.lang.String timeZoneId)
585                    throws com.liferay.portal.kernel.exception.PortalException,
586                            com.liferay.portal.kernel.exception.SystemException;
587    
588            /**
589            * Updates the company's logo.
590            *
591            * @param companyId the primary key of the company
592            * @param bytes the bytes of the company's logo image
593            * @throws PortalException if the company's logo ID could not be found or
594            if the logo's image was corrupted
595            * @throws SystemException if a system exception occurred
596            */
597            public void updateLogo(long companyId, byte[] bytes)
598                    throws com.liferay.portal.kernel.exception.PortalException,
599                            com.liferay.portal.kernel.exception.SystemException;
600    
601            /**
602            * Updates the company's logo.
603            *
604            * @param companyId the primary key of the company
605            * @param file the file of the company's logo image
606            * @throws PortalException the company's logo ID could not be found or if
607            the logo's image was corrupted
608            * @throws SystemException if a system exception occurred
609            */
610            public void updateLogo(long companyId, java.io.File file)
611                    throws com.liferay.portal.kernel.exception.PortalException,
612                            com.liferay.portal.kernel.exception.SystemException;
613    
614            /**
615            * Update the company's logo.
616            *
617            * @param companyId the primary key of the company
618            * @param is the input stream of the company's logo image
619            * @throws PortalException if the company's logo ID could not be found or
620            if the company's logo image was corrupted
621            * @throws SystemException if a system exception occurred
622            */
623            public void updateLogo(long companyId, java.io.InputStream is)
624                    throws com.liferay.portal.kernel.exception.PortalException,
625                            com.liferay.portal.kernel.exception.SystemException;
626    
627            /**
628            * Updates the company's preferences. The company's default properties are
629            * found in portal.properties.
630            *
631            * @param companyId the primary key of the company
632            * @param properties the company's properties. See {@link
633            com.liferay.portal.kernel.util.UnicodeProperties}
634            * @throws PortalException if the properties contained new locales that
635            were not supported
636            * @throws SystemException if a system exception occurred
637            */
638            public void updatePreferences(long companyId,
639                    com.liferay.portal.kernel.util.UnicodeProperties properties)
640                    throws com.liferay.portal.kernel.exception.PortalException,
641                            com.liferay.portal.kernel.exception.SystemException;
642    
643            /**
644            * Updates the company's security properties.
645            *
646            * @param companyId the primary key of the company
647            * @param authType the company's method of authenticating users
648            * @param autoLogin whether to allow users to select the "remember me"
649            feature
650            * @param sendPassword whether to allow users to ask the company to send
651            their password
652            * @param strangers whether to allow strangers to create accounts register
653            themselves in the company
654            * @param strangersWithMx whether to allow strangers to create accounts
655            with email addresses that match the company mail suffix
656            * @param strangersVerify whether to require strangers who create accounts
657            to be verified via email
658            * @param siteLogo whether to allow site administrators to use their own
659            logo instead of the enterprise logo
660            * @throws SystemException if a system exception occurred
661            */
662            public void updateSecurity(long companyId, java.lang.String authType,
663                    boolean autoLogin, boolean sendPassword, boolean strangers,
664                    boolean strangersWithMx, boolean strangersVerify, boolean siteLogo)
665                    throws com.liferay.portal.kernel.exception.SystemException;
666    }