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