Alfresco 返回节点的自定义权限列表

Alfresco 返回节点的自定义权限列表,alfresco,alfresco-share,Alfresco,Alfresco Share,在某些情况下,我需要在共享文档库中隐藏删除操作。这些情况使我无法有效地使用property decorator扩展机制。(源关联节点应具有特定状态) 浏览关于如何扩展Alfresco Share文档库的文档有一个描述为“权限列表”(标题3) 我不知道如何正确地使用这个扩展机制。我希望能够使用存储库层中的nodeService查找某些内容,并在某些情况下从返回的权限列表中删除删除权限 [更新] 当然,我的第一个想法是使用@mitpatoliya在其回答中提出的自定义计算器,该计算器基于服务器返回的

在某些情况下,我需要在共享文档库中隐藏删除操作。这些情况使我无法有效地使用property decorator扩展机制。(源关联节点应具有特定状态)

浏览关于如何扩展Alfresco Share文档库的文档有一个描述为“权限列表”(标题3)

我不知道如何正确地使用这个扩展机制。我希望能够使用存储库层中的nodeService查找某些内容,并在某些情况下从返回的权限列表中删除删除权限

[更新]
当然,我的第一个想法是使用@mitpatoliya在其回答中提出的自定义计算器,该计算器基于服务器返回的json计算是否应该存在delete选项。但是,我的要求是,如果某个源关联节点具有特定的属性值,则隐藏该选项。要做到这一点,我必须从evaluator代码执行远程REST调用。如果可以的话,这是我想避免的事情

我不知道这是否是实现这一点的预期方法,但我对JSONConversionComponent.userPermissionsToJSON方法进行了子类化,并使其正常工作

隐藏操作的最佳方法是使用操作计算器

因此,您可以根据需要扩展任何一个操作计算器,然后覆盖share-config-custom.xml中的操作配置,以便在调用特定操作时隐藏该操作

以下是开箱即用的操作计算器列表

如果以上任何一项都不符合您的要求,您也可以创建自己的评估器


@billerby,你说得对,评估人员通常需要执行对存储库的调用,但这就是他们应该如何工作的。如果您有任何评估器,您可以找到此调用是如何实现的。这是一个非常标准的实现,最好开始使用它。至少,这是我的建议。

你是在谈论这个还是许可?不,我不是在谈论那个。我说的是修改返回到节点上documentlibrary的json权限列表的方法。您的问题不清楚,或者您的解决方案不正确。如果,如您所问,您只需要隐藏操作,正确的解决方案就是mitpatoliya所描述的解决方案。如果这样,解决方案是正确的,那么,您将如何处理toobar中可用的删除选项。@MarcoAltieri我更新了我的问题,说明了为什么在这种情况下选择不使用自定义计算器。你能具体说明我的问题中有什么不清楚的地方吗?文档中提到我所做的扩展是实现我目标的一种方法,这个解决方案可能有点奇怪,但它是一种方法。@Krutik该选项也不会出现在工具栏中,因为删除权限已从列表中删除。是的,这是首选方法,然而,我的特殊要求使得这个选项在远程REST调用等方面有点复杂。我的第一个想法是将自定义evalutator与属性装饰器结合使用,但由于只有当源关联节点具有特定属性时才应删除该操作,所以这是不可能的。是的,我知道如何实现它,我仍然认为我的解决方案更适合这个特定的用例:)