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