CN103577448A - 扩展模块交互的方法及系统 - Google Patents
扩展模块交互的方法及系统 Download PDFInfo
- Publication number
- CN103577448A CN103577448A CN201210269212.0A CN201210269212A CN103577448A CN 103577448 A CN103577448 A CN 103577448A CN 201210269212 A CN201210269212 A CN 201210269212A CN 103577448 A CN103577448 A CN 103577448A
- Authority
- CN
- China
- Prior art keywords
- expansion module
- application program
- interface
- window
- library system
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
本发明公开了一种扩展模块交互的方法及系统,包括所述应用程序枚举文档当前页面中的扩展模块数据,并根据扩展模块数据中指定的扩展模块ID,查询文档库系统中已注册的扩展模块接口,找到与该扩展模块ID相对应的扩展模块接口;应用程序或文档库系统以扩展模块数据为参数,调用扩展模块接口中负责创建扩展模块实例的扩展模块实例创建接口,以创建扩展模块实例。通过本发明提供的方案,在涉及文档库系统的应用场景中,实现了应用程序与扩展模块间的交互。通过本发明应用程序与扩展模块间的交互,实现了应用程序的用户更有效、更细粒度地操控扩展模块,以及更方便地使用控制模块提供的功能,最终实现了更有效地通过扩展模块来扩展文档库系统的功能。
Description
技术领域
本发明涉及电子文档处理技术,尤指一种涉及文档库系统的应用场景中实现应用程序与扩展模块交互的方法及系统。
背景技术
文档库是一种复杂的软件系统,提供大量电子文档的组织、管理、安全、存储和展示等功能。文档库系统是一种平台软件,提供非结构化数据的存储、读写、解析、呈现、组织、管理、安全和检索等功能,并通过标准接口供应用软件调用。该标准接口称为文档库标准接口,该接口的标准称为文档库标准(例如UOML标准),文档库系统所存储的数据称为文档库。文档库系统所处理的非结构化数据可能包含一页或多页组成的平面媒体信息,也可能包含音频、视频等流媒体信息,或者包含其它信息。应用软件调用文档库系统的方式为向文档库系统发送预定义的指令,发送指令的方式可以是发送命令串,也可以是函数调用或其它方式。其中,所述预定义指令是与非结构化数据的存储形式(尤其是存储格式)无关的,描述了对一种抽象模型的实例的操作,该抽象模型是对某一类型的非结构化数据的某个通用特征(例如呈现效果)进行抽象得到的,模型实例通常是树状结构。优选地,所述预定义指令可以基于动作和对象来定义。文档库系统通常还具备完备性,例如当所述通用特征是呈现效果的时候,可以生成任意呈现效果的非结构化数据(忽略因为压缩、数据精度等原因而造成的细微差别)。
扩展模块可以动态的被应用程序加载并实现独立的功能。关于扩展模块的相关技术在本申请人的在先申请中已有详细介绍。
在现有文档库系统中,没有实现应用程序与扩展模块之间的交互。
发明内容
有鉴于此,本发明的主要目的在于提供一种在涉及文档库系统的应用场景中实现应用程序与文档库系统的扩展模块交互的方法,能够通过应用程序与扩展模块间的交互,实现应用程序的用户更有效、更细粒度地操控扩展模块,以及更方便地使用控制模块提供的功能,最终更有效地通过扩展模块来扩展文档库系统的功能。
本发明的另一目的在于提供一种在涉及文档库系统的应用场景中实现应用程序与扩展模块交互的系统,能够通过应用程序与扩展模块间的交互,实现应用程序的用户更有效、更细粒度地操控扩展模块,以及更方便地使用控制模块提供的功能,最终更有效地通过扩展模块来扩展文档库系统的功能。
为达到上述目的,本发明的技术方案具体是这样实现的:
一种实现应用程序与文档库系统的扩展模块交互的方法,该方法包括:
所述应用程序枚举文档当前页面中的扩展模块数据,并根据扩展模块数据中指定的扩展模块ID,查询文档库系统中已注册的扩展模块接口,找到与该扩展模块ID相对应的扩展模块接口;
应用程序或文档库系统以扩展模块数据为参数,调用扩展模块接口中负责创建扩展模块实例的扩展模块实例创建接口,以创建扩展模块实例。
该方法之后还包括:所述应用程序或文档库系统使用文档库系统中的扩展模块实例;
当使用完成后,该方法还包括:销毁扩展模块实例。
所述应用程序使用创建好的扩展模块包括:界面交互,和/或消息交互。
所述应用程序使用创建好的扩展模块的方法为:通过所述应用程序与创建的扩展模块窗口间的交互来实现。
在所述应用程序与扩展模块窗口交互之前还包括:所述应用程序调用扩展模块的显示窗口接口创建扩展模块窗口;窗口交互之后还包括:在使用完成后所述应用程序调用扩展模块的关闭窗口接口,关闭已创建的扩展模块窗口。
在创建扩展模块窗口之后,该方法还包括:改变扩展模块窗口的基本特征信息。
所述改变扩展模块窗口的基本特征信息的方法为:
所述应用程序调用扩展模块的消息接口,将改变后的窗口的基本特征信息发送给扩展模块;扩展模块根据接收到的基本特征信息改变自身窗口。
所述基本特征信息包括位置和/或大小信息。
在创建扩展模块窗口之后,关闭扩展模块窗口之前,该方法还包括:
所述扩展模块调用来自应用程序的逆向消息接口向应用程序发消息。
所述向应用程序发送的消息为:改变应用程序界面的界面变更请求;
所述应用程序按照接收到的界面变更请求中的信息改变应用程序界面;
当应用程序界面使用完后,扩展模块使用应用程序的逆向消息接口,向应用程序发送界面变更撤销请求,应用程序撤销应用程序界面的变更。
所述应用程序使用创建好的扩展模块的方法为:
所述应用程序调用消息接口,将相应信息发送给扩展模块,扩展模块按照接收到的信息进行操作;
或者,所述应用程序调用扩展模块的消息接口,将逆向消息接口发送给扩展模块。
所述销毁扩展模块实例的方法为:所述应用程序调用当前使用的扩展模块实例对应的扩展模块实例销毁接口销毁所述扩展模块实例。
所述扩展模块为流媒体扩展模块,该方法还包括:所述应用程序向流媒体扩展模块发送用于控制流媒体播放的信息。
所述扩展模块为支持全局设置的特定扩展模块;该方法还包括:
所述应用程序设置与特定扩展模块交互的设置界面;用户通过设置界面,管理特定扩展模块的全局设置;
在所述管理为用户查看全局设置时,应用程序调用扩展模块的获取全局设置的接口,得到相关扩展模块的全局设置信息,并显示在设置界面中;
在所述管理为用户修改全局设置时,所述应用程序将调用扩展模块修改全局设置的接口,将修改信息传递给特定扩展模块,特定扩展模块根据接收到的修改信息进行相应改变。
一种实现应用程序与文档库系统的扩展模块交互的系统,该系统至少包括应用程序和文档库系统,其中,
应用程序,用于枚举文档当前页面中的扩展模块数据,并向文档库系统发送包含有扩展模块ID的预定义指令;
应用程序或文档库系统以扩展模块数据为参数,调用获得的扩展模块接口中负责创建扩展模块实例的扩展模块实例创建接口,以创建扩展模块实例;
文档库系统,用于根据接收到的预定义指令中携带的扩展模块ID,查询自身已注册的扩展模块接口,找到与该扩展模块ID相对应的扩展模块接口并返回给应用程序。
由上述技术方案可见,本发明包括应用程序创建扩展模块实例;应用程序使用创建好的扩展模块,并在使用完成后销毁扩展模块实例。通过本发明提供的方法,在涉及文档库系统的应用场景中,实现了应用程序与扩展模块间的交互。通过本发明应用程序与扩展模块间的交互,实现了应用程序的用户更有效、更细粒度地操控扩展模块,以及更方便地使用控制模块提供的功能,最终实现了更有效地通过扩展模块来扩展文档库系统的功能。
附图说明
图1是本发明应用程序与扩展模块交互的流程图;
图2是本发明应用程序与扩展模块交互的实施例一的流程图;
具体实施方式
为使本发明的目的、技术方案及优点更加清楚明白,以下参照附图并举较佳实施例,对本发明进一步详细说明。
图1是本发明应用程序与扩展模块交互的流程图,包括以下步骤:
步骤100:应用程序创建扩展模块实例。
本步骤具体实现包括:
首先,应用程序枚举文档当前页面中的扩展模块数据;
这里,扩展模块数据包括扩展模块ID和扩展模块实际数据两部分。
其次,应用程序根据上述扩展模块数据中的扩展模块ID,查询文档库系统中已注册的扩展模块接口,找到与该扩展模块ID相对应的扩展模块接口;
在文档库系统中,存储有扩展模块ID与扩展模块接口的对应关系。
这里,扩展模块接口的具体实现可以采用如操作系统API或其它方式来实现,具体实现属于本领域技术人员惯用技术手段,本发明并不强调接口的具体实现方法。
最后,应用程序以扩展模块数据为参数,调用扩展模块接口中负责创建扩展模块实例的扩展模块实例创建接口,以创建扩展模块实例。需要说明的是,扩展模块的创建也可以由文档库系统来实现。
以扩展模块接口采用函数方式为例,将扩展模块数据作为函数参数,将扩展模块数据传递给扩展模块接口。
步骤101:应用程序使用创建好的扩展模块实例。
使用可以包括界面交互,和/或消息交互等。需要说明的是,文档库系统也可以使用创建好的扩展模块。
对于界面交互,会包括创建扩展模块窗口、销毁扩展模块窗口交互,还有可能包括改变扩展模块窗口大小或位置、改变应用程序界面等交互;对于消息交互,会包括使用消息、传递逆向消息接口的交互等。
步骤102:应用程序销毁扩展模块实例。
本步骤中,应用程序通过调用当前正在使用的扩展模块实例对应的扩展模块实例销毁接口来销毁不需要的扩展模块实例。需要说明的是,文档库系统也可以销毁创建好的扩展模块。
对应图1所示的方法,本发明还提供一种实现应用程序与扩展模块交互的系统,至少包括应用程序和文档库系统(即平台软件),其中,
应用程序,用于枚举文档当前页面中的扩展模块数据,并向文档库系统发送包含有扩展模块ID的预定义指令;应用程序以扩展模块数据为参数,调用获得的扩展模块接口中负责创建扩展模块实例的扩展模块实例创建接口,以创建扩展模块实例;
文档库系统,用于根据接收到的预定义指令中携带的扩展模块ID,查询自身已注册的扩展模块接口,找到与该扩展模块ID相对应的扩展模块接口并返回给应用程序。
所述预定义指令是与非结构化数据的存储形式无关的。非结构化数据包括流媒体信息,或包含书面文档信息等。预定义指令可以是描述对预定义模型的实例的操作,发送预定义指令的方式可以是发送命令串,也可以是函数调用等等,而预定义模型是对某一类型的非结构化数据,比如书面文档、音频、视频等的某个通用特征(如呈现效果)进行抽象得到的。
图2是本发明应用程序与扩展模块交互的实施例一的流程图,实施例一提供了应用程序通过界面交互来实现对创建好的扩展模块实例的使用,如图2所示包括以下步骤:
步骤200:应用程序创建扩展模块窗口。
应用程序通过调用扩展模块的显示窗口接口,创建并显示扩展模块的窗口。其中,显示窗口接口可以通过操作系统提供的API函数实现,也可以通过自身定义的函数来实现,具体实现属于本领域技术人员惯用技术手段,这里不再赘述,本发明需要强调的是应用程序与扩展模块之间实现了如创建扩展模块窗口这样的交互。
步骤201:应用程序改变扩展模块窗口的基本特征信息。
在需要改变扩展模块窗口的基本特征信息时,应用程序可通过调用扩展模块的消息接口,将新的窗口即改变后的窗口的基本特征信息如位置和/或大小信息发送给扩展模块;扩展模块根据接收到的位置和/或大小信息改变自身窗口。这里基本特征信息不限于位置、或大小。
其中,消息接口可以通过操作系统提供的相应API,也可以通过自身定义的函数来实现,具体实现属于本领域技术人员惯用技术手段,这里不再赘述,本发明需要强调的是应用程序与扩展模块之间实现了应用程序改变扩展模块窗口的特征信息如位置和/大小的交互。
步骤202:扩展模块改变应用程序界面。
在需要改变应用程序界面时,扩展模块可通过调用应用程序的逆向消息接口,向应用程序发送改变应用程序界面即用户界面的界面变更请求,比如:扩展模块可以请求应用程序创建与扩展模块自身相关联的菜单、菜单项、工具条、工具条按钮等。
应用程序接收到扩展模块的界面变更请求后,按照界面变更请求的信息改变用户界面,比如,变更菜单项。工具条等。
其中,逆向消息接口是通过应用程序与扩展模块间的消息交互,由应用程序传送给扩展模块的。消息交互流程将在下文做详细介绍。
步骤203:扩展模块销毁已改变的应用程序界面。
扩展模块使用应用程序的逆向消息接口,向应用程序发送界面变更撤销请求,以撤销步骤202中应用程序界面的变更;应用程序接收到扩展模块的界面变更撤销请求后,撤销步骤202中应用程序界面的变更。当然,在界面变更撤销请求中,扩展模块也可以指定撤销部分变更。
步骤204:应用程序销毁扩展模块窗口。
应用程序通过调用扩展模块的关闭窗口接口,关闭步骤200中创建并显示的扩展模块窗口。其中,关闭窗口接口可以通过操作系统提供的API函数,也可以通过自身定义的函数来实现,具体实现属于本领域技术人员惯用技术手段,这里不再赘述,本发明需要强调的是应用程序与扩展模块之间实现了如关闭扩展模块窗口这样的交互。
除了图2所示的界面交互之外,应用程序与扩展模块之间还可以进行消息交互,包括仅使用消息的消息交互,以及逆向消息接口的交互。
其中使用消息的交互过程简单,即应用程序调用相应消息接口,并通过消息接口提供的消息界面将相应信息发送给扩展模块,扩展模块就按照接收到的信息进行相关操作即可。比如当应用程序需要改变扩展模块窗口的大小时,会调用消息接口来改变扩展模块窗口的尺寸,用户按照消息接口提供的界面给出相应尺寸信息并提交给扩展模块,扩展模块根据接收到的尺寸信息,改变自身窗口的大小。
逆向消息接口的交互过程是:应用程序通过扩展模块的消息接口,将逆向消息接口发送给扩展模块。其中,消息接口由扩展模块提供,应用程序使用;而逆向消息接口由应用程序提供,扩展模块使用。
以上描述了本发明应用程序与扩展模块交互的方法,对于一些特殊的扩展模块,如流媒体扩展模块,除了可以包括上述交互外,应用程序还会向流媒体扩展模块发送用于控制流媒体播放的信息,比如:播放时间总长、重置、定位、获得定位、播放/暂停等。
其中,对于播放时间总长,当应用程序将播放时间总长消息发送给扩展模块后,扩展模块将当前流媒体的播放时间总长信息返回给应用程序,以便应用程序显示给用户;
当应用程序将重置消息发送给扩展模块后,扩展模块将当前流媒体的播放位置重置至时间起始点位置;
当应用程序将定位消息发送给扩展模块后,扩展模块将当前流媒体的播放位置重新设置在定位信息中给定的时间点上;
当应用程序向扩展模块发送获得定位消息后,扩展模块将当前流媒体的播放位置信息返回给应用程序,以便应用程序显示给用户;
当应用程序将播放/暂停消息发送给扩展模块后,扩展模块根据接收到的信息切换当前流媒体的播放状态,若当前为播放,则切换为暂停,若当前为暂停,则切换为播放。
这里所述的特定扩展模块即指提供与扩展模块实例无关的参数或功能设置接口的扩展模块,这些与扩展模块实例无关的参数或功能设置接口中,包含用于获取/修改全局设置的接口。本步骤设置的方法有两种情况:
第一种情况:如果设置界面由扩展模块提供,那么,应用程序只需要调用扩展模块的全局设置接口即可,后续操作由扩展模块自身完成;
第二种情况:如果设置界面由应用程序提供,那么,需要扩展模块提供获取/修改全局设置的接口,另外,为了提高扩展模块接口获取到的全局设置的数据格式,应用程序应该能够理解这些数据格式,否则就无法在界面上显示,或无法将修改后形成新的设置数据传递给扩展模块接口。设置界面中也会包括菜单、菜单项、工具条按钮等信息。
本步骤中,所述设置界面也可以由扩展模块来实现,比如通过API或其它方式来实现。在这种情况下,当用户需要对特定扩展模块的全局设置进行管理时,应用程序调用扩展模块的全局设置接口,以显示设置界面。
以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围,凡在本发明的精神和原则之内所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种扩展模块交互的方法,其特征在于,该方法包括:
所述应用程序枚举文档当前页面中的扩展模块数据,并根据扩展模块数据中指定的扩展模块ID,查询文档库系统中已注册的扩展模块接口,找到与该扩展模块ID相对应的扩展模块接口;
应用程序或文档库系统以扩展模块数据为参数,调用扩展模块接口中负责创建扩展模块实例的扩展模块实例创建接口,以创建扩展模块实例。
2.根据权利要求1所述的方法,其特征在于,该方法之后还包括:所述应用程序或文档库系统使用文档库系统中的扩展模块实例;
当使用完成后,该方法还包括:销毁扩展模块实例。
3.根据权利要求1所述的方法,其特征在于,所述应用程序使用创建好的扩展模块包括:界面交互,和/或消息交互。
4.根据权利要求1所述的方法,其特征在于,所述应用程序使用创建好的扩展模块的方法为:通过所述应用程序与创建的扩展模块窗口间的交互来实现。
5.根据权利要求4所述的方法,其特征在于,在所述应用程序与扩展模块窗口交互之前还包括:所述应用程序调用扩展模块的显示窗口接口创建扩展模块窗口;窗口交互之后还包括:在使用完成后所述应用程序调用扩展模块的关闭窗口接口,关闭已创建的扩展模块窗口。
6.根据权利要求5所述的方法,其特征在于,在创建扩展模块窗口之后,该方法还包括:改变扩展模块窗口的基本特征信息。
7.根据权利要求6所述的方法,其特征在于,所述改变扩展模块窗口的基本特征信息的方法为:
所述应用程序调用扩展模块的消息接口,将改变后的窗口的基本特征信息发送给扩展模块;扩展模块根据接收到的基本特征信息改变自身窗口。
8.根据权利要求7所述的方法,其特征在于,所述基本特征信息包括位置和/或大小信息。
9.根据权利要求5所述的方法,其特征在于,在创建扩展模块窗口之后,关闭扩展模块窗口之前,该方法还包括:
所述扩展模块调用来自应用程序的逆向消息接口向应用程序发消息。
10.根据权利要求9所述的方法,其特征在于,所述向应用程序发送的消息为:改变应用程序界面的界面变更请求;
所述应用程序按照接收到的界面变更请求中的信息改变应用程序界面;
当应用程序界面使用完后,扩展模块使用应用程序的逆向消息接口,向应用程序发送界面变更撤销请求,应用程序撤销应用程序界面的变更。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210269212.0A CN103577448A (zh) | 2012-07-31 | 2012-07-31 | 扩展模块交互的方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210269212.0A CN103577448A (zh) | 2012-07-31 | 2012-07-31 | 扩展模块交互的方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN103577448A true CN103577448A (zh) | 2014-02-12 |
Family
ID=50049252
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210269212.0A Pending CN103577448A (zh) | 2012-07-31 | 2012-07-31 | 扩展模块交互的方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103577448A (zh) |
-
2012
- 2012-07-31 CN CN201210269212.0A patent/CN103577448A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9477727B2 (en) | Abstracting data for use by a mobile device having occasional connectivity | |
CN116737900A (zh) | 人机交互处理系统及其方法、存储介质、电子设备 | |
CN103208046A (zh) | 基于交互式动态流程图的工作流引擎架构方法和系统 | |
CN102427465B (zh) | 语音服务代理方法及装置、通过代理集成语音应用的系统 | |
CN103645908A (zh) | 网构软件全生命周期开发实现系统 | |
CN101788906B (zh) | 资源管理方法和系统 | |
TW201947395A (zh) | 頁面處理方法、裝置及設備 | |
CN104063495A (zh) | 表单扩展方法与表单扩展装置 | |
CN105630461A (zh) | 一种android应用界面的管理方法 | |
CN103176802B (zh) | 通过控件池实现系统的用户界面ui与控件库分离的方法 | |
CN102339291A (zh) | 一种列表生成方法及设备 | |
CN102087594A (zh) | 扩展点和插件的管理方法和装置 | |
CN110532058B (zh) | 容器集群服务的管理方法、装置、设备及可读存储介质 | |
KR101380898B1 (ko) | 멀티플랫폼 환경의 실시간 웹 화이트보드 제공방법 및 이를 위한 컴퓨터로 판독가능한 기록매체 | |
CN101794217B (zh) | 实现应用程序与文档库系统的扩展模块交互的方法及系统 | |
CN104503769A (zh) | 一种基于xml配置文件的字符点阵液晶界面实现方法 | |
CN103310304B (zh) | 流程模型的管理方法和装置 | |
CN109766155A (zh) | 一种弹框生成方法、装置及存储介质 | |
CN105094824A (zh) | 一种智能手表上的通知消息展示方法以及一种智能手表 | |
CN106209931A (zh) | 一种资源的信息的更新方法、装置和系统 | |
CN108228168A (zh) | 一种撤销、恢复操作的抽象方法 | |
CN104463264A (zh) | 二维码动态生成及显示系统及其控制方法 | |
CN103914286B (zh) | 用户界面中标签页的管理方法和管理器 | |
EP2450791A1 (en) | Method for updating media database in portable terminal | |
CN105975265B (zh) | 一种基于改进型mvp模式的装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20140212 |