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.exception.PortalException; 020 import com.liferay.portal.kernel.exception.SystemException; 021 import com.liferay.portal.kernel.jsonwebservice.JSONWebService; 022 import com.liferay.portal.kernel.jsonwebservice.JSONWebServiceMode; 023 import com.liferay.portal.kernel.security.access.control.AccessControlled; 024 import com.liferay.portal.kernel.transaction.Isolation; 025 import com.liferay.portal.kernel.transaction.Transactional; 026 027 /** 028 * Provides the remote service interface for Permission. Methods of this 029 * service are expected to have security checks based on the propagated JAAS 030 * credentials because this service can be accessed remotely. 031 * 032 * @author Brian Wing Shun Chan 033 * @see PermissionServiceUtil 034 * @see com.liferay.portal.service.base.PermissionServiceBaseImpl 035 * @see com.liferay.portal.service.impl.PermissionServiceImpl 036 * @generated 037 */ 038 @AccessControlled 039 @JSONWebService 040 @ProviderType 041 @Transactional(isolation = Isolation.PORTAL, rollbackFor = { 042 PortalException.class, SystemException.class}) 043 public interface PermissionService extends BaseService { 044 /* 045 * NOTE FOR DEVELOPERS: 046 * 047 * Never modify or reference this interface directly. Always use {@link PermissionServiceUtil} to access the permission remote service. Add custom service methods to {@link com.liferay.portal.service.impl.PermissionServiceImpl} and rerun ServiceBuilder to automatically copy the method declarations to this interface. 048 */ 049 050 /** 051 * Returns the OSGi service identifier. 052 * 053 * @return the OSGi service identifier 054 */ 055 public java.lang.String getOSGiServiceIdentifier(); 056 057 /** 058 * Checks to see if the group has permission to the service. 059 * 060 * @param groupId the primary key of the group 061 * @param name the service name 062 * @param primKey the primary key of the service 063 */ 064 public void checkPermission(long groupId, java.lang.String name, 065 java.lang.String primKey) throws PortalException; 066 067 /** 068 * Checks to see if the group has permission to the service. 069 * 070 * @param groupId the primary key of the group 071 * @param name the service name 072 * @param primKey the primary key of the service 073 */ 074 @JSONWebService(mode = JSONWebServiceMode.IGNORE) 075 public void checkPermission(long groupId, java.lang.String name, 076 long primKey) throws PortalException; 077 }