【问题标题】:CQ5: disable an ObservationListener during package uploadCQ5:在包上传期间禁用 ObservationListener
【发布时间】:2014-05-13 16:38:59
【问题描述】:

我有一个 ObservationListener,当作者从 /content 中的 parsys 添加/删除组件时,它会做一些事情。我遇到的问题是我正在收听的相同事件,只要安装了一个包就会触发(这可能会很昂贵)。我想要一种方法来编辑包管理器工作流以禁用我的服务,安装包,然后在包完成后重新启用服务,或者区分包安装与正在编辑的节点并在我的侦听器中忽略它们。

或者,我很好奇是否有某种我可以观看的导入/安装队列 --- 如果我的事件被触发并且队列已满/仍有要安装的项目,请等到队列完成为空,然后继续我的事件处理。

谢谢

【问题讨论】:

    标签: aem


    【解决方案1】:

    我不认为 Sling 或 CQ 提供事件让您知道什么时候要安装。

    如果您正在收听的是 JCR 事件,您可以使用 Event.getUserID() 来找出谁在更改内容并区分管理员(或用于安装内容包的任何用户)和普通用户。但请注意,如果您稍后切换到基于 Oak 的内容存储库,则会有一些限制,请参阅 http://jackrabbit.apache.org/oak/docs/differences.html

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-09-18
      • 1970-01-01
      • 2015-12-01
      • 2018-01-16
      • 2017-05-23
      • 2021-03-07
      • 2013-06-23
      • 2012-12-19
      相关资源
      最近更新 更多