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