/**
* Copyright (c) 2000-present Liferay, Inc. All rights reserved.
*
* This library is free software; you can redistribute it and/or modify it under
* the terms of the GNU Lesser General Public License as published by the Free
* Software Foundation; either version 2.1 of the License, or (at your option)
* any later version.
*
* This library is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
* FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
* details.
*/
package com.liferay.portal.kernel.service;
import aQute.bnd.annotation.ProviderType;
import com.liferay.portal.kernel.bean.PortalBeanLocatorUtil;
import com.liferay.portal.kernel.util.ReferenceRegistry;
/**
* Provides the remote service utility for ResourcePermission. This utility wraps
* {@link com.liferay.portal.service.impl.ResourcePermissionServiceImpl} and is the
* primary access point for service operations in application layer code running
* on a remote server. Methods of this service are expected to have security
* checks based on the propagated JAAS credentials because this service can be
* accessed remotely.
*
* @author Brian Wing Shun Chan
* @see ResourcePermissionService
* @see com.liferay.portal.service.base.ResourcePermissionServiceBaseImpl
* @see com.liferay.portal.service.impl.ResourcePermissionServiceImpl
* @generated
*/
@ProviderType
public class ResourcePermissionServiceUtil {
/*
* NOTE FOR DEVELOPERS:
*
* Never modify this class directly. Add custom service methods to {@link com.liferay.portal.service.impl.ResourcePermissionServiceImpl} and rerun ServiceBuilder to regenerate this class.
*/
/**
* Returns the OSGi service identifier.
*
* @return the OSGi service identifier
*/
public static java.lang.String getOSGiServiceIdentifier() {
return getService().getOSGiServiceIdentifier();
}
/**
* Grants the role permission at the scope to perform the action on
* resources of the type. Existing actions are retained.
*
* <p>
* This method cannot be used to grant individual scope permissions, but is
* only intended for adding permissions at the company, group, and
* group-template scopes. For example, this method could be used to grant a
* company scope permission to edit message board posts.
* </p>
*
* <p>
* If a company scope permission is granted to resources that the role
* already had group scope permissions to, the group scope permissions are
* deleted. Likewise, if a group scope permission is granted to resources
* that the role already had company scope permissions to, the company scope
* permissions are deleted. Be aware that this latter behavior can result in
* an overall reduction in permissions for the role.
* </p>
*
* <p>
* Depending on the scope, the value of <code>primKey</code> will have
* different meanings. For more information, see {@link
* com.liferay.portal.model.impl.ResourcePermissionImpl}.
* </p>
*
* @param groupId the primary key of the group
* @param companyId the primary key of the company
* @param name the resource's name, which can be either a class name or a
portlet ID
* @param scope the scope. This method only supports company, group, and
group-template scope.
* @param primKey the primary key
* @param roleId the primary key of the role
* @param actionId the action ID
*/
public static void addResourcePermission(long groupId, long companyId,
java.lang.String name, int scope, java.lang.String primKey,
long roleId, java.lang.String actionId)
throws com.liferay.portal.kernel.exception.PortalException {
getService()
.addResourcePermission(groupId, companyId, name, scope, primKey,
roleId, actionId);
}
/**
* Revokes permission at the scope from the role to perform the action on
* resources of the type. For example, this method could be used to revoke a
* group scope permission to edit blog posts.
*
* <p>
* Depending on the scope, the value of <code>primKey</code> will have
* different meanings. For more information, see {@link
* com.liferay.portal.model.impl.ResourcePermissionImpl}.
* </p>
*
* @param groupId the primary key of the group
* @param companyId the primary key of the company
* @param name the resource's name, which can be either a class name or a
portlet ID
* @param scope the scope
* @param primKey the primary key
* @param roleId the primary key of the role
* @param actionId the action ID
*/
public static void removeResourcePermission(long groupId, long companyId,
java.lang.String name, int scope, java.lang.String primKey,
long roleId, java.lang.String actionId)
throws com.liferay.portal.kernel.exception.PortalException {
getService()
.removeResourcePermission(groupId, companyId, name, scope, primKey,
roleId, actionId);
}
/**
* Revokes all permissions at the scope from the role to perform the action
* on resources of the type. For example, this method could be used to
* revoke all individual scope permissions to edit blog posts from site
* members.
*
* @param groupId the primary key of the group
* @param companyId the primary key of the company
* @param name the resource's name, which can be either a class name or a
portlet ID
* @param scope the scope
* @param roleId the primary key of the role
* @param actionId the action ID
*/
public static void removeResourcePermissions(long groupId, long companyId,
java.lang.String name, int scope, long roleId, java.lang.String actionId)
throws com.liferay.portal.kernel.exception.PortalException {
getService()
.removeResourcePermissions(groupId, companyId, name, scope, roleId,
actionId);
}
/**
* Updates the role's permissions at the scope, setting the actions that can
* be performed on resources of the type. Existing actions are replaced.
*
* <p>
* This method can be used to set permissions at any scope, but it is
* generally only used at the individual scope. For example, it could be
* used to set the guest permissions on a blog post.
* </p>
*
* <p>
* Depending on the scope, the value of <code>primKey</code> will have
* different meanings. For more information, see {@link
* com.liferay.portal.model.impl.ResourcePermissionImpl}.
* </p>
*
* @param groupId the primary key of the group
* @param companyId the primary key of the company
* @param name the resource's name, which can be either a class name or a
portlet ID
* @param primKey the primary key
* @param roleIdsToActionIds a map of role IDs to action IDs of the actions
*/
public static void setIndividualResourcePermissions(long groupId,
long companyId, java.lang.String name, java.lang.String primKey,
java.util.Map<java.lang.Long, java.lang.String[]> roleIdsToActionIds)
throws com.liferay.portal.kernel.exception.PortalException {
getService()
.setIndividualResourcePermissions(groupId, companyId, name,
primKey, roleIdsToActionIds);
}
/**
* Updates the role's permissions at the scope, setting the actions that can
* be performed on resources of the type. Existing actions are replaced.
*
* <p>
* This method can be used to set permissions at any scope, but it is
* generally only used at the individual scope. For example, it could be
* used to set the guest permissions on a blog post.
* </p>
*
* <p>
* Depending on the scope, the value of <code>primKey</code> will have
* different meanings. For more information, see {@link
* com.liferay.portal.model.impl.ResourcePermissionImpl}.
* </p>
*
* @param groupId the primary key of the group
* @param companyId the primary key of the company
* @param name the resource's name, which can be either a class name or a
portlet ID
* @param primKey the primary key
* @param roleId the primary key of the role
* @param actionIds the action IDs of the actions
*/
public static void setIndividualResourcePermissions(long groupId,
long companyId, java.lang.String name, java.lang.String primKey,
long roleId, java.lang.String[] actionIds)
throws com.liferay.portal.kernel.exception.PortalException {
getService()
.setIndividualResourcePermissions(groupId, companyId, name,
primKey, roleId, actionIds);
}
public static ResourcePermissionService getService() {
if (_service == null) {
_service = (ResourcePermissionService)PortalBeanLocatorUtil.locate(ResourcePermissionService.class.getName());
ReferenceRegistry.registerReference(ResourcePermissionServiceUtil.class,
"_service");
}
return _service;
}
private static ResourcePermissionService _service;
}