使用更改上下文资源

大多数非版本化工件实现 CqContextResource 接口。
CqContextResource 类型的某些示例为:
修改上下文资源的过程涉及以下三个步骤:
  1. 开始:客户指定用于修改的操作(如有需要),这会声明进行修改时要遵循的业务规则。 开始修改的代理确定要进行修改的更改上下文。
  2. 修改:对资源作出修改,并根据业务规则对修改进行验证。
  3. 传递:修改完所有资源后,更改上下文中的所有已更改资源将返回到其各自的存储库中。

此修改过程允许用户通过客户机来调整对多个资源的更改,并可随时改变或放弃对其中任何一种资源的更改。

用户开始修改后,对资源所作的更改对于其他用户或客户机将不可见,这种情况将持续直到修改返回到其各自的项目。更改限于已使用的更改上下文,且只能通过从该更改上下文的提供程序中获取的代理进行查看。

如果资源的修改已开始,那么将在与所使用代理相关联的更改上下文中创建资源的可写版本。除非正在创建资源,否则初始资源的属性将被复制到该新版本。通过来自同一更改上下文的代理执行的指向初始资源的后续操作将重定向到由更改上下文高速缓存的版本。只有从特定更改上下文的提供程序直接或间接获取的那些代理才能在传递更改之前查看这些更改。

有关更多信息,请参阅 CqContextResource 接口的 Javadoc 信息。


反馈