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