001    /**
002     * Copyright (c) 2000-2011 Liferay, Inc. All rights reserved.
003     *
004     * This library is free software; you can redistribute it and/or modify it under
005     * the terms of the GNU Lesser General Public License as published by the Free
006     * Software Foundation; either version 2.1 of the License, or (at your option)
007     * any later version.
008     *
009     * This library is distributed in the hope that it will be useful, but WITHOUT
010     * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
011     * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
012     * details.
013     */
014    
015    package com.liferay.portal.service;
016    
017    import com.liferay.portal.kernel.exception.PortalException;
018    import com.liferay.portal.kernel.exception.SystemException;
019    import com.liferay.portal.kernel.transaction.Isolation;
020    import com.liferay.portal.kernel.transaction.Propagation;
021    import com.liferay.portal.kernel.transaction.Transactional;
022    
023    /**
024     * The interface for the password policy local service.
025     *
026     * <p>
027     * This is a local service. Methods of this service will not have security checks based on the propagated JAAS credentials because this service can only be accessed from within the same VM.
028     * </p>
029     *
030     * @author Brian Wing Shun Chan
031     * @see PasswordPolicyLocalServiceUtil
032     * @see com.liferay.portal.service.base.PasswordPolicyLocalServiceBaseImpl
033     * @see com.liferay.portal.service.impl.PasswordPolicyLocalServiceImpl
034     * @generated
035     */
036    @Transactional(isolation = Isolation.PORTAL, rollbackFor =  {
037            PortalException.class, SystemException.class})
038    public interface PasswordPolicyLocalService extends PersistedModelLocalService {
039            /*
040             * NOTE FOR DEVELOPERS:
041             *
042             * Never modify or reference this interface directly. Always use {@link PasswordPolicyLocalServiceUtil} to access the password policy local service. Add custom service methods to {@link com.liferay.portal.service.impl.PasswordPolicyLocalServiceImpl} and rerun ServiceBuilder to automatically copy the method declarations to this interface.
043             */
044    
045            /**
046            * Adds the password policy to the database. Also notifies the appropriate model listeners.
047            *
048            * @param passwordPolicy the password policy
049            * @return the password policy that was added
050            * @throws SystemException if a system exception occurred
051            */
052            public com.liferay.portal.model.PasswordPolicy addPasswordPolicy(
053                    com.liferay.portal.model.PasswordPolicy passwordPolicy)
054                    throws com.liferay.portal.kernel.exception.SystemException;
055    
056            /**
057            * Creates a new password policy with the primary key. Does not add the password policy to the database.
058            *
059            * @param passwordPolicyId the primary key for the new password policy
060            * @return the new password policy
061            */
062            public com.liferay.portal.model.PasswordPolicy createPasswordPolicy(
063                    long passwordPolicyId);
064    
065            /**
066            * Deletes the password policy with the primary key from the database. Also notifies the appropriate model listeners.
067            *
068            * @param passwordPolicyId the primary key of the password policy
069            * @throws PortalException if a password policy with the primary key could not be found
070            * @throws SystemException if a system exception occurred
071            */
072            public void deletePasswordPolicy(long passwordPolicyId)
073                    throws com.liferay.portal.kernel.exception.PortalException,
074                            com.liferay.portal.kernel.exception.SystemException;
075    
076            /**
077            * Deletes the password policy from the database. Also notifies the appropriate model listeners.
078            *
079            * @param passwordPolicy the password policy
080            * @throws PortalException
081            * @throws SystemException if a system exception occurred
082            */
083            public void deletePasswordPolicy(
084                    com.liferay.portal.model.PasswordPolicy passwordPolicy)
085                    throws com.liferay.portal.kernel.exception.PortalException,
086                            com.liferay.portal.kernel.exception.SystemException;
087    
088            /**
089            * Performs a dynamic query on the database and returns the matching rows.
090            *
091            * @param dynamicQuery the dynamic query
092            * @return the matching rows
093            * @throws SystemException if a system exception occurred
094            */
095            @SuppressWarnings("rawtypes")
096            public java.util.List dynamicQuery(
097                    com.liferay.portal.kernel.dao.orm.DynamicQuery dynamicQuery)
098                    throws com.liferay.portal.kernel.exception.SystemException;
099    
100            /**
101            * Performs a dynamic query on the database and returns a range of the matching rows.
102            *
103            * <p>
104            * 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.
105            * </p>
106            *
107            * @param dynamicQuery the dynamic query
108            * @param start the lower bound of the range of model instances
109            * @param end the upper bound of the range of model instances (not inclusive)
110            * @return the range of matching rows
111            * @throws SystemException if a system exception occurred
112            */
113            @SuppressWarnings("rawtypes")
114            public java.util.List dynamicQuery(
115                    com.liferay.portal.kernel.dao.orm.DynamicQuery dynamicQuery, int start,
116                    int end) throws com.liferay.portal.kernel.exception.SystemException;
117    
118            /**
119            * Performs a dynamic query on the database and returns an ordered range of the matching rows.
120            *
121            * <p>
122            * 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.
123            * </p>
124            *
125            * @param dynamicQuery the dynamic query
126            * @param start the lower bound of the range of model instances
127            * @param end the upper bound of the range of model instances (not inclusive)
128            * @param orderByComparator the comparator to order the results by (optionally <code>null</code>)
129            * @return the ordered range of matching rows
130            * @throws SystemException if a system exception occurred
131            */
132            @SuppressWarnings("rawtypes")
133            public java.util.List dynamicQuery(
134                    com.liferay.portal.kernel.dao.orm.DynamicQuery dynamicQuery, int start,
135                    int end,
136                    com.liferay.portal.kernel.util.OrderByComparator orderByComparator)
137                    throws com.liferay.portal.kernel.exception.SystemException;
138    
139            /**
140            * Returns the number of rows that match the dynamic query.
141            *
142            * @param dynamicQuery the dynamic query
143            * @return the number of rows that match the dynamic query
144            * @throws SystemException if a system exception occurred
145            */
146            public long dynamicQueryCount(
147                    com.liferay.portal.kernel.dao.orm.DynamicQuery dynamicQuery)
148                    throws com.liferay.portal.kernel.exception.SystemException;
149    
150            /**
151            * Returns the password policy with the primary key.
152            *
153            * @param passwordPolicyId the primary key of the password policy
154            * @return the password policy
155            * @throws PortalException if a password policy with the primary key could not be found
156            * @throws SystemException if a system exception occurred
157            */
158            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
159            public com.liferay.portal.model.PasswordPolicy getPasswordPolicy(
160                    long passwordPolicyId)
161                    throws com.liferay.portal.kernel.exception.PortalException,
162                            com.liferay.portal.kernel.exception.SystemException;
163    
164            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
165            public com.liferay.portal.model.PersistedModel getPersistedModel(
166                    java.io.Serializable primaryKeyObj)
167                    throws com.liferay.portal.kernel.exception.PortalException,
168                            com.liferay.portal.kernel.exception.SystemException;
169    
170            /**
171            * Returns a range of all the password policies.
172            *
173            * <p>
174            * 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.
175            * </p>
176            *
177            * @param start the lower bound of the range of password policies
178            * @param end the upper bound of the range of password policies (not inclusive)
179            * @return the range of password policies
180            * @throws SystemException if a system exception occurred
181            */
182            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
183            public java.util.List<com.liferay.portal.model.PasswordPolicy> getPasswordPolicies(
184                    int start, int end)
185                    throws com.liferay.portal.kernel.exception.SystemException;
186    
187            /**
188            * Returns the number of password policies.
189            *
190            * @return the number of password policies
191            * @throws SystemException if a system exception occurred
192            */
193            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
194            public int getPasswordPoliciesCount()
195                    throws com.liferay.portal.kernel.exception.SystemException;
196    
197            /**
198            * Updates the password policy in the database or adds it if it does not yet exist. Also notifies the appropriate model listeners.
199            *
200            * @param passwordPolicy the password policy
201            * @return the password policy that was updated
202            * @throws SystemException if a system exception occurred
203            */
204            public com.liferay.portal.model.PasswordPolicy updatePasswordPolicy(
205                    com.liferay.portal.model.PasswordPolicy passwordPolicy)
206                    throws com.liferay.portal.kernel.exception.SystemException;
207    
208            /**
209            * Updates the password policy in the database or adds it if it does not yet exist. Also notifies the appropriate model listeners.
210            *
211            * @param passwordPolicy the password policy
212            * @param merge whether to merge the password policy with the current session. See {@link com.liferay.portal.service.persistence.BatchSession#update(com.liferay.portal.kernel.dao.orm.Session, com.liferay.portal.model.BaseModel, boolean)} for an explanation.
213            * @return the password policy that was updated
214            * @throws SystemException if a system exception occurred
215            */
216            public com.liferay.portal.model.PasswordPolicy updatePasswordPolicy(
217                    com.liferay.portal.model.PasswordPolicy passwordPolicy, boolean merge)
218                    throws com.liferay.portal.kernel.exception.SystemException;
219    
220            /**
221            * Returns the Spring bean ID for this bean.
222            *
223            * @return the Spring bean ID for this bean
224            */
225            public java.lang.String getBeanIdentifier();
226    
227            /**
228            * Sets the Spring bean ID for this bean.
229            *
230            * @param beanIdentifier the Spring bean ID for this bean
231            */
232            public void setBeanIdentifier(java.lang.String beanIdentifier);
233    
234            public com.liferay.portal.model.PasswordPolicy addPasswordPolicy(
235                    long userId, boolean defaultPolicy, java.lang.String name,
236                    java.lang.String description, boolean changeable,
237                    boolean changeRequired, long minAge, boolean checkSyntax,
238                    boolean allowDictionaryWords, int minAlphanumeric, int minLength,
239                    int minLowerCase, int minNumbers, int minSymbols, int minUpperCase,
240                    boolean history, int historyCount, boolean expireable, long maxAge,
241                    long warningTime, int graceLimit, boolean lockout, int maxFailure,
242                    long lockoutDuration, long resetFailureCount, long resetTicketMaxAge)
243                    throws com.liferay.portal.kernel.exception.PortalException,
244                            com.liferay.portal.kernel.exception.SystemException;
245    
246            public void checkDefaultPasswordPolicy(long companyId)
247                    throws com.liferay.portal.kernel.exception.PortalException,
248                            com.liferay.portal.kernel.exception.SystemException;
249    
250            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
251            public com.liferay.portal.model.PasswordPolicy getDefaultPasswordPolicy(
252                    long companyId)
253                    throws com.liferay.portal.kernel.exception.PortalException,
254                            com.liferay.portal.kernel.exception.SystemException;
255    
256            /**
257            * @deprecated
258            */
259            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
260            public com.liferay.portal.model.PasswordPolicy getPasswordPolicy(
261                    long companyId, long organizationId, long locationId)
262                    throws com.liferay.portal.kernel.exception.PortalException,
263                            com.liferay.portal.kernel.exception.SystemException;
264    
265            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
266            public com.liferay.portal.model.PasswordPolicy getPasswordPolicy(
267                    long companyId, long[] organizationIds)
268                    throws com.liferay.portal.kernel.exception.PortalException,
269                            com.liferay.portal.kernel.exception.SystemException;
270    
271            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
272            public com.liferay.portal.model.PasswordPolicy getPasswordPolicyByUserId(
273                    long userId)
274                    throws com.liferay.portal.kernel.exception.PortalException,
275                            com.liferay.portal.kernel.exception.SystemException;
276    
277            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
278            public java.util.List<com.liferay.portal.model.PasswordPolicy> search(
279                    long companyId, java.lang.String name, int start, int end,
280                    com.liferay.portal.kernel.util.OrderByComparator obc)
281                    throws com.liferay.portal.kernel.exception.SystemException;
282    
283            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
284            public int searchCount(long companyId, java.lang.String name)
285                    throws com.liferay.portal.kernel.exception.SystemException;
286    
287            public com.liferay.portal.model.PasswordPolicy updatePasswordPolicy(
288                    long passwordPolicyId, java.lang.String name,
289                    java.lang.String description, boolean changeable,
290                    boolean changeRequired, long minAge, boolean checkSyntax,
291                    boolean allowDictionaryWords, int minAlphanumeric, int minLength,
292                    int minLowerCase, int minNumbers, int minSymbols, int minUpperCase,
293                    boolean history, int historyCount, boolean expireable, long maxAge,
294                    long warningTime, int graceLimit, boolean lockout, int maxFailure,
295                    long lockoutDuration, long resetFailureCount, long resetTicketMaxAge)
296                    throws com.liferay.portal.kernel.exception.PortalException,
297                            com.liferay.portal.kernel.exception.SystemException;
298    }