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