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.kernel.service;
016    
017    import aQute.bnd.annotation.ProviderType;
018    
019    import com.liferay.portal.kernel.dao.orm.ActionableDynamicQuery;
020    import com.liferay.portal.kernel.dao.orm.DynamicQuery;
021    import com.liferay.portal.kernel.dao.orm.IndexableActionableDynamicQuery;
022    import com.liferay.portal.kernel.dao.orm.Projection;
023    import com.liferay.portal.kernel.exception.PortalException;
024    import com.liferay.portal.kernel.exception.SystemException;
025    import com.liferay.portal.kernel.model.PasswordPolicyRel;
026    import com.liferay.portal.kernel.model.PersistedModel;
027    import com.liferay.portal.kernel.search.Indexable;
028    import com.liferay.portal.kernel.search.IndexableType;
029    import com.liferay.portal.kernel.transaction.Isolation;
030    import com.liferay.portal.kernel.transaction.Propagation;
031    import com.liferay.portal.kernel.transaction.Transactional;
032    import com.liferay.portal.kernel.util.OrderByComparator;
033    
034    import java.io.Serializable;
035    
036    import java.util.List;
037    
038    /**
039     * Provides the local service interface for PasswordPolicyRel. Methods of this
040     * service will not have security checks based on the propagated JAAS
041     * credentials because this service can only be accessed from within the same
042     * VM.
043     *
044     * @author Brian Wing Shun Chan
045     * @see PasswordPolicyRelLocalServiceUtil
046     * @see com.liferay.portal.service.base.PasswordPolicyRelLocalServiceBaseImpl
047     * @see com.liferay.portal.service.impl.PasswordPolicyRelLocalServiceImpl
048     * @generated
049     */
050    @ProviderType
051    @Transactional(isolation = Isolation.PORTAL, rollbackFor =  {
052            PortalException.class, SystemException.class})
053    public interface PasswordPolicyRelLocalService extends BaseLocalService,
054            PersistedModelLocalService {
055            /*
056             * NOTE FOR DEVELOPERS:
057             *
058             * Never modify or reference this interface directly. Always use {@link PasswordPolicyRelLocalServiceUtil} to access the password policy rel local service. Add custom service methods to {@link com.liferay.portal.service.impl.PasswordPolicyRelLocalServiceImpl} and rerun ServiceBuilder to automatically copy the method declarations to this interface.
059             */
060            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
061            public boolean hasPasswordPolicyRel(long passwordPolicyId,
062                    java.lang.String className, long classPK);
063    
064            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
065            public ActionableDynamicQuery getActionableDynamicQuery();
066    
067            public DynamicQuery dynamicQuery();
068    
069            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
070            public IndexableActionableDynamicQuery getIndexableActionableDynamicQuery();
071    
072            /**
073            * Adds the password policy rel to the database. Also notifies the appropriate model listeners.
074            *
075            * @param passwordPolicyRel the password policy rel
076            * @return the password policy rel that was added
077            */
078            @Indexable(type = IndexableType.REINDEX)
079            public PasswordPolicyRel addPasswordPolicyRel(
080                    PasswordPolicyRel passwordPolicyRel);
081    
082            public PasswordPolicyRel addPasswordPolicyRel(long passwordPolicyId,
083                    java.lang.String className, long classPK);
084    
085            /**
086            * Creates a new password policy rel with the primary key. Does not add the password policy rel to the database.
087            *
088            * @param passwordPolicyRelId the primary key for the new password policy rel
089            * @return the new password policy rel
090            */
091            public PasswordPolicyRel createPasswordPolicyRel(long passwordPolicyRelId);
092    
093            /**
094            * Deletes the password policy rel from the database. Also notifies the appropriate model listeners.
095            *
096            * @param passwordPolicyRel the password policy rel
097            * @return the password policy rel that was removed
098            */
099            @Indexable(type = IndexableType.DELETE)
100            public PasswordPolicyRel deletePasswordPolicyRel(
101                    PasswordPolicyRel passwordPolicyRel);
102    
103            /**
104            * Deletes the password policy rel with the primary key from the database. Also notifies the appropriate model listeners.
105            *
106            * @param passwordPolicyRelId the primary key of the password policy rel
107            * @return the password policy rel that was removed
108            * @throws PortalException if a password policy rel with the primary key could not be found
109            */
110            @Indexable(type = IndexableType.DELETE)
111            public PasswordPolicyRel deletePasswordPolicyRel(long passwordPolicyRelId)
112                    throws PortalException;
113    
114            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
115            public PasswordPolicyRel fetchPasswordPolicyRel(
116                    java.lang.String className, long classPK);
117    
118            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
119            public PasswordPolicyRel fetchPasswordPolicyRel(long passwordPolicyRelId);
120    
121            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
122            public PasswordPolicyRel getPasswordPolicyRel(java.lang.String className,
123                    long classPK) throws PortalException;
124    
125            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
126            public PasswordPolicyRel getPasswordPolicyRel(long passwordPolicyId,
127                    java.lang.String className, long classPK) throws PortalException;
128    
129            /**
130            * Returns the password policy rel with the primary key.
131            *
132            * @param passwordPolicyRelId the primary key of the password policy rel
133            * @return the password policy rel
134            * @throws PortalException if a password policy rel with the primary key could not be found
135            */
136            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
137            public PasswordPolicyRel getPasswordPolicyRel(long passwordPolicyRelId)
138                    throws PortalException;
139    
140            /**
141            * Updates the password policy rel in the database or adds it if it does not yet exist. Also notifies the appropriate model listeners.
142            *
143            * @param passwordPolicyRel the password policy rel
144            * @return the password policy rel that was updated
145            */
146            @Indexable(type = IndexableType.REINDEX)
147            public PasswordPolicyRel updatePasswordPolicyRel(
148                    PasswordPolicyRel passwordPolicyRel);
149    
150            /**
151            * @throws PortalException
152            */
153            @Override
154            public PersistedModel deletePersistedModel(PersistedModel persistedModel)
155                    throws PortalException;
156    
157            @Override
158            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
159            public PersistedModel getPersistedModel(Serializable primaryKeyObj)
160                    throws PortalException;
161    
162            /**
163            * Returns the number of password policy rels.
164            *
165            * @return the number of password policy rels
166            */
167            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
168            public int getPasswordPolicyRelsCount();
169    
170            /**
171            * Returns the OSGi service identifier.
172            *
173            * @return the OSGi service identifier
174            */
175            public java.lang.String getOSGiServiceIdentifier();
176    
177            /**
178            * Performs a dynamic query on the database and returns the matching rows.
179            *
180            * @param dynamicQuery the dynamic query
181            * @return the matching rows
182            */
183            public <T> List<T> dynamicQuery(DynamicQuery dynamicQuery);
184    
185            /**
186            * Performs a dynamic query on the database and returns a range of the matching rows.
187            *
188            * <p>
189            * 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.PasswordPolicyRelModelImpl}. 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.
190            * </p>
191            *
192            * @param dynamicQuery the dynamic query
193            * @param start the lower bound of the range of model instances
194            * @param end the upper bound of the range of model instances (not inclusive)
195            * @return the range of matching rows
196            */
197            public <T> List<T> dynamicQuery(DynamicQuery dynamicQuery, int start,
198                    int end);
199    
200            /**
201            * Performs a dynamic query on the database and returns an ordered range of the matching rows.
202            *
203            * <p>
204            * 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.PasswordPolicyRelModelImpl}. 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.
205            * </p>
206            *
207            * @param dynamicQuery the dynamic query
208            * @param start the lower bound of the range of model instances
209            * @param end the upper bound of the range of model instances (not inclusive)
210            * @param orderByComparator the comparator to order the results by (optionally <code>null</code>)
211            * @return the ordered range of matching rows
212            */
213            public <T> List<T> dynamicQuery(DynamicQuery dynamicQuery, int start,
214                    int end, OrderByComparator<T> orderByComparator);
215    
216            /**
217            * Returns a range of all the password policy rels.
218            *
219            * <p>
220            * 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.PasswordPolicyRelModelImpl}. 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.
221            * </p>
222            *
223            * @param start the lower bound of the range of password policy rels
224            * @param end the upper bound of the range of password policy rels (not inclusive)
225            * @return the range of password policy rels
226            */
227            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
228            public List<PasswordPolicyRel> getPasswordPolicyRels(int start, int end);
229    
230            /**
231            * Returns the number of rows matching the dynamic query.
232            *
233            * @param dynamicQuery the dynamic query
234            * @return the number of rows matching the dynamic query
235            */
236            public long dynamicQueryCount(DynamicQuery dynamicQuery);
237    
238            /**
239            * Returns the number of rows matching the dynamic query.
240            *
241            * @param dynamicQuery the dynamic query
242            * @param projection the projection to apply to the query
243            * @return the number of rows matching the dynamic query
244            */
245            public long dynamicQueryCount(DynamicQuery dynamicQuery,
246                    Projection projection);
247    
248            public void addPasswordPolicyRels(long passwordPolicyId,
249                    java.lang.String className, long[] classPKs);
250    
251            public void deletePasswordPolicyRel(java.lang.String className, long classPK);
252    
253            public void deletePasswordPolicyRel(long passwordPolicyId,
254                    java.lang.String className, long classPK);
255    
256            public void deletePasswordPolicyRels(long passwordPolicyId);
257    
258            public void deletePasswordPolicyRels(long passwordPolicyId,
259                    java.lang.String className, long[] classPKs);
260    }