执行环境
From Apache OpenOffice Wiki
作业在作业执行环境中执行,该环境可以处理执行作业时出现的许多任务和问题。特别是,
- 使用所有必要数据初始化作业
- 使用正确接口启动作业
- 通过获取 UNO 引用保持作业活动
- 作业完成任务前它将一直等待,包括侦听异步作业
- 完成作业后更新作业的配置
- 通知侦听器有关执行的信息
- 防止作业出现办公软件终止,或者在不可能放弃终止时通知作业
为此,作业执行环境将建立用于作业的特殊的包装对象。此包装对象实现了支持生命周期控制的一些机制。只要存在从属的活动对象,此包装就将拒绝 com.sun.star.frame.Desktop 的终止以及包含文档模型的框架的关闭。它可能还会在 com.sun.star.frame.Frame 或 com.sun.star.document.OfficeDocument 注册为 com.sun.star.util.XCloseListener 以代表作业处理通信的关闭。它还侦听异步作业实例,并在作业完成后负责更新配置数据(请参阅 编写 UNO 组件 - 将组件集成到 OpenOffice.org - 作业 - 返回结果)。
OpenOffice.org 中外部组件面临的中心问题是其生命周期的控制。每个外部组件必须处理环境将终止的可能性。在每个作业中都实现生命周期策略并不是有效的,因此作业执行环境必须负责处理此问题。这样一来,作业可以执行,而困难情况则由执行环境处理。
此方法的另一个好处是可以确保以后的兼容性。如果将来机制发生更改,将会检测并防止终止,并且不必调整每个现有的作业实现。
Content on this page is licensed under the Public Documentation License (PDL). |