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