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