[go: up one dir, main page]

CN101937353A - A method and device for deploying and loading plug-ins - Google Patents

A method and device for deploying and loading plug-ins Download PDF

Info

Publication number
CN101937353A
CN101937353A CN2010102900228A CN201010290022A CN101937353A CN 101937353 A CN101937353 A CN 101937353A CN 2010102900228 A CN2010102900228 A CN 2010102900228A CN 201010290022 A CN201010290022 A CN 201010290022A CN 101937353 A CN101937353 A CN 101937353A
Authority
CN
China
Prior art keywords
plug
deployment
interface
group
unit
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.)
Granted
Application number
CN2010102900228A
Other languages
Chinese (zh)
Other versions
CN101937353B (en
Inventor
张新平
祝继洪
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
ZTE Corp
Original Assignee
ZTE Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by ZTE Corp filed Critical ZTE Corp
Priority to CN201010290022.8A priority Critical patent/CN101937353B/en
Publication of CN101937353A publication Critical patent/CN101937353A/en
Priority to PCT/CN2011/075394 priority patent/WO2012037818A1/en
Application granted granted Critical
Publication of CN101937353B publication Critical patent/CN101937353B/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44521Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading
    • G06F9/44526Plug-ins; Add-ons

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

本发明公开了一种插件部署和加载的方法及装置,该方法包括以下步骤:将待加载的插件进行分组;建立用于部署进程要加载分组后的插件组的插件部署文件;部署文件分析模块根据插件部署文件及插件组的依赖关系计算得到插件组依赖树;程序入口模块获取进程的进程名,启动进程;插件加载模块根据插件组依赖树按进程加载插件。本发明通过分组形式加载插件,支持分布式管理,进程工作目录和程序目录分离,实现了不同功能进程共享程序文件。

Figure 201010290022

The invention discloses a plug-in deployment and loading method and device. The method comprises the following steps: grouping plug-ins to be loaded; establishing a plug-in deployment file for the grouped plug-in group to be loaded in a deployment process; and deploying a file analysis module The plug-in group dependency tree is calculated according to the plug-in deployment file and the dependency relationship of the plug-in group; the program entry module obtains the process name of the process, and starts the process; the plug-in loading module loads the plug-in according to the process according to the plug-in group dependency tree. The invention loads plug-ins in group form, supports distributed management, separates process work directory and program directory, and realizes the sharing of program files by processes with different functions.

Figure 201010290022

Description

Method and device that a kind of plug-in unit is disposed and loaded
Technical field
The present invention relates to a kind of loading technique of software package, method and device that particularly a kind of plug-in unit is disposed and loaded.
Background technology
In large-scale software development, for convenience software is carried out the function expansion, realize the high cohesion in the module, the low coupling of intermodule is for realizing the customizability of releasing software function, often adopt the plug-in type exploitation, function package realizes that in plug-in unit these plug-in units have polytype one by one, and the card i/f of promptly following is different, and for the convenience on handling, these different interfaces can derive from same base interface.
In comprehensive webmaster, to manage various professional net products, and every kind of professional net product has a variety of equipment, the characteristic of specialty net is also had nothing in common with each other, owing to there are differences between the distinct device, a webmaster will be managed ten hundreds of equipment just needs a plurality of processes, distributed management.Because the function of the required deployment of different processes is also different, therefore provides a kind of software architecture to develop this large-scale webmaster, manages different professional nets, becomes the problem that we need solve.
Summary of the invention
The object of the present invention is to provide a kind of plug-in unit to dispose and loading method, the method that adopts large software plug-in unit grouping management, process shared routing catalogue and the deployment of distributed process plug-in part and plug-in unit to load has solved the problem that large-scale webmaster is managed different specialty nets.
Another object of the present invention is to provide a kind of plug-in unit to dispose and charger, the method that adopts large software plug-in unit grouping management, process shared routing catalogue and the deployment of distributed process plug-in part and plug-in unit to load has solved the problem that large-scale webmaster is managed different specialty nets.
According to an aspect of the present invention, provide a kind of plug-in unit to dispose and loading method, may further comprise the steps:
A, plug-in unit to be loaded is divided into groups;
B, set up and to be used for the plug-in unit deployment file that deployment process will load the plug-in unit group after the grouping;
C, deployment file analysis module calculate plug-in unit group dependent tree according to the dependence of plug-in unit deployment file and plug-in unit group;
D, program entry module are obtained the process name of process, startup process;
E, plug-in unit load-on module are pressed the process loading of plug-in according to plug-in unit group dependent tree.
According to a further aspect in the invention, provide a kind of plug-in unit to dispose and charger, having comprised:
The plug-in unit grouping module is used for plug-in unit to be loaded is divided into the plug-in unit group that is suitable for by the process loading by type;
The plug-in unit deployment module is used to set up the plug-in unit deployment file that deployment process is wanted the loading of plug-in group;
The deployment file analysis module is used for calculating plug-in unit group dependent tree according to the dependence of plug-in unit deployment file and plug-in unit group;
The program entry module is used to obtain the process name of described process, startup process;
The plug-in unit load-on module is used for according to plug-in unit group dependent tree by the process loading of plug-in.
Compared with prior art, beneficial effect of the present invention is: the present invention supports distributed management by the block form loading of plug-in, and the process working directory is separated with program directory, has realized difference in functionality process shared routing file.
Description of drawings
Fig. 1 is the schematic flow sheet of plug-in unit deployment provided by the invention and loading method;
Fig. 2 is the structural representation of plug-in unit deployment provided by the invention and charger;
Fig. 3 is the webmaster plug-in unit grouping synoptic diagram that the embodiment of the invention provides;
Fig. 4 is the process initiation process that provides of the embodiment of the invention and analyzes the synoptic diagram that order line is obtained the process title;
Fig. 5 is the software issue bibliographic structure figure that the embodiment of the invention provides.
Embodiment
, should be appreciated that following illustrated preferred embodiment only is used for description and interpretation the present invention, and be not used in qualification the present invention a preferred embodiment of the present invention will be described in detail below in conjunction with accompanying drawing.
Fig. 1 has shown that plug-in unit provided by the invention is disposed and the flow process signal of loading method, as shown in Figure 1:
Step S101 divides into groups plug-in unit to be loaded.
Before this, need card i/f is defined: the basic extension point interface of creation facilities program (CFP) and the plug-in unit of this basis extension point interface basis extension point interface instance function; Foundation is derived from the plug-in unit of the derivation interface of this basis extension point and this derivation interface and is derived from the interface instance function; The description file format of definition plug-in unit: definition plug-in unit ID, card i/f type and plugin library title.
As the plug-in unit product being divided into product bound cell PPU by product function, PPU is the top layer group, a plurality of plug-in managements unit PMU is arranged under the PPU, a plurality of pin function group PMUFunction are arranged under the PMU, a plurality of plug-in units or data file are arranged under the pin function group, and these pin function groups can have the plug-in unit of intersection and data file.
Step S102 sets up the plug-in unit deployment file, the plug-in unit group after the grouping that deployment process will load in this document, and a process has a plurality of deployment files, and process is by the union loading of plug-in of these files.
Step S103, the deployment file analysis module calculates plug-in unit group dependent tree according to the dependence of plug-in unit deployment file and plug-in unit group.
Step S104, the program entry module is by analyzing the process name that the order line function obtains process, startup process.
In addition, the program entry module needs to create earlier the plug-in unit factor interface, creates context interface again, resolves plug-in unit deployment file, attribute data file and plug-in unit group dependent tree then.
Before this, need set up the attribute data file, this document is some name-value pairs that the definition process needs in startup or operational process, and these property files are layerings, can define multilayer as required.
Step S105, the plug-in unit load-on module is pressed the process loading of plug-in according to plug-in unit group dependent tree.Loading of plug-in has dual mode: load in some plug-in unit or the operational process loading of plug-in as required in the process initiation process.
Fig. 2 is the structural representation of plug-in unit deployment provided by the invention and charger, as shown in Figure 2, this device comprises plug-in unit definition module, plug-in unit grouping module, plug-in unit deployment module, deployment file analysis module, program entry module, attribute data module and plug-in unit load-on module.
Wherein, the plug-in unit definition module comprises that plug-in unit basis extension point definition unit, plug-in unit derive from interface definition unit and plug-in description file definition unit.
The example function of plug-in unit basis extension point definition unit creation facilities program (CFP) basis extension point interface and this basis extension point interface.
Plug-in unit derives from the foundation of interface definition unit and derives from the derivation interface of basic extension point interface and the example function of this derivation interface.
The description file format of plug-in description file definition unit definition plug-in unit comprises: the type of plug-in unit ID, card i/f and plugin library title.
The plug-in unit grouping module is divided into plug-in unit to be loaded the plug-in unit group that is suitable for by the process loading.
The plug-in unit deployment module is set up the plug-in unit deployment file that deployment process is wanted the loading of plug-in group.
The deployment file analysis module calculates plug-in unit group dependent tree according to the dependence of plug-in unit deployment file and plug-in unit group.
The program entry module is obtained the process name of described process, the startup process, and set up the plug-in unit factor interface of management plug-in unit basis extension point interface instance function and plug-in unit derivation interface instance function and set up the context interface of describing running environment, and resolve plug-in unit deployment file, attribute data file and plug-in unit group dependent tree.
The attribute data file of attribute data module definition process initiation and the required name-value pair of operation.
The plug-in unit load-on module is pressed the process loading of plug-in according to plug-in unit group dependent tree.
Fig. 3 has shown the webmaster plug-in unit grouping signal that the embodiment of the invention provides, as shown in Figure 3, top layer has bn.ppu, two PPU of uca.ppu, wherein under the bn.ppu bn-core-c.pmu is arranged, many PMU of bn-necommon-c.pmu and bn-res.pmu, a plurality of pin function group PMUFunction under each PMU, as wherein under the bn-res.pmu two function group osf and emf being arranged, respectively include some catalogues, and there is common catalogue common, with be some data files under the catalogue of common peer, plug-in unit and description document wherein are common dynamic base among the Tong Ji dll.
Fig. 4 has shown the process initiation process that the embodiment of the invention provides and has analyzed the signal that order line is obtained the process title, as shown in Figure 4, the program entry module is at first created the plug-in unit factor interface, create context interface again, create local system interface ILocalSystem in contextual initialization plug-in unit function, the local system interface is responsible for analyzing and is disposed and load the startup plug-in unit.Must there be an example in plug-in unit factor interface IExtensionService, context interface IContext and ILocalSystem for each process.
Fig. 5 has shown the software issue bibliographic structure that the embodiment of the invention provides, as shown in Figure 5, under procs, be program and data files, it under works the catalogue of some process correspondences, some sub-directories are arranged under the catalogue of process correspondence, be used for depositing the daily record that produces in the operational process as the log catalogue, and be used for depositing plug-in unit deployment file and attribute data file under the deploy.
Below in conjunction with Fig. 1~Fig. 3 the demand of united net management is described.
(1) requirement source
In united net management, the equipment of various product lines need be managed in a webmaster, each product line has polytype equipment, the differing greatly of each equipment.The equipment of a plurality of product lines of management is not only saved resource but also be convenient to unified management in a webmaster, under the huge situation of number of devices, needs distributed management.
(2) development platform
Adaptive communication environ ACE (ADAPTIVE Communication Environment), compiler vc7 or gcc support a plurality of operating systems such as win32, solaris and linux.
(3) realization of plug-in type exploitation
1, defines basic extension point.
class?IExtension {
public:
IExtension(const?char*version=″V?1.0″);
virtual~IExtension(){}
virtual?int?Init(int?argc,char*argv[]);
virtual?int?Finish();
virtual?void?SetVersion(const?char*version);
virtual?const?char*GetVersion();
virtual?void?ProcessDebugCommand(std::string&cmd,::StringList&paras,std::ostream&os);
private:
_STD_string?m_strVersion;
};
Init is according to process initiation parameter initialization plug-in unit.Finish is used for doing cleaning work before extension point is destroyed, as closes handle and releasing memory etc.GetVersion and SetVersion are used to be provided with plug-in version.ProcessDebugCommand is a method of supporting that order line is adjusted, and similar basic function can add function as required.
Plug-in unit basis extension point example is created function IExtension*Create_Extension (const char*path, CProperties*properties) be that the plug-in unit dynamic base is to unique derivative function, create the example of this plug-in unit basis extension point, path is the directory path at plug-in unit place, properties is the name-value pair of this plug-in unit attribute, and function returns the extension point pointer.
The title of plug-in unit '. ' separating character string, represent a plug-in unit id as ican.context.localservice.log, ican.context.localservice represents it is the plug-in unit of an ILocalService correspondence, represent its subboard by the mode that plug-in unit id is added expansion, the subboard of representing ican.context.localservice as ican.context.localservice.log.xxplg, this id is a bit long, can adopt the another name mode to simplify plug-in unit id, can be used as the another name of ican.context.localservice.log as log.
Plug-in description file xml document definition defines the title of plug-in unit ID, version, corresponding dll etc. in the file, also can arrange certain type must be loaded by his father's plug-in unit by subboard.
2, the Local or Remote of definition local service Provider Interface ILocalService, service interface IServant and IServant is acted on behalf of the IService interface, these interfaces derive from from IExtension, these plug-in units have been realized the concrete function of webmaster, therefore these plug-in units quantitatively have a lot, can also define some other card i/fs if desired.Provided the main method of these three interfaces below:
2.1ILocalService provide service to this process module:
virtual?void?PreInit(IContext*ctx)
virtual?IDefaultContext*GetCtx(void)
Wherein, PreInit is used to be provided with context, and GetCtx is used to obtain context.
2.2IServant provide service to this process or remote process, service provides mainly and realizes by Get, Set:
virtual?void?PreInit(IContext*ctx)
virtual?CMsg*Get(CMsg&msgbuf,CMsgHead&headinfo)
virtual?void?Set(CMsg&msgbuf,CMsgHead&headinfo)
PreInit is used to be provided with context, and Get has response message to handle function, and CMsg represents message, and headinfo represents heading information such as command code and user, and Set is that the no response message is handled function.
2.3 the client realizes can judging that by IContext::HasServant whether servant is in this locality to the Get of IServant and calling of Set by IService.
virtual?void?PreInit(IContext*ctx,const?char*servantName)
virtual?void?SetServant(IIcanServant*servant)
virtual?CMsg*Get(CMsg&msgbuf,CMsgHead&headinfo)
virtual?void?Set(CMsg&msgbuf,CMsgHead&headinfo)
PreInit is used to be provided with the title servantName of context and corresponding IServant, and SetServant is used to be provided with the title of corresponding IServant, and Get has response message to handle function, and Set is that the no response message is handled function.
3, the grouping of definition plug-in unit is divided into a plurality of PPU by product function, and PPU is the top layer group, under the PPU a plurality of PMU is arranged, and under the PMU a plurality of PMUFunction is arranged.The corresponding catalogue of PPU, and a sub-directory under the corresponding PPU of PMU, a pin function group can contain a plurality of catalogues of PMU, and a plurality of plug-in units or data file are arranged under each catalogue, and these pin function groups have the intersection catalogue.Also defined dependence among the PMUFunction to other function group.
4, definition procedure deployment is disposed definition in the file of process working directory, this document can have a plurality of, disposes defined file and is used to define which PMUFunction of this procedure deployment.
5, definition IContext and IExtensionService interface, these interfaces can derive from from IExtension.
5.1 the method for definition IExtensionService:
virtual?IExtension*CreateExtension(const?char*extName,bool?isSingleton);
virtual?void?DestroyExtension(IExtension*pcExtension)=0;
virtual?StringList?GetExtensions(const?char*pcSubject)=0;
CreateExtension is according to whether creating the basic extension point example that is called extName in single routine mode.DestroyExtension destroys extension point.GetExtensions obtains all subboards of main body pcSubject, promptly uses the part prefix of the plug-in unit ID that '. ' cut apart.
5.2IContext in certain process, create and move the contextual method of plug-in unit:
virtual?void?PreInit(IExtensionService*)
virtual?ILocalService*GetLocalService(const?char*extName,const?char*strpmufunc);
virtual?IServant*GetServant(const?char*extName,const?char*strpmufunc);
virtual?IService*GetService(const?char*extName,const?char*strpmufunc);
virtual?IExtensionService*GetExtService();
virtual?bool?HasServant(const?char*extName,const?char*strpmufunc);
PreInit is used to be provided with plug-in unit factory.GetLocalService obtains the ILocalService of the extName by name under the pin function group strpmufunc, and strpmufunc is NULL, and wherein, seek scope is all PMU of this process.GetServant obtains the IServant of the extName by name under the pin function group strpmufunc.GetService obtains the IService of the extName by name under the pin function group strpmufunc.HasServant judges whether this process pin function group strpmufunc exists the IServant of extName by name.GetExtService obtains plug-in unit factory.
6, ILocalSystem derives from ILocalService, be that this procedure deployment is analyzed and plug-in unit group analysis module, read the name-value pair in this Process Attributes data file, analyze which plug-in unit group of this procedure deployment and plug-in unit group dependent tree, dispose which function group PmuFunction and their dependent tree as long as analyze in the present embodiment, leaf node has dependence to father node in the dependent tree, divide course leaf node loading of plug-in from the tree root node then, the plug-in unit under the same PMUFunction can be by catalogue or plug-in unit name definition priority loading sequence.Arrange certain principle and load some type plug-in when program start, some type plug-in loads as required, loads the plug-in unit with IServant extension point when starting in the present embodiment.
7, realize top each interface function or plug-in unit, releasing software.Plug-in unit and dll are placed under the Procs catalogue by PPU, PMU sectional lists, contain those catalogues and plug-in unit among the PMUFunction, the corresponding xml description document of each function group, in Procs same level definition works catalogue, under the works catalogue some process catalogues, deposit some data files relevant, as procedure deployment file and attribute data file etc. with process.
8, the order line of program entry module by program specified the process title, knows the working directory of process by the process title, and the process inlet module can load different processes like this.Create IContext and IExtensionService, transmit the process working directory and give ILocalSystem, ILocalSystem is responsible for loading the plug-in unit that needs when starting by disposing, and directly calls IContext loading of plug-in as required during operation.
In addition, can make various possible changes or replacement according to the explanation and the embodiment of technical scheme of the present invention, merge as IContext and IExtensionService, description document does not adopt the xml form, basis extension point interface adds or reduces certain methods, or just realizes interface with the structure and the function pointer of procedural language.
In sum, the present invention has following technique effect: 1, grouping management plug-in unit, and be convenient to large software plug-in unit is managed 2, can pass through document definition plug-in unit id and type. 3, have unified plug-in unit base interface, be convenient to create extension point. 4, support distributed deployment. 5, the process working directory is separated with program directory, is convenient to a plurality of process shared routing files. 6, support process association attributes name-value pair, be convenient to the definition of process variable. 7, owing to adopt the object-oriented interface mechanism, very high abstract disposal ability is arranged. In addition, method itself is general, does not rely on specific operating system and specific object oriented language, even also can realize this Plugin Mechanism in structured language.
Although above the present invention is had been described in detail, the invention is not restricted to this, those skilled in the art can carry out various modifications according to principle of the present invention. Therefore, all modifications of doing according to the principle of the invention all should be understood to fall into protection scope of the present invention.

Claims (9)

1.一种插件部署和加载方法,其特征在于,包括以下步骤:1. A method for deploying and loading a plug-in, comprising the following steps: A、将待加载的插件进行分组;A. Group the plug-ins to be loaded; B、建立用于部署进程要加载分组后的插件组的插件部署文件;B. Establish a plug-in deployment file for the grouped plug-in group to be loaded by the deployment process; C、部署文件分析模块根据所述插件部署文件及所述插件组的依赖关系计算得到插件组依赖树;C. The deployment file analysis module calculates and obtains a plug-in group dependency tree according to the plug-in deployment file and the dependency relationship of the plug-in group; D、程序入口模块获取所述进程的进程名,启动进程;以及D. The program entry module acquires the process name of the process and starts the process; and E、插件加载模块根据所述插件组依赖树按所述进程加载插件。E. The plug-in loading module loads the plug-ins according to the process according to the plug-in group dependency tree. 2.根据权利要求1所述的一种插件部署和加载方法,其特征在于,在所述步骤A之前,还包括以下步骤:2. A plug-in deployment and loading method according to claim 1, characterized in that, before the step A, the following steps are further included: 建立用于添加插件实现基础功能的基础扩展点接口和所述基础扩展点接口的插件基础扩展点接口实例函数;Establishing a basic extension point interface for adding plug-ins to implement basic functions and a plug-in basic extension point interface instance function of the basic extension point interface; 建立派生于所述基础扩展点的用于管理不同类型插件的相应派生接口和所述派生接口的插件派生接口实例函数;以及establishing corresponding derived interfaces for managing different types of plug-ins derived from said base extension point and plug-in derived interface instance functions of said derived interfaces; and 定义所述插件接口的类型。Defines the type of the plug-in interface. 3.根据权利要求1所述的一种插件部署和加载方法,其特征在于,在所述步骤D之前,建立用于定义进程启动和运行所需名值对的属性数据文件。3. A plug-in deployment and loading method according to claim 1, characterized in that, before the step D, an attribute data file for defining name-value pairs required for process startup and operation is established. 4.根据权利要求3所述的一种插件部署和加载方法,其特征在于,在所述步骤D和步骤E之间,还包括以下步骤:4. A plug-in deployment and loading method according to claim 3, characterized in that, between the step D and the step E, further comprising the following steps: 所述程序入口模块建立用于管理所述插件基础扩展点接口实例函数和所述插件派生接口实例函数的插件工厂接口;The program entry module establishes a plug-in factory interface for managing the plug-in basic extension point interface instance function and the plug-in derived interface instance function; 所述程序入口模块建立用于描述运行环境的上下文接口;以及The program entry module establishes a context interface for describing an operating environment; and 所述程序入口模块解析所述插件部署文件、所述属性数据文件和所述插件组依赖树。The program entry module parses the plug-in deployment file, the property data file and the plug-in group dependency tree. 5.一种插件部署和加载装置,其特征在于,包括:5. A plug-in deployment and loading device, comprising: 插件分组模块,用于将待加载的插件按类型划分成适于按进程加载的插件组;The plug-in grouping module is used to divide the plug-ins to be loaded into plug-in groups suitable for loading according to the process; 插件部署模块,用于建立部署进程要加载插件组的插件部署文件;The plug-in deployment module is used to establish the plug-in deployment file for the plug-in group to be loaded by the deployment process; 部署文件分析模块,用于根据所述插件部署文件及所述插件组的依赖关系计算得到插件组依赖树;A deployment file analysis module, configured to calculate a plug-in group dependency tree according to the plug-in deployment file and the dependency relationship of the plug-in group; 程序入口模块,用于获取所述进程的进程名,启动进程;以及The program entry module is used to obtain the process name of the process and start the process; and 插件加载模块,用于根据所述插件组依赖树按所述进程加载插件。The plug-in loading module is configured to load the plug-ins according to the process according to the plug-in group dependency tree. 6.根据权利要求5所述的一种插件部署和加载装置,其特征在于,还包括:6. A plug-in deployment and loading device according to claim 5, further comprising: 插件定义模块,用于定义插件基础扩展点接口、派生接口、所述插件基础扩展点接口的实例函数、所述派生接口的实例函数和所述插件接口的类型。The plug-in definition module is used to define the basic extension point interface of the plug-in, the derived interface, the instance function of the basic extension point interface of the plug-in, the instance function of the derived interface, and the type of the plug-in interface. 7.根据权利要求6所述的一种插件部署和加载装置,其特征在于,所述插件定义单元包括:7. A plug-in deployment and loading device according to claim 6, wherein the plug-in definition unit comprises: 插件基础扩展点定义单元,用于建立添加插件实现基础功能的基础扩展点接口和所述基础扩展点接口的插件基础扩展点接口实例函数;The plug-in basic extension point definition unit is used to establish the basic extension point interface for adding plug-ins to realize the basic functions and the plug-in basic extension point interface instance function of the basic extension point interface; 插件派生接口定义单元,用于建立派生于所述基础扩展点的用于管理不同类型插件的相应派生接口和所述派生接口的插件派生接口实例函数;以及A plug-in derived interface definition unit, configured to establish a corresponding derived interface derived from the base extension point for managing different types of plug-ins and a plug-in derived interface instance function of the derived interface; and 插件描述文件定义单元,用于定义所述插件接口的类型。The plug-in description file definition unit is used to define the type of the plug-in interface. 8.根据权利要求5所述的一种插件部署和加载装置,其特征在于,还包括:8. A plug-in deployment and loading device according to claim 5, further comprising: 属性数据模块,用于定义进程启动和运行所需名值对的属性数据文件。The attribute data module is used to define the attribute data file of name-value pairs required for process startup and operation. 9.根据权利要求8所述的一种插件部署和加载装置,其特征在于,所述程序入口模块还用于建立管理所述插件基础扩展点接口实例函数和所述插件派生接口实例函数的插件工厂接口;建立描述运行环境的上下文接口;以及解析所述插件部署文件、所述属性数据文件和所述插件组依赖树。9. A plug-in deployment and loading device according to claim 8, wherein the program entry module is also used to create a plug-in that manages the plug-in basic extension point interface instance function and the plug-in derived interface instance function factory interface; establishing a context interface describing the running environment; and parsing the plug-in deployment file, the attribute data file and the plug-in group dependency tree.
CN201010290022.8A 2010-09-20 2010-09-20 Method and device for deploying and loading plug-in unit Expired - Fee Related CN101937353B (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201010290022.8A CN101937353B (en) 2010-09-20 2010-09-20 Method and device for deploying and loading plug-in unit
PCT/CN2011/075394 WO2012037818A1 (en) 2010-09-20 2011-06-07 Method and device for deploying and loading plug-ins

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201010290022.8A CN101937353B (en) 2010-09-20 2010-09-20 Method and device for deploying and loading plug-in unit

Publications (2)

Publication Number Publication Date
CN101937353A true CN101937353A (en) 2011-01-05
CN101937353B CN101937353B (en) 2014-11-05

Family

ID=43390700

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201010290022.8A Expired - Fee Related CN101937353B (en) 2010-09-20 2010-09-20 Method and device for deploying and loading plug-in unit

Country Status (2)

Country Link
CN (1) CN101937353B (en)
WO (1) WO2012037818A1 (en)

Cited By (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102156663A (en) * 2011-03-22 2011-08-17 北京书生国际信息技术有限公司 Implementation method and device of plugin
WO2012037818A1 (en) * 2010-09-20 2012-03-29 中兴通讯股份有限公司 Method and device for deploying and loading plug-ins
CN102520967A (en) * 2011-12-28 2012-06-27 深圳市融创天下科技股份有限公司 Method, system and mobile terminal for creating and using mobile platform plug-in component
CN102722368A (en) * 2012-05-21 2012-10-10 北京广利核系统工程有限公司 Plug-in software designing method based on document tree and message pump
CN102810065A (en) * 2011-05-31 2012-12-05 国际商业机器公司 Method and system for loading program modules
CN103197935A (en) * 2012-01-09 2013-07-10 腾讯科技(深圳)有限公司 Application loading method and system
CN103246525A (en) * 2012-02-06 2013-08-14 腾讯科技(深圳)有限公司 Method and client for achieving application operation
WO2013135133A1 (en) * 2012-03-16 2013-09-19 腾讯科技(深圳)有限公司 Method, apparatus and computer storage medium for plug-in management and control
CN103389905A (en) * 2012-05-10 2013-11-13 航天信息股份有限公司 Plug-in loading method and plug-in loading system
CN103425471A (en) * 2012-05-22 2013-12-04 航天信息股份有限公司 Plug-in type taxation billing system
CN103593195A (en) * 2013-11-22 2014-02-19 安一恒通(北京)科技有限公司 Method and device for customizing personalized software
CN103856396A (en) * 2012-11-30 2014-06-11 中兴通讯股份有限公司 Message transmission method between plugins and system thereof and proxy plugin
CN104077140A (en) * 2014-07-04 2014-10-01 用友软件股份有限公司 Automatic compiling method and compiling device for continuous integration
CN105099739A (en) * 2014-05-15 2015-11-25 中国移动通信集团公司 Plug-in type software deployment method and apparatus, and application server
CN105373396A (en) * 2015-08-14 2016-03-02 腾讯科技(深圳)有限公司 Method and device for updating plug-in in plug-in platform
CN105704188A (en) * 2014-11-27 2016-06-22 华为软件技术有限公司 Deployment method and apparatus of applications and services
CN106325939A (en) * 2016-08-25 2017-01-11 苏州蓝海彤翔系统科技有限公司 Target object starting method and business program system
CN106406961A (en) * 2016-09-27 2017-02-15 北京奇虎科技有限公司 Method and device for loading and providing application based on browser
CN109614158A (en) * 2017-09-30 2019-04-12 北京国双科技有限公司 A kind of call method of plug-in unit, system, storage medium and processor
CN110245279A (en) * 2019-05-06 2019-09-17 阿里巴巴集团控股有限公司 Dependent tree generation method, device, equipment and storage medium
CN112181514A (en) * 2019-09-18 2021-01-05 华为技术有限公司 Plug-in implementation method and plug-in implementation system
CN113590233A (en) * 2021-08-24 2021-11-02 芯河半导体科技(无锡)有限公司 Felix-based method for supporting multi-client deployment plug-in framework
CN117251140A (en) * 2023-09-28 2023-12-19 厦门绘生花网络科技有限公司 Multi-level and dynamically scalable software processing methods, systems, chips and equipment

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9983861B2 (en) 2016-07-11 2018-05-29 International Business Machines Corporation Reusable deployment plans and dependencies thereof

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030018694A1 (en) * 2000-09-01 2003-01-23 Shuang Chen System, method, uses, products, program products, and business methods for distributed internet and distributed network services over multi-tiered networks
CN1969257A (en) * 2004-06-09 2007-05-23 西姆毕恩软件有限公司 A method for selecting plug-in code modules in a computing device
CN1968154A (en) * 2006-09-15 2007-05-23 华为技术有限公司 System and method for service expansion using plug
CN101488996A (en) * 2009-01-22 2009-07-22 中兴通讯股份有限公司 Information expansion management apparatus and method for mobile terminal

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101937353B (en) * 2010-09-20 2014-11-05 中兴通讯股份有限公司 Method and device for deploying and loading plug-in unit

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030018694A1 (en) * 2000-09-01 2003-01-23 Shuang Chen System, method, uses, products, program products, and business methods for distributed internet and distributed network services over multi-tiered networks
CN1969257A (en) * 2004-06-09 2007-05-23 西姆毕恩软件有限公司 A method for selecting plug-in code modules in a computing device
CN1968154A (en) * 2006-09-15 2007-05-23 华为技术有限公司 System and method for service expansion using plug
CN101488996A (en) * 2009-01-22 2009-07-22 中兴通讯股份有限公司 Information expansion management apparatus and method for mobile terminal

Cited By (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012037818A1 (en) * 2010-09-20 2012-03-29 中兴通讯股份有限公司 Method and device for deploying and loading plug-ins
CN102156663B (en) * 2011-03-22 2013-07-31 北京书生国际信息技术有限公司 Implementation method and device of plugin
CN102156663A (en) * 2011-03-22 2011-08-17 北京书生国际信息技术有限公司 Implementation method and device of plugin
CN102810065B (en) * 2011-05-31 2016-04-27 国际商业机器公司 For the method and system of loader module
CN102810065A (en) * 2011-05-31 2012-12-05 国际商业机器公司 Method and system for loading program modules
CN102520967A (en) * 2011-12-28 2012-06-27 深圳市融创天下科技股份有限公司 Method, system and mobile terminal for creating and using mobile platform plug-in component
CN103197935A (en) * 2012-01-09 2013-07-10 腾讯科技(深圳)有限公司 Application loading method and system
CN103246525B (en) * 2012-02-06 2017-03-08 腾讯科技(深圳)有限公司 A kind of method and client realizing applying operation
CN103246525A (en) * 2012-02-06 2013-08-14 腾讯科技(深圳)有限公司 Method and client for achieving application operation
WO2013135133A1 (en) * 2012-03-16 2013-09-19 腾讯科技(深圳)有限公司 Method, apparatus and computer storage medium for plug-in management and control
US9396005B2 (en) 2012-03-16 2016-07-19 Tencent Technology (Shenzhen) Company Limited Method, apparatus and computer storage medium for plug-in management and control
CN103389905A (en) * 2012-05-10 2013-11-13 航天信息股份有限公司 Plug-in loading method and plug-in loading system
CN103389905B (en) * 2012-05-10 2016-08-17 航天信息股份有限公司 Plug-in loading method and system
CN102722368A (en) * 2012-05-21 2012-10-10 北京广利核系统工程有限公司 Plug-in software designing method based on document tree and message pump
CN103425471A (en) * 2012-05-22 2013-12-04 航天信息股份有限公司 Plug-in type taxation billing system
CN103856396A (en) * 2012-11-30 2014-06-11 中兴通讯股份有限公司 Message transmission method between plugins and system thereof and proxy plugin
CN103856396B (en) * 2012-11-30 2017-05-31 中兴通讯股份有限公司 Message transmission method and device, proxy plug-ins between plug-in unit
CN103593195A (en) * 2013-11-22 2014-02-19 安一恒通(北京)科技有限公司 Method and device for customizing personalized software
CN105099739B (en) * 2014-05-15 2018-08-17 中国移动通信集团公司 One kind being based on plug-in type software deployment method, apparatus and application server
CN105099739A (en) * 2014-05-15 2015-11-25 中国移动通信集团公司 Plug-in type software deployment method and apparatus, and application server
CN104077140B (en) * 2014-07-04 2017-11-07 用友网络科技股份有限公司 Automation Compilation Method and compilation device for continuous integrating
CN104077140A (en) * 2014-07-04 2014-10-01 用友软件股份有限公司 Automatic compiling method and compiling device for continuous integration
CN105704188A (en) * 2014-11-27 2016-06-22 华为软件技术有限公司 Deployment method and apparatus of applications and services
CN105704188B (en) * 2014-11-27 2019-04-12 华为软件技术有限公司 Using the dispositions method and device with service
CN105373396A (en) * 2015-08-14 2016-03-02 腾讯科技(深圳)有限公司 Method and device for updating plug-in in plug-in platform
CN105373396B (en) * 2015-08-14 2018-01-05 腾讯科技(深圳)有限公司 Update of plug-in loading method and device in plug-platform
CN106325939A (en) * 2016-08-25 2017-01-11 苏州蓝海彤翔系统科技有限公司 Target object starting method and business program system
CN106406961B (en) * 2016-09-27 2021-01-15 北京奇虎科技有限公司 Method and device for loading and providing application program based on browser
CN106406961A (en) * 2016-09-27 2017-02-15 北京奇虎科技有限公司 Method and device for loading and providing application based on browser
CN109614158B (en) * 2017-09-30 2021-11-26 北京国双科技有限公司 Plug-in calling method, system, storage medium and processor
CN109614158A (en) * 2017-09-30 2019-04-12 北京国双科技有限公司 A kind of call method of plug-in unit, system, storage medium and processor
CN110245279A (en) * 2019-05-06 2019-09-17 阿里巴巴集团控股有限公司 Dependent tree generation method, device, equipment and storage medium
CN110245279B (en) * 2019-05-06 2023-05-30 创新先进技术有限公司 Dependency tree generation method, device, equipment and storage medium
CN112181514A (en) * 2019-09-18 2021-01-05 华为技术有限公司 Plug-in implementation method and plug-in implementation system
US11880695B2 (en) 2019-09-18 2024-01-23 Huawei Technologies Co., Ltd. Plug-in implementation method and plug-in implementation system
CN113590233A (en) * 2021-08-24 2021-11-02 芯河半导体科技(无锡)有限公司 Felix-based method for supporting multi-client deployment plug-in framework
CN113590233B (en) * 2021-08-24 2024-11-05 芯河半导体科技(无锡)有限公司 A method for supporting multi-client deployment plug-in framework based on Felix
CN117251140A (en) * 2023-09-28 2023-12-19 厦门绘生花网络科技有限公司 Multi-level and dynamically scalable software processing methods, systems, chips and equipment

Also Published As

Publication number Publication date
WO2012037818A1 (en) 2012-03-29
CN101937353B (en) 2014-11-05

Similar Documents

Publication Publication Date Title
CN101937353A (en) A method and device for deploying and loading plug-ins
CN111290753B (en) Method, device, equipment and storage medium for building front-end development environment
CN106156359B (en) A kind of data synchronization updating method under cloud computing platform
CN112486547B (en) Application program updating method and device under multi-tenant scene and electronic equipment
CN101315640B (en) Directory management method and apparatus
CN101237326B (en) Method, device and system for real time parsing of device log
US20110035747A1 (en) Virtual machine package generation system, virtual machine package generation method, and virtual machine package generation program
CN103473696A (en) Method and system for collecting, analyzing and distributing internet business information
CN106850788A (en) Towards the integrated framework and integrated approach of multi-source heterogeneous geographic information resources
CN107704252A (en) A kind of method and system for providing a user artificial intelligence platform
CN107783816A (en) The method and device that creation method and device, the big data cluster of virtual machine create
US20020184252A1 (en) File tree comparator
EP2724517A2 (en) Method for the preemptive creation of binary delta information within a computer network
CN101964795A (en) Log collecting system, log collection method and log recycling server
CN106569919A (en) File synchronization method and apparatus
CN102779160B (en) Mass data information index system and index structuring method
CN101652790A (en) Method and system for populating a software catalog with relevant product information
CN101447891A (en) Service model self-adapting system and method thereof
Blomer et al. New directions in the CernVM file system
Asquith Extremely scalable storage and clustering of malware metadata
CN112333004B (en) Method and device for reconstructing and checking proprietary cloud flow based on container cluster genes
CN113595832A (en) Network data acquisition system and method
CN101930379A (en) Structure and method for incremental deploying of server applications in distributed software system
CN111563083A (en) Report data query method, device and system
CN114327285A (en) Data storage method, device, device and storage medium

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20141105

CF01 Termination of patent right due to non-payment of annual fee