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 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 PortalException;
100    
101            public void deleteProductVersion(
102                    com.liferay.portlet.softwarecatalog.model.SCProductVersion productVersion);
103    
104            public void deleteProductVersion(long productVersionId)
105                    throws 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) throws PortalException;
133    
134            /**
135            * Deletes the s c product version from the database. Also notifies the appropriate model listeners.
136            *
137            * @param scProductVersion the s c product version
138            * @return the s c product version that was removed
139            */
140            @com.liferay.portal.kernel.search.Indexable(type = IndexableType.DELETE)
141            public com.liferay.portlet.softwarecatalog.model.SCProductVersion deleteSCProductVersion(
142                    com.liferay.portlet.softwarecatalog.model.SCProductVersion scProductVersion);
143    
144            public com.liferay.portal.kernel.dao.orm.DynamicQuery dynamicQuery();
145    
146            /**
147            * Performs a dynamic query on the database and returns the matching rows.
148            *
149            * @param dynamicQuery the dynamic query
150            * @return the matching rows
151            */
152            public <T> java.util.List<T> dynamicQuery(
153                    com.liferay.portal.kernel.dao.orm.DynamicQuery dynamicQuery);
154    
155            /**
156            * Performs a dynamic query on the database and returns a range of the matching rows.
157            *
158            * <p>
159            * 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.
160            * </p>
161            *
162            * @param dynamicQuery the dynamic query
163            * @param start the lower bound of the range of model instances
164            * @param end the upper bound of the range of model instances (not inclusive)
165            * @return the range of matching rows
166            */
167            public <T> java.util.List<T> dynamicQuery(
168                    com.liferay.portal.kernel.dao.orm.DynamicQuery dynamicQuery, int start,
169                    int end);
170    
171            /**
172            * Performs a dynamic query on the database and returns an ordered range of the matching rows.
173            *
174            * <p>
175            * 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.
176            * </p>
177            *
178            * @param dynamicQuery the dynamic query
179            * @param start the lower bound of the range of model instances
180            * @param end the upper bound of the range of model instances (not inclusive)
181            * @param orderByComparator the comparator to order the results by (optionally <code>null</code>)
182            * @return the ordered range of matching rows
183            */
184            public <T> java.util.List<T> dynamicQuery(
185                    com.liferay.portal.kernel.dao.orm.DynamicQuery dynamicQuery, int start,
186                    int end,
187                    com.liferay.portal.kernel.util.OrderByComparator<T> orderByComparator);
188    
189            /**
190            * Returns the number of rows matching the dynamic query.
191            *
192            * @param dynamicQuery the dynamic query
193            * @return the number of rows matching the dynamic query
194            */
195            public long dynamicQueryCount(
196                    com.liferay.portal.kernel.dao.orm.DynamicQuery dynamicQuery);
197    
198            /**
199            * Returns the number of rows matching the dynamic query.
200            *
201            * @param dynamicQuery the dynamic query
202            * @param projection the projection to apply to the query
203            * @return the number of rows matching the dynamic query
204            */
205            public long dynamicQueryCount(
206                    com.liferay.portal.kernel.dao.orm.DynamicQuery dynamicQuery,
207                    com.liferay.portal.kernel.dao.orm.Projection projection);
208    
209            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
210            public com.liferay.portlet.softwarecatalog.model.SCProductVersion fetchSCProductVersion(
211                    long productVersionId);
212    
213            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
214            public com.liferay.portal.kernel.dao.orm.ActionableDynamicQuery getActionableDynamicQuery();
215    
216            /**
217            * Returns the Spring bean ID for this bean.
218            *
219            * @return the Spring bean ID for this bean
220            */
221            public java.lang.String getBeanIdentifier();
222    
223            @Override
224            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
225            public com.liferay.portal.model.PersistedModel getPersistedModel(
226                    java.io.Serializable primaryKeyObj) throws PortalException;
227    
228            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
229            public com.liferay.portlet.softwarecatalog.model.SCProductVersion getProductVersion(
230                    long productVersionId) throws PortalException;
231    
232            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
233            public com.liferay.portlet.softwarecatalog.model.SCProductVersion getProductVersionByDirectDownloadURL(
234                    java.lang.String directDownloadURL) throws PortalException;
235    
236            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
237            public java.util.List<com.liferay.portlet.softwarecatalog.model.SCProductVersion> getProductVersions(
238                    long productEntryId, int start, int end);
239    
240            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
241            public int getProductVersionsCount(long productEntryId);
242    
243            /**
244            * Returns the frameworkVersionIds of the s c framework versions associated with the s c product version.
245            *
246            * @param productVersionId the productVersionId of the s c product version
247            * @return long[] the frameworkVersionIds of s c framework versions associated with the s c product version
248            */
249            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
250            public long[] getSCFrameworkVersionPrimaryKeys(long productVersionId);
251    
252            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
253            public java.util.List<com.liferay.portlet.softwarecatalog.model.SCProductVersion> getSCFrameworkVersionSCProductVersions(
254                    long frameworkVersionId);
255    
256            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
257            public java.util.List<com.liferay.portlet.softwarecatalog.model.SCProductVersion> getSCFrameworkVersionSCProductVersions(
258                    long frameworkVersionId, int start, int end);
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                    com.liferay.portal.kernel.util.OrderByComparator<com.liferay.portlet.softwarecatalog.model.SCProductVersion> orderByComparator);
264    
265            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
266            public int getSCFrameworkVersionSCProductVersionsCount(
267                    long frameworkVersionId);
268    
269            /**
270            * Returns the s c product version with the primary key.
271            *
272            * @param productVersionId the primary key of the s c product version
273            * @return the s c product version
274            * @throws PortalException if a s c product version with the primary key could not be found
275            */
276            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
277            public com.liferay.portlet.softwarecatalog.model.SCProductVersion getSCProductVersion(
278                    long productVersionId) throws PortalException;
279    
280            /**
281            * Returns a range of all the s c product versions.
282            *
283            * <p>
284            * 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.
285            * </p>
286            *
287            * @param start the lower bound of the range of s c product versions
288            * @param end the upper bound of the range of s c product versions (not inclusive)
289            * @return the range of s c product versions
290            */
291            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
292            public java.util.List<com.liferay.portlet.softwarecatalog.model.SCProductVersion> getSCProductVersions(
293                    int start, int end);
294    
295            /**
296            * Returns the number of s c product versions.
297            *
298            * @return the number of s c product versions
299            */
300            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
301            public int getSCProductVersionsCount();
302    
303            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
304            public boolean hasSCFrameworkVersionSCProductVersion(
305                    long frameworkVersionId, long productVersionId);
306    
307            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
308            public boolean hasSCFrameworkVersionSCProductVersions(
309                    long frameworkVersionId);
310    
311            /**
312            * Sets the Spring bean ID for this bean.
313            *
314            * @param beanIdentifier the Spring bean ID for this bean
315            */
316            public void setBeanIdentifier(java.lang.String beanIdentifier);
317    
318            public void setSCFrameworkVersionSCProductVersions(
319                    long frameworkVersionId, long[] productVersionIds);
320    
321            public com.liferay.portlet.softwarecatalog.model.SCProductVersion updateProductVersion(
322                    long productVersionId, java.lang.String version,
323                    java.lang.String changeLog, java.lang.String downloadPageURL,
324                    java.lang.String directDownloadURL, boolean testDirectDownloadURL,
325                    boolean repoStoreArtifact, long[] frameworkVersionIds)
326                    throws PortalException;
327    
328            /**
329            * Updates the s c product version in the database or adds it if it does not yet exist. Also notifies the appropriate model listeners.
330            *
331            * @param scProductVersion the s c product version
332            * @return the s c product version that was updated
333            */
334            @com.liferay.portal.kernel.search.Indexable(type = IndexableType.REINDEX)
335            public com.liferay.portlet.softwarecatalog.model.SCProductVersion updateSCProductVersion(
336                    com.liferay.portlet.softwarecatalog.model.SCProductVersion scProductVersion);
337    }