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.portlet.softwarecatalog.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    import com.liferay.portal.service.BaseLocalService;
026    import com.liferay.portal.service.PersistedModelLocalService;
027    
028    /**
029     * Provides the local service interface for SCProductVersion. Methods of this
030     * service will not have security checks based on the propagated JAAS
031     * credentials because this service can only be accessed from within the same
032     * VM.
033     *
034     * @author Brian Wing Shun Chan
035     * @see SCProductVersionLocalServiceUtil
036     * @see com.liferay.portlet.softwarecatalog.service.base.SCProductVersionLocalServiceBaseImpl
037     * @see com.liferay.portlet.softwarecatalog.service.impl.SCProductVersionLocalServiceImpl
038     * @generated
039     */
040    @ProviderType
041    @Transactional(isolation = Isolation.PORTAL, rollbackFor =  {
042            PortalException.class, SystemException.class})
043    public interface SCProductVersionLocalService extends BaseLocalService,
044            PersistedModelLocalService {
045            /*
046             * NOTE FOR DEVELOPERS:
047             *
048             * Never modify or reference this interface directly. Always use {@link SCProductVersionLocalServiceUtil} to access the s c product version local service. Add custom service methods to {@link com.liferay.portlet.softwarecatalog.service.impl.SCProductVersionLocalServiceImpl} and rerun ServiceBuilder to automatically copy the method declarations to this interface.
049             */
050            public com.liferay.portlet.softwarecatalog.model.SCProductVersion addProductVersion(
051                    long userId, long productEntryId, java.lang.String version,
052                    java.lang.String changeLog, java.lang.String downloadPageURL,
053                    java.lang.String directDownloadURL, boolean testDirectDownloadURL,
054                    boolean repoStoreArtifact, long[] frameworkVersionIds,
055                    com.liferay.portal.service.ServiceContext serviceContext)
056                    throws com.liferay.portal.kernel.exception.PortalException;
057    
058            public void addSCFrameworkVersionSCProductVersion(long frameworkVersionId,
059                    long productVersionId);
060    
061            public void addSCFrameworkVersionSCProductVersion(long frameworkVersionId,
062                    com.liferay.portlet.softwarecatalog.model.SCProductVersion scProductVersion);
063    
064            public void addSCFrameworkVersionSCProductVersions(
065                    long frameworkVersionId,
066                    java.util.List<com.liferay.portlet.softwarecatalog.model.SCProductVersion> SCProductVersions);
067    
068            public void addSCFrameworkVersionSCProductVersions(
069                    long frameworkVersionId, long[] productVersionIds);
070    
071            /**
072            * Adds the s c product version to the database. Also notifies the appropriate model listeners.
073            *
074            * @param scProductVersion the s c product version
075            * @return the s c product version that was added
076            */
077            @com.liferay.portal.kernel.search.Indexable(type = IndexableType.REINDEX)
078            public com.liferay.portlet.softwarecatalog.model.SCProductVersion addSCProductVersion(
079                    com.liferay.portlet.softwarecatalog.model.SCProductVersion scProductVersion);
080    
081            public void clearSCFrameworkVersionSCProductVersions(
082                    long frameworkVersionId);
083    
084            /**
085            * Creates a new s c product version with the primary key. Does not add the s c product version to the database.
086            *
087            * @param productVersionId the primary key for the new s c product version
088            * @return the new s c product version
089            */
090            public com.liferay.portlet.softwarecatalog.model.SCProductVersion createSCProductVersion(
091                    long productVersionId);
092    
093            /**
094            * @throws PortalException
095            */
096            @Override
097            public com.liferay.portal.model.PersistedModel deletePersistedModel(
098                    com.liferay.portal.model.PersistedModel persistedModel)
099                    throws com.liferay.portal.kernel.exception.PortalException;
100    
101            public void deleteProductVersion(
102                    com.liferay.portlet.softwarecatalog.model.SCProductVersion productVersion);
103    
104            public void deleteProductVersion(long productVersionId)
105                    throws com.liferay.portal.kernel.exception.PortalException;
106    
107            public void deleteProductVersions(long productEntryId);
108    
109            public void deleteSCFrameworkVersionSCProductVersion(
110                    long frameworkVersionId, long productVersionId);
111    
112            public void deleteSCFrameworkVersionSCProductVersion(
113                    long frameworkVersionId,
114                    com.liferay.portlet.softwarecatalog.model.SCProductVersion scProductVersion);
115    
116            public void deleteSCFrameworkVersionSCProductVersions(
117                    long frameworkVersionId,
118                    java.util.List<com.liferay.portlet.softwarecatalog.model.SCProductVersion> SCProductVersions);
119    
120            public void deleteSCFrameworkVersionSCProductVersions(
121                    long frameworkVersionId, long[] productVersionIds);
122    
123            /**
124            * Deletes the s c product version with the primary key from the database. Also notifies the appropriate model listeners.
125            *
126            * @param productVersionId the primary key of the s c product version
127            * @return the s c product version that was removed
128            * @throws PortalException if a s c product version with the primary key could not be found
129            */
130            @com.liferay.portal.kernel.search.Indexable(type = IndexableType.DELETE)
131            public com.liferay.portlet.softwarecatalog.model.SCProductVersion deleteSCProductVersion(
132                    long productVersionId)
133                    throws com.liferay.portal.kernel.exception.PortalException;
134    
135            /**
136            * Deletes the s c product version from the database. Also notifies the appropriate model listeners.
137            *
138            * @param scProductVersion the s c product version
139            * @return the s c product version that was removed
140            */
141            @com.liferay.portal.kernel.search.Indexable(type = IndexableType.DELETE)
142            public com.liferay.portlet.softwarecatalog.model.SCProductVersion deleteSCProductVersion(
143                    com.liferay.portlet.softwarecatalog.model.SCProductVersion scProductVersion);
144    
145            public com.liferay.portal.kernel.dao.orm.DynamicQuery dynamicQuery();
146    
147            /**
148            * Performs a dynamic query on the database and returns the matching rows.
149            *
150            * @param dynamicQuery the dynamic query
151            * @return the matching rows
152            */
153            public <T> java.util.List<T> dynamicQuery(
154                    com.liferay.portal.kernel.dao.orm.DynamicQuery dynamicQuery);
155    
156            /**
157            * Performs a dynamic query on the database and returns a range of the matching rows.
158            *
159            * <p>
160            * 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.portlet.softwarecatalog.model.impl.SCProductVersionModelImpl}. 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.
161            * </p>
162            *
163            * @param dynamicQuery the dynamic query
164            * @param start the lower bound of the range of model instances
165            * @param end the upper bound of the range of model instances (not inclusive)
166            * @return the range of matching rows
167            */
168            public <T> java.util.List<T> dynamicQuery(
169                    com.liferay.portal.kernel.dao.orm.DynamicQuery dynamicQuery, int start,
170                    int end);
171    
172            /**
173            * Performs a dynamic query on the database and returns an ordered range of the matching rows.
174            *
175            * <p>
176            * 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.portlet.softwarecatalog.model.impl.SCProductVersionModelImpl}. 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.
177            * </p>
178            *
179            * @param dynamicQuery the dynamic query
180            * @param start the lower bound of the range of model instances
181            * @param end the upper bound of the range of model instances (not inclusive)
182            * @param orderByComparator the comparator to order the results by (optionally <code>null</code>)
183            * @return the ordered range of matching rows
184            */
185            public <T> java.util.List<T> dynamicQuery(
186                    com.liferay.portal.kernel.dao.orm.DynamicQuery dynamicQuery, int start,
187                    int end,
188                    com.liferay.portal.kernel.util.OrderByComparator<T> orderByComparator);
189    
190            /**
191            * Returns the number of rows matching the dynamic query.
192            *
193            * @param dynamicQuery the dynamic query
194            * @return the number of rows matching the dynamic query
195            */
196            public long dynamicQueryCount(
197                    com.liferay.portal.kernel.dao.orm.DynamicQuery dynamicQuery);
198    
199            /**
200            * Returns the number of rows matching the dynamic query.
201            *
202            * @param dynamicQuery the dynamic query
203            * @param projection the projection to apply to the query
204            * @return the number of rows matching the dynamic query
205            */
206            public long dynamicQueryCount(
207                    com.liferay.portal.kernel.dao.orm.DynamicQuery dynamicQuery,
208                    com.liferay.portal.kernel.dao.orm.Projection projection);
209    
210            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
211            public com.liferay.portlet.softwarecatalog.model.SCProductVersion fetchSCProductVersion(
212                    long productVersionId);
213    
214            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
215            public com.liferay.portal.kernel.dao.orm.ActionableDynamicQuery getActionableDynamicQuery();
216    
217            /**
218            * Returns the Spring bean ID for this bean.
219            *
220            * @return the Spring bean ID for this bean
221            */
222            public java.lang.String getBeanIdentifier();
223    
224            @Override
225            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
226            public com.liferay.portal.model.PersistedModel getPersistedModel(
227                    java.io.Serializable primaryKeyObj)
228                    throws com.liferay.portal.kernel.exception.PortalException;
229    
230            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
231            public com.liferay.portlet.softwarecatalog.model.SCProductVersion getProductVersion(
232                    long productVersionId)
233                    throws com.liferay.portal.kernel.exception.PortalException;
234    
235            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
236            public com.liferay.portlet.softwarecatalog.model.SCProductVersion getProductVersionByDirectDownloadURL(
237                    java.lang.String directDownloadURL)
238                    throws com.liferay.portal.kernel.exception.PortalException;
239    
240            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
241            public java.util.List<com.liferay.portlet.softwarecatalog.model.SCProductVersion> getProductVersions(
242                    long productEntryId, int start, int end);
243    
244            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
245            public int getProductVersionsCount(long productEntryId);
246    
247            /**
248            * Returns the frameworkVersionIds of the s c framework versions associated with the s c product version.
249            *
250            * @param productVersionId the productVersionId of the s c product version
251            * @return long[] the frameworkVersionIds of s c framework versions associated with the s c product version
252            */
253            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
254            public long[] getSCFrameworkVersionPrimaryKeys(long productVersionId);
255    
256            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
257            public java.util.List<com.liferay.portlet.softwarecatalog.model.SCProductVersion> getSCFrameworkVersionSCProductVersions(
258                    long frameworkVersionId);
259    
260            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
261            public java.util.List<com.liferay.portlet.softwarecatalog.model.SCProductVersion> getSCFrameworkVersionSCProductVersions(
262                    long frameworkVersionId, int start, int end);
263    
264            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
265            public java.util.List<com.liferay.portlet.softwarecatalog.model.SCProductVersion> getSCFrameworkVersionSCProductVersions(
266                    long frameworkVersionId, int start, int end,
267                    com.liferay.portal.kernel.util.OrderByComparator<com.liferay.portlet.softwarecatalog.model.SCProductVersion> orderByComparator);
268    
269            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
270            public int getSCFrameworkVersionSCProductVersionsCount(
271                    long frameworkVersionId);
272    
273            /**
274            * Returns the s c product version with the primary key.
275            *
276            * @param productVersionId the primary key of the s c product version
277            * @return the s c product version
278            * @throws PortalException if a s c product version with the primary key could not be found
279            */
280            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
281            public com.liferay.portlet.softwarecatalog.model.SCProductVersion getSCProductVersion(
282                    long productVersionId)
283                    throws com.liferay.portal.kernel.exception.PortalException;
284    
285            /**
286            * Returns a range of all the s c product versions.
287            *
288            * <p>
289            * 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.portlet.softwarecatalog.model.impl.SCProductVersionModelImpl}. 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.
290            * </p>
291            *
292            * @param start the lower bound of the range of s c product versions
293            * @param end the upper bound of the range of s c product versions (not inclusive)
294            * @return the range of s c product versions
295            */
296            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
297            public java.util.List<com.liferay.portlet.softwarecatalog.model.SCProductVersion> getSCProductVersions(
298                    int start, int end);
299    
300            /**
301            * Returns the number of s c product versions.
302            *
303            * @return the number of s c product versions
304            */
305            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
306            public int getSCProductVersionsCount();
307    
308            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
309            public boolean hasSCFrameworkVersionSCProductVersion(
310                    long frameworkVersionId, long productVersionId);
311    
312            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
313            public boolean hasSCFrameworkVersionSCProductVersions(
314                    long frameworkVersionId);
315    
316            /**
317            * Sets the Spring bean ID for this bean.
318            *
319            * @param beanIdentifier the Spring bean ID for this bean
320            */
321            public void setBeanIdentifier(java.lang.String beanIdentifier);
322    
323            public void setSCFrameworkVersionSCProductVersions(
324                    long frameworkVersionId, long[] productVersionIds);
325    
326            public com.liferay.portlet.softwarecatalog.model.SCProductVersion updateProductVersion(
327                    long productVersionId, java.lang.String version,
328                    java.lang.String changeLog, java.lang.String downloadPageURL,
329                    java.lang.String directDownloadURL, boolean testDirectDownloadURL,
330                    boolean repoStoreArtifact, long[] frameworkVersionIds)
331                    throws com.liferay.portal.kernel.exception.PortalException;
332    
333            /**
334            * Updates the s c product version in the database or adds it if it does not yet exist. Also notifies the appropriate model listeners.
335            *
336            * @param scProductVersion the s c product version
337            * @return the s c product version that was updated
338            */
339            @com.liferay.portal.kernel.search.Indexable(type = IndexableType.REINDEX)
340            public com.liferay.portlet.softwarecatalog.model.SCProductVersion updateSCProductVersion(
341                    com.liferay.portlet.softwarecatalog.model.SCProductVersion scProductVersion);
342    }