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.persistence;
016    
017    import aQute.bnd.annotation.ProviderType;
018    
019    import com.liferay.portal.model.WorkflowInstanceLink;
020    
021    /**
022     * The persistence interface for the workflow instance link service.
023     *
024     * <p>
025     * Caching information and settings can be found in <code>portal.properties</code>
026     * </p>
027     *
028     * @author Brian Wing Shun Chan
029     * @see com.liferay.portal.service.persistence.impl.WorkflowInstanceLinkPersistenceImpl
030     * @see WorkflowInstanceLinkUtil
031     * @generated
032     */
033    @ProviderType
034    public interface WorkflowInstanceLinkPersistence extends BasePersistence<WorkflowInstanceLink> {
035            /*
036             * NOTE FOR DEVELOPERS:
037             *
038             * Never modify or reference this interface directly. Always use {@link WorkflowInstanceLinkUtil} to access the workflow instance link persistence. Modify <code>service.xml</code> and rerun ServiceBuilder to regenerate this interface.
039             */
040    
041            /**
042            * Returns all the workflow instance links where groupId = &#63; and companyId = &#63; and classNameId = &#63; and classPK = &#63;.
043            *
044            * @param groupId the group ID
045            * @param companyId the company ID
046            * @param classNameId the class name ID
047            * @param classPK the class p k
048            * @return the matching workflow instance links
049            */
050            public java.util.List<WorkflowInstanceLink> findByG_C_C_C(long groupId,
051                    long companyId, long classNameId, long classPK);
052    
053            /**
054            * Returns a range of all the workflow instance links where groupId = &#63; and companyId = &#63; and classNameId = &#63; and classPK = &#63;.
055            *
056            * <p>
057            * 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 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 QueryUtil#ALL_POS}), then the query will include the default ORDER BY logic from {@link WorkflowInstanceLinkModelImpl}. 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.
058            * </p>
059            *
060            * @param groupId the group ID
061            * @param companyId the company ID
062            * @param classNameId the class name ID
063            * @param classPK the class p k
064            * @param start the lower bound of the range of workflow instance links
065            * @param end the upper bound of the range of workflow instance links (not inclusive)
066            * @return the range of matching workflow instance links
067            */
068            public java.util.List<WorkflowInstanceLink> findByG_C_C_C(long groupId,
069                    long companyId, long classNameId, long classPK, int start, int end);
070    
071            /**
072            * Returns an ordered range of all the workflow instance links where groupId = &#63; and companyId = &#63; and classNameId = &#63; and classPK = &#63;.
073            *
074            * <p>
075            * 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 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 QueryUtil#ALL_POS}), then the query will include the default ORDER BY logic from {@link WorkflowInstanceLinkModelImpl}. 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.
076            * </p>
077            *
078            * @param groupId the group ID
079            * @param companyId the company ID
080            * @param classNameId the class name ID
081            * @param classPK the class p k
082            * @param start the lower bound of the range of workflow instance links
083            * @param end the upper bound of the range of workflow instance links (not inclusive)
084            * @param orderByComparator the comparator to order the results by (optionally <code>null</code>)
085            * @return the ordered range of matching workflow instance links
086            */
087            public java.util.List<WorkflowInstanceLink> findByG_C_C_C(long groupId,
088                    long companyId, long classNameId, long classPK, int start, int end,
089                    com.liferay.portal.kernel.util.OrderByComparator<WorkflowInstanceLink> orderByComparator);
090    
091            /**
092            * Returns an ordered range of all the workflow instance links where groupId = &#63; and companyId = &#63; and classNameId = &#63; and classPK = &#63;.
093            *
094            * <p>
095            * 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 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 QueryUtil#ALL_POS}), then the query will include the default ORDER BY logic from {@link WorkflowInstanceLinkModelImpl}. 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.
096            * </p>
097            *
098            * @param groupId the group ID
099            * @param companyId the company ID
100            * @param classNameId the class name ID
101            * @param classPK the class p k
102            * @param start the lower bound of the range of workflow instance links
103            * @param end the upper bound of the range of workflow instance links (not inclusive)
104            * @param orderByComparator the comparator to order the results by (optionally <code>null</code>)
105            * @param retrieveFromCache whether to retrieve from the finder cache
106            * @return the ordered range of matching workflow instance links
107            */
108            public java.util.List<WorkflowInstanceLink> findByG_C_C_C(long groupId,
109                    long companyId, long classNameId, long classPK, int start, int end,
110                    com.liferay.portal.kernel.util.OrderByComparator<WorkflowInstanceLink> orderByComparator,
111                    boolean retrieveFromCache);
112    
113            /**
114            * Returns the first workflow instance link in the ordered set where groupId = &#63; and companyId = &#63; and classNameId = &#63; and classPK = &#63;.
115            *
116            * @param groupId the group ID
117            * @param companyId the company ID
118            * @param classNameId the class name ID
119            * @param classPK the class p k
120            * @param orderByComparator the comparator to order the set by (optionally <code>null</code>)
121            * @return the first matching workflow instance link
122            * @throws NoSuchWorkflowInstanceLinkException if a matching workflow instance link could not be found
123            */
124            public WorkflowInstanceLink findByG_C_C_C_First(long groupId,
125                    long companyId, long classNameId, long classPK,
126                    com.liferay.portal.kernel.util.OrderByComparator<WorkflowInstanceLink> orderByComparator)
127                    throws com.liferay.portal.exception.NoSuchWorkflowInstanceLinkException;
128    
129            /**
130            * Returns the first workflow instance link in the ordered set where groupId = &#63; and companyId = &#63; and classNameId = &#63; and classPK = &#63;.
131            *
132            * @param groupId the group ID
133            * @param companyId the company ID
134            * @param classNameId the class name ID
135            * @param classPK the class p k
136            * @param orderByComparator the comparator to order the set by (optionally <code>null</code>)
137            * @return the first matching workflow instance link, or <code>null</code> if a matching workflow instance link could not be found
138            */
139            public WorkflowInstanceLink fetchByG_C_C_C_First(long groupId,
140                    long companyId, long classNameId, long classPK,
141                    com.liferay.portal.kernel.util.OrderByComparator<WorkflowInstanceLink> orderByComparator);
142    
143            /**
144            * Returns the last workflow instance link in the ordered set where groupId = &#63; and companyId = &#63; and classNameId = &#63; and classPK = &#63;.
145            *
146            * @param groupId the group ID
147            * @param companyId the company ID
148            * @param classNameId the class name ID
149            * @param classPK the class p k
150            * @param orderByComparator the comparator to order the set by (optionally <code>null</code>)
151            * @return the last matching workflow instance link
152            * @throws NoSuchWorkflowInstanceLinkException if a matching workflow instance link could not be found
153            */
154            public WorkflowInstanceLink findByG_C_C_C_Last(long groupId,
155                    long companyId, long classNameId, long classPK,
156                    com.liferay.portal.kernel.util.OrderByComparator<WorkflowInstanceLink> orderByComparator)
157                    throws com.liferay.portal.exception.NoSuchWorkflowInstanceLinkException;
158    
159            /**
160            * Returns the last workflow instance link in the ordered set where groupId = &#63; and companyId = &#63; and classNameId = &#63; and classPK = &#63;.
161            *
162            * @param groupId the group ID
163            * @param companyId the company ID
164            * @param classNameId the class name ID
165            * @param classPK the class p k
166            * @param orderByComparator the comparator to order the set by (optionally <code>null</code>)
167            * @return the last matching workflow instance link, or <code>null</code> if a matching workflow instance link could not be found
168            */
169            public WorkflowInstanceLink fetchByG_C_C_C_Last(long groupId,
170                    long companyId, long classNameId, long classPK,
171                    com.liferay.portal.kernel.util.OrderByComparator<WorkflowInstanceLink> orderByComparator);
172    
173            /**
174            * Returns the workflow instance links before and after the current workflow instance link in the ordered set where groupId = &#63; and companyId = &#63; and classNameId = &#63; and classPK = &#63;.
175            *
176            * @param workflowInstanceLinkId the primary key of the current workflow instance link
177            * @param groupId the group ID
178            * @param companyId the company ID
179            * @param classNameId the class name ID
180            * @param classPK the class p k
181            * @param orderByComparator the comparator to order the set by (optionally <code>null</code>)
182            * @return the previous, current, and next workflow instance link
183            * @throws NoSuchWorkflowInstanceLinkException if a workflow instance link with the primary key could not be found
184            */
185            public WorkflowInstanceLink[] findByG_C_C_C_PrevAndNext(
186                    long workflowInstanceLinkId, long groupId, long companyId,
187                    long classNameId, long classPK,
188                    com.liferay.portal.kernel.util.OrderByComparator<WorkflowInstanceLink> orderByComparator)
189                    throws com.liferay.portal.exception.NoSuchWorkflowInstanceLinkException;
190    
191            /**
192            * Removes all the workflow instance links where groupId = &#63; and companyId = &#63; and classNameId = &#63; and classPK = &#63; from the database.
193            *
194            * @param groupId the group ID
195            * @param companyId the company ID
196            * @param classNameId the class name ID
197            * @param classPK the class p k
198            */
199            public void removeByG_C_C_C(long groupId, long companyId, long classNameId,
200                    long classPK);
201    
202            /**
203            * Returns the number of workflow instance links where groupId = &#63; and companyId = &#63; and classNameId = &#63; and classPK = &#63;.
204            *
205            * @param groupId the group ID
206            * @param companyId the company ID
207            * @param classNameId the class name ID
208            * @param classPK the class p k
209            * @return the number of matching workflow instance links
210            */
211            public int countByG_C_C_C(long groupId, long companyId, long classNameId,
212                    long classPK);
213    
214            /**
215            * Caches the workflow instance link in the entity cache if it is enabled.
216            *
217            * @param workflowInstanceLink the workflow instance link
218            */
219            public void cacheResult(WorkflowInstanceLink workflowInstanceLink);
220    
221            /**
222            * Caches the workflow instance links in the entity cache if it is enabled.
223            *
224            * @param workflowInstanceLinks the workflow instance links
225            */
226            public void cacheResult(
227                    java.util.List<WorkflowInstanceLink> workflowInstanceLinks);
228    
229            /**
230            * Creates a new workflow instance link with the primary key. Does not add the workflow instance link to the database.
231            *
232            * @param workflowInstanceLinkId the primary key for the new workflow instance link
233            * @return the new workflow instance link
234            */
235            public WorkflowInstanceLink create(long workflowInstanceLinkId);
236    
237            /**
238            * Removes the workflow instance link with the primary key from the database. Also notifies the appropriate model listeners.
239            *
240            * @param workflowInstanceLinkId the primary key of the workflow instance link
241            * @return the workflow instance link that was removed
242            * @throws NoSuchWorkflowInstanceLinkException if a workflow instance link with the primary key could not be found
243            */
244            public WorkflowInstanceLink remove(long workflowInstanceLinkId)
245                    throws com.liferay.portal.exception.NoSuchWorkflowInstanceLinkException;
246    
247            public WorkflowInstanceLink updateImpl(
248                    WorkflowInstanceLink workflowInstanceLink);
249    
250            /**
251            * Returns the workflow instance link with the primary key or throws a {@link NoSuchWorkflowInstanceLinkException} if it could not be found.
252            *
253            * @param workflowInstanceLinkId the primary key of the workflow instance link
254            * @return the workflow instance link
255            * @throws NoSuchWorkflowInstanceLinkException if a workflow instance link with the primary key could not be found
256            */
257            public WorkflowInstanceLink findByPrimaryKey(long workflowInstanceLinkId)
258                    throws com.liferay.portal.exception.NoSuchWorkflowInstanceLinkException;
259    
260            /**
261            * Returns the workflow instance link with the primary key or returns <code>null</code> if it could not be found.
262            *
263            * @param workflowInstanceLinkId the primary key of the workflow instance link
264            * @return the workflow instance link, or <code>null</code> if a workflow instance link with the primary key could not be found
265            */
266            public WorkflowInstanceLink fetchByPrimaryKey(long workflowInstanceLinkId);
267    
268            @Override
269            public java.util.Map<java.io.Serializable, WorkflowInstanceLink> fetchByPrimaryKeys(
270                    java.util.Set<java.io.Serializable> primaryKeys);
271    
272            /**
273            * Returns all the workflow instance links.
274            *
275            * @return the workflow instance links
276            */
277            public java.util.List<WorkflowInstanceLink> findAll();
278    
279            /**
280            * Returns a range of all the workflow instance links.
281            *
282            * <p>
283            * 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 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 QueryUtil#ALL_POS}), then the query will include the default ORDER BY logic from {@link WorkflowInstanceLinkModelImpl}. 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.
284            * </p>
285            *
286            * @param start the lower bound of the range of workflow instance links
287            * @param end the upper bound of the range of workflow instance links (not inclusive)
288            * @return the range of workflow instance links
289            */
290            public java.util.List<WorkflowInstanceLink> findAll(int start, int end);
291    
292            /**
293            * Returns an ordered range of all the workflow instance links.
294            *
295            * <p>
296            * 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 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 QueryUtil#ALL_POS}), then the query will include the default ORDER BY logic from {@link WorkflowInstanceLinkModelImpl}. 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.
297            * </p>
298            *
299            * @param start the lower bound of the range of workflow instance links
300            * @param end the upper bound of the range of workflow instance links (not inclusive)
301            * @param orderByComparator the comparator to order the results by (optionally <code>null</code>)
302            * @return the ordered range of workflow instance links
303            */
304            public java.util.List<WorkflowInstanceLink> findAll(int start, int end,
305                    com.liferay.portal.kernel.util.OrderByComparator<WorkflowInstanceLink> orderByComparator);
306    
307            /**
308            * Returns an ordered range of all the workflow instance links.
309            *
310            * <p>
311            * 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 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 QueryUtil#ALL_POS}), then the query will include the default ORDER BY logic from {@link WorkflowInstanceLinkModelImpl}. 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.
312            * </p>
313            *
314            * @param start the lower bound of the range of workflow instance links
315            * @param end the upper bound of the range of workflow instance links (not inclusive)
316            * @param orderByComparator the comparator to order the results by (optionally <code>null</code>)
317            * @param retrieveFromCache whether to retrieve from the finder cache
318            * @return the ordered range of workflow instance links
319            */
320            public java.util.List<WorkflowInstanceLink> findAll(int start, int end,
321                    com.liferay.portal.kernel.util.OrderByComparator<WorkflowInstanceLink> orderByComparator,
322                    boolean retrieveFromCache);
323    
324            /**
325            * Removes all the workflow instance links from the database.
326            */
327            public void removeAll();
328    
329            /**
330            * Returns the number of workflow instance links.
331            *
332            * @return the number of workflow instance links
333            */
334            public int countAll();
335    }