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