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