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 BrowserTracker. 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 BrowserTrackerLocalServiceUtil 034 * @see com.liferay.portal.service.base.BrowserTrackerLocalServiceBaseImpl 035 * @see com.liferay.portal.service.impl.BrowserTrackerLocalServiceImpl 036 * @generated 037 */ 038 @ProviderType 039 @Transactional(isolation = Isolation.PORTAL, rollbackFor = { 040 PortalException.class, SystemException.class}) 041 public interface BrowserTrackerLocalService extends BaseLocalService, 042 PersistedModelLocalService { 043 /* 044 * NOTE FOR DEVELOPERS: 045 * 046 * Never modify or reference this interface directly. Always use {@link BrowserTrackerLocalServiceUtil} to access the browser tracker local service. Add custom service methods to {@link com.liferay.portal.service.impl.BrowserTrackerLocalServiceImpl} and rerun ServiceBuilder to automatically copy the method declarations to this interface. 047 */ 048 049 /** 050 * Adds the browser tracker to the database. Also notifies the appropriate model listeners. 051 * 052 * @param browserTracker the browser tracker 053 * @return the browser tracker that was added 054 */ 055 @com.liferay.portal.kernel.search.Indexable(type = IndexableType.REINDEX) 056 public com.liferay.portal.model.BrowserTracker addBrowserTracker( 057 com.liferay.portal.model.BrowserTracker browserTracker); 058 059 /** 060 * Creates a new browser tracker with the primary key. Does not add the browser tracker to the database. 061 * 062 * @param browserTrackerId the primary key for the new browser tracker 063 * @return the new browser tracker 064 */ 065 public com.liferay.portal.model.BrowserTracker createBrowserTracker( 066 long browserTrackerId); 067 068 /** 069 * Deletes the browser tracker from the database. Also notifies the appropriate model listeners. 070 * 071 * @param browserTracker the browser tracker 072 * @return the browser tracker that was removed 073 */ 074 @com.liferay.portal.kernel.search.Indexable(type = IndexableType.DELETE) 075 public com.liferay.portal.model.BrowserTracker deleteBrowserTracker( 076 com.liferay.portal.model.BrowserTracker browserTracker); 077 078 /** 079 * Deletes the browser tracker with the primary key from the database. Also notifies the appropriate model listeners. 080 * 081 * @param browserTrackerId the primary key of the browser tracker 082 * @return the browser tracker that was removed 083 * @throws PortalException if a browser tracker with the primary key could not be found 084 */ 085 @com.liferay.portal.kernel.search.Indexable(type = IndexableType.DELETE) 086 public com.liferay.portal.model.BrowserTracker deleteBrowserTracker( 087 long browserTrackerId) 088 throws com.liferay.portal.kernel.exception.PortalException; 089 090 /** 091 * @throws PortalException 092 */ 093 @Override 094 public com.liferay.portal.model.PersistedModel deletePersistedModel( 095 com.liferay.portal.model.PersistedModel persistedModel) 096 throws com.liferay.portal.kernel.exception.PortalException; 097 098 public void deleteUserBrowserTracker(long userId); 099 100 public com.liferay.portal.kernel.dao.orm.DynamicQuery dynamicQuery(); 101 102 /** 103 * Performs a dynamic query on the database and returns the matching rows. 104 * 105 * @param dynamicQuery the dynamic query 106 * @return the matching rows 107 */ 108 public <T> java.util.List<T> dynamicQuery( 109 com.liferay.portal.kernel.dao.orm.DynamicQuery dynamicQuery); 110 111 /** 112 * Performs a dynamic query on the database and returns a range of the matching rows. 113 * 114 * <p> 115 * 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.BrowserTrackerModelImpl}. 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. 116 * </p> 117 * 118 * @param dynamicQuery the dynamic query 119 * @param start the lower bound of the range of model instances 120 * @param end the upper bound of the range of model instances (not inclusive) 121 * @return the range of matching rows 122 */ 123 public <T> java.util.List<T> dynamicQuery( 124 com.liferay.portal.kernel.dao.orm.DynamicQuery dynamicQuery, int start, 125 int end); 126 127 /** 128 * Performs a dynamic query on the database and returns an ordered range of the matching rows. 129 * 130 * <p> 131 * 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.BrowserTrackerModelImpl}. 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. 132 * </p> 133 * 134 * @param dynamicQuery the dynamic query 135 * @param start the lower bound of the range of model instances 136 * @param end the upper bound of the range of model instances (not inclusive) 137 * @param orderByComparator the comparator to order the results by (optionally <code>null</code>) 138 * @return the ordered range of matching rows 139 */ 140 public <T> java.util.List<T> dynamicQuery( 141 com.liferay.portal.kernel.dao.orm.DynamicQuery dynamicQuery, int start, 142 int end, 143 com.liferay.portal.kernel.util.OrderByComparator<T> orderByComparator); 144 145 /** 146 * Returns the number of rows matching the dynamic query. 147 * 148 * @param dynamicQuery the dynamic query 149 * @return the number of rows matching the dynamic query 150 */ 151 public long dynamicQueryCount( 152 com.liferay.portal.kernel.dao.orm.DynamicQuery dynamicQuery); 153 154 /** 155 * Returns the number of rows matching the dynamic query. 156 * 157 * @param dynamicQuery the dynamic query 158 * @param projection the projection to apply to the query 159 * @return the number of rows matching the dynamic query 160 */ 161 public long dynamicQueryCount( 162 com.liferay.portal.kernel.dao.orm.DynamicQuery dynamicQuery, 163 com.liferay.portal.kernel.dao.orm.Projection projection); 164 165 @Transactional(propagation = Propagation.SUPPORTS, readOnly = true) 166 public com.liferay.portal.model.BrowserTracker fetchBrowserTracker( 167 long browserTrackerId); 168 169 @Transactional(propagation = Propagation.SUPPORTS, readOnly = true) 170 public com.liferay.portal.kernel.dao.orm.ActionableDynamicQuery getActionableDynamicQuery(); 171 172 /** 173 * Returns the Spring bean ID for this bean. 174 * 175 * @return the Spring bean ID for this bean 176 */ 177 public java.lang.String getBeanIdentifier(); 178 179 /** 180 * Returns the browser tracker with the primary key. 181 * 182 * @param browserTrackerId the primary key of the browser tracker 183 * @return the browser tracker 184 * @throws PortalException if a browser tracker with the primary key could not be found 185 */ 186 @Transactional(propagation = Propagation.SUPPORTS, readOnly = true) 187 public com.liferay.portal.model.BrowserTracker getBrowserTracker( 188 long browserTrackerId) 189 throws com.liferay.portal.kernel.exception.PortalException; 190 191 @Transactional(propagation = Propagation.SUPPORTS, readOnly = true) 192 public com.liferay.portal.model.BrowserTracker getBrowserTracker( 193 long userId, long browserKey); 194 195 /** 196 * Returns a range of all the browser trackers. 197 * 198 * <p> 199 * 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.BrowserTrackerModelImpl}. 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. 200 * </p> 201 * 202 * @param start the lower bound of the range of browser trackers 203 * @param end the upper bound of the range of browser trackers (not inclusive) 204 * @return the range of browser trackers 205 */ 206 @Transactional(propagation = Propagation.SUPPORTS, readOnly = true) 207 public java.util.List<com.liferay.portal.model.BrowserTracker> getBrowserTrackers( 208 int start, int end); 209 210 /** 211 * Returns the number of browser trackers. 212 * 213 * @return the number of browser trackers 214 */ 215 @Transactional(propagation = Propagation.SUPPORTS, readOnly = true) 216 public int getBrowserTrackersCount(); 217 218 @Override 219 @Transactional(propagation = Propagation.SUPPORTS, readOnly = true) 220 public com.liferay.portal.model.PersistedModel getPersistedModel( 221 java.io.Serializable primaryKeyObj) 222 throws com.liferay.portal.kernel.exception.PortalException; 223 224 /** 225 * Sets the Spring bean ID for this bean. 226 * 227 * @param beanIdentifier the Spring bean ID for this bean 228 */ 229 public void setBeanIdentifier(java.lang.String beanIdentifier); 230 231 /** 232 * Updates the browser tracker in the database or adds it if it does not yet exist. Also notifies the appropriate model listeners. 233 * 234 * @param browserTracker the browser tracker 235 * @return the browser tracker that was updated 236 */ 237 @com.liferay.portal.kernel.search.Indexable(type = IndexableType.REINDEX) 238 public com.liferay.portal.model.BrowserTracker updateBrowserTracker( 239 com.liferay.portal.model.BrowserTracker browserTracker); 240 241 public com.liferay.portal.model.BrowserTracker updateBrowserTracker( 242 long userId, long browserKey); 243 }