Example usage for com.liferay.portal.kernel.security.permission.resource DynamicInheritancePermissionLogic DynamicInheritancePermissionLogic

List of usage examples for com.liferay.portal.kernel.security.permission.resource DynamicInheritancePermissionLogic DynamicInheritancePermissionLogic

Introduction

In this page you can find the example usage for com.liferay.portal.kernel.security.permission.resource DynamicInheritancePermissionLogic DynamicInheritancePermissionLogic.

Prototype

public DynamicInheritancePermissionLogic(ModelResourcePermission<P> parentModelResourcePermission,
            UnsafeFunction<C, P, ? extends PortalException> fetchParentUnsafeFunction, boolean checkParentAccess) 

Source Link

Usage

From source file:com.liferay.bookmarks.internal.security.permission.resource.BookmarksEntryModelResourcePermissionRegistrar.java

License:Open Source License

@Activate
public void activate(BundleContext bundleContext) {
    Dictionary<String, Object> properties = new HashMapDictionary<>();

    properties.put("model.class.name", BookmarksEntry.class.getName());

    _serviceRegistration = bundleContext.registerService(ModelResourcePermission.class,
            ModelResourcePermissionFactory.create(BookmarksEntry.class, BookmarksEntry::getEntryId,
                    _bookmarksEntryLocalService::getEntry, _portletResourcePermission,
                    (modelResourcePermission, consumer) -> {
                        consumer.accept(new StagedModelPermissionLogic<>(_stagingPermission,
                                BookmarksPortletKeys.BOOKMARKS, BookmarksEntry::getEntryId));

                        if (PropsValues.PERMISSIONS_VIEW_DYNAMIC_INHERITANCE) {
                            consumer.accept(new DynamicInheritancePermissionLogic<>(
                                    _bookmarksFolderModelResourcePermission, _getFetchParentFunction(), true));
                        }//from   ww  w. j  ava 2s. co  m
                    }),
            properties);
}

From source file:com.liferay.bookmarks.internal.security.permission.resource.BookmarksFolderModelResourcePermissionRegistrar.java

License:Open Source License

@Activate
public void activate(BundleContext bundleContext) {
    Dictionary<String, Object> properties = new HashMapDictionary<>();

    properties.put("model.class.name", BookmarksFolder.class.getName());

    _serviceRegistration = bundleContext.registerService(ModelResourcePermission.class,
            ModelResourcePermissionFactory.create(BookmarksFolder.class, BookmarksFolder::getFolderId,
                    _bookmarksFolderLocalService::getFolder, _portletResourcePermission,
                    (modelResourcePermission, consumer) -> {
                        consumer.accept(new StagedModelPermissionLogic<>(_stagingPermission,
                                BookmarksPortletKeys.BOOKMARKS, BookmarksFolder::getFolderId));

                        if (PropsValues.PERMISSIONS_VIEW_DYNAMIC_INHERITANCE) {
                            consumer.accept(new DynamicInheritancePermissionLogic<>(modelResourcePermission,
                                    _getFetchParentFunction(), true));
                        }//from w  w w .ja  v  a 2s .c  o m
                    }, actionId -> {
                        if (ActionKeys.ADD_FOLDER.equals(actionId)) {
                            return ActionKeys.ADD_SUBFOLDER;
                        }

                        return actionId;
                    }),
            properties);
}