0

在露天共享中,当一个文件在两个不同文件夹之间共享时,我们如何避免文件重复。例如,假设一个文件说 abc.txt 由两个文件夹共享,比如文件夹 A 和文件夹 B。现在,当我从文件夹 A 中签出一个文件进行编辑时,我如何才能锁定同一个文件,以便永远无法签出文件夹 B 中的文件。

4

1 回答 1

1

如果您说 abc.txt 实际上是同一个对象,但链接到多个文件夹(这在 Alfresco 存储库中是可能的),那么在任一文件夹中检出 abc.txt 都会将其锁定在另一个文件夹中,因为它是同一个对象.

如果您说文件夹 A/abc.txt 和文件夹 B/abc.txt 是两个不同的对象但它们具有相同的名称,那么您有很多工作要做。您基本上会编写一个自定义,它将:

  • 将 Share 中的现成结帐 UI 操作替换为您自己的操作。您的新操作将使用即将签出的文件查询存储库上的自定义服务(请参阅下一步)。然后存储库将响应它是否可以。

  • 存储库上实现上述逻辑的自定义服务必须知道如何找到匹配的文件。匹配文件名可能是个坏主意。一个更好的主意是跟随一个协会。缺点是这将要求您的用户将文件与关联链接在一起。

当然,这会引发各种问题,例如,当有人在您的服务检查并说没有人签出链接文件和 UI 操作决定的时间之间签出链接文件(位于文件夹 B 中)时会发生什么调用位于文件夹 A 中的文件的签出。

于 2013-06-25T23:05:48.977 回答