Platform software plug-in method and device based on service-oriented architecture

Through the platform software plug-in method based on a service-oriented architecture, physical plug-ins are built and plug-in engine rendering is solved, and the problem of plug-in response efficiency in the existing technology is improved, achieving flexibility and scalability.

CN120255979APending Publication Date: 2025-07-04CHENGDU JOUAV AUTOMATION TECH
View PDF 0 Cites 2 Cited by

Patent Information

Application Number
CN202510364984.X
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-03-26
Publication Date
2025-07-04

AI Technical Summary

Technical Problem

When existing plug-in technologies build desktop applications based on SOA systems, it is difficult to efficiently respond to the functional needs of user interface and system plug-ins, resulting in long development cycles, complex function updates and high cost.

Method used

The platform software plug-in method is adopted based on a service-oriented architecture. By obtaining plug-in requirements information, a physical plug-in is built and a plug-in engine collection is built, and the plug-in engine is used to render the plug-in to be rendered, completing the startup process of the platform software.

Benefits of technology

It improves the application flexibility and scalability of physical plug-ins, improves the function response rate, enables the plug-ins to better adapt to different application scenarios and user needs, and reduces system maintenance costs.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120255979A_ABST
    Figure CN120255979A_ABST
Patent Text Reader

Abstract

The invention relates to the technical field of software plug-ins, and discloses a platform software plug-in method and device based on a service-oriented architecture, and the method comprises the steps: constructing a plurality of entity plug-ins needed for starting platform software according to plug-in demand information of the platform software; constructing a plug-in engine set corresponding to all entity plug-ins based on the service-oriented architecture system; and in the process of starting the platform software, the to-be-rendered plug-ins in all the entity plug-ins are rendered through the target engine in the plug-in engine set, so that the starting process of the platform software is completed based on the rendered plug-ins. Visibly, the to-be-rendered plug-in can be rendered through the plug-in engine set constructed based on the service-oriented architecture system, and then the starting process of the platform software is realized based on the rendered plug-in, so that the application flexibility and expandability of the entity plug-in are improved, the function response rate of the entity plug-in is improved, and the user experience is improved. And the entity plug-in can better adapt to different application scenes and user requirements.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the technical field of software plugins, and in particular, to a method and device for platform software pluginization based on a service-oriented architecture. Background Art

[0002] With the continuous increase in the complexity of software systems, the traditional monolithic architecture has become difficult to meet the requirements of rapid iteration and flexible expansion. The service-oriented architecture (SOA), with its excellent modular design and scalability, is expected to be an effective solution to this problem and can greatly promote the progress of the software development field.

[0003] However, the existing plugin technologies still face many challenges in the implementation process. Most of them rely on the microservices architecture or implement the plugin functions of the background system in the form of dynamic libraries. Especially when building desktop applications based on the SOA system, the existing technical means have obvious deficiencies in supporting system-level plugins and user interface (UI) plugins, and it is difficult to efficiently respond to the functional requirements of user interface plugins and system plugins. This leads to problems such as long development cycles, complex function updates, and high labor costs during the development of the system. Therefore, it is particularly important to provide an innovative method for platform software pluginization to improve the response rate of plugin functions. Summary of the Invention

[0004] The present invention provides a method and device for platform software pluginization based on a service-oriented architecture, which improves the application flexibility and scalability of entity plugins, enhances the function response rate of entity plugins, and enables entity plugins to better adapt to different application scenarios and user needs.

[0005] To solve the above technical problems, in a first aspect of the present invention, a method for platform software pluginization based on a service-oriented architecture is disclosed. The method includes:

[0006] Obtaining the pluginization requirement information of the platform software, and constructing a plurality of entity plugins required to start the platform software according to the pluginization requirement information; the pluginization requirement information includes at least one of plugin function requirement information, modular development requirement information, plugin update requirement information, and plugin deployment requirement information;

[0007] Based on a preset service-oriented architecture system, constructing a set of plugin engines corresponding to all the entity plugins;

[0008] During the process of starting the platform software, rendering the to-be-rendered plugins among all the entity plugins through the target engine in the set of plugin engines to obtain the rendered plugins, and completing the startup process of the platform software based on the rendered plugins.

[0009] As an alternative implementation, in the first aspect of the present invention, constructing a plurality of entity plugins required to start the platform software according to the plugin requirement information includes:

[0010] Performing a plugin definition operation on the platform software according to the plugin requirement information to obtain plugin definition information of the platform software; the plugin definition information includes plugin metadata and plugin target information, and the plugin metadata includes at least one of plugin name information, plugin execution instruction information, and rendering method information, and the plugin target information includes at least one of plugin interface protocol information, plugin data structure information, plugin communication method information, and plugin type information;

[0011] Performing plugin abstraction encapsulation and protocol modeling operations on the platform software according to the plugin definition information to obtain a plurality of entity plugins required to start the platform software.

[0012] As an alternative implementation, in the first aspect of the present invention, the method further includes:

[0013] Determining the association configuration information of the plugin to be rendered among all the entity plugins; the association configuration information of the plugin to be rendered includes at least one of the configuration association relationship between the plugin to be rendered and the system module of the platform software, the menu-window configuration association relationship between the plugin to be rendered and the page to be constructed of the platform software, and the window-interface rendering element configuration association relationship between the plugin to be rendered and the page to be constructed.

[0014] Among them, rendering the plugin to be rendered among all the entity plugins through the target engine in the plugin engine set to obtain a rendered plugin, and completing the startup process of the platform software based on the rendered plugin includes:

[0015] Rendering the plugin to be rendered among all the entity plugins through the target engine in the plugin engine set and the association configuration information to obtain a rendered plugin, and completing the startup process of the platform software based on the rendered plugin.

[0016] As an alternative implementation, in the first aspect of the present invention, rendering the plugin to be rendered among all the entity plugins through the target engine in the plugin engine set and the association configuration information to obtain a rendered plugin, and completing the startup process of the platform software based on the rendered plugin includes:

[0017] Obtain the plugin metadata corresponding to the plugin to be rendered among all the entity plugins through the plugin engines in the plugin engine set, and parse the plugin metadata corresponding to the plugin to be rendered to obtain the parsed metadata of the plugin to be rendered; the plugin to be rendered is an unloaded plugin, and the plugin to be rendered includes a page plugin to be rendered and a system plugin to be rendered.

[0018] Perform a first rendering operation on the page plugin to be rendered through the rendering engine in the plugin engine set and according to the parsed metadata of the page plugin to be rendered and the associated configuration information to obtain a rendered page plugin, and perform a second rendering operation on the system plugin to be rendered through the rendering engine and according to the parsed metadata of the system plugin to be rendered and the associated configuration information to obtain a rendered system plugin.

[0019] Construct the software page corresponding to the platform software based on the rendered page plugin, and complete the startup process of the platform software based on the software page, the rendered system plugin, and the loaded plugins among all the entity plugins.

[0020] As an optional implementation manner, in the first aspect of the present invention, the performing a first rendering operation on the page plugin to be rendered through the rendering engine in the plugin engine set and according to the parsed metadata of the page plugin to be rendered and the associated configuration information to obtain a rendered page plugin includes:

[0021] Judge whether there is a corresponding rendering template language for the page plugin to be rendered through the rendering engine in the plugin engine set.

[0022] When the judgment result is negative, obtain the user-defined interface construction file corresponding to the page to be rendered, and perform a first rendering operation on the page plugin to be rendered according to the user-defined interface construction file, the parsed metadata of the page plugin to be rendered, and the associated configuration information to obtain a rendered page plugin.

[0023] When the judgment result is positive, parse the rendering template language according to the preset parsing rules to obtain the parsed rendering template language, and perform a first rendering operation on the page plugin to be rendered according to the parsed rendering template language, the parsed metadata, and the associated configuration information to obtain a rendered page plugin.

[0024] As an optional implementation manner, in the first aspect of the present invention, the performing a second rendering operation on the system plugin to be rendered through the rendering engine and according to the parsed metadata of the system plugin to be rendered and the associated configuration information to obtain a rendered system plugin includes:

[0025] Through the rendering engine, and according to the parsed metadata of the to-be-rendered system plug-in and the associated configuration information, register the to-be-rendered system plug-in into the startup cache of a preset system plug-in queue;

[0026] During the execution of the system plug-in queue, when it is necessary to start the to-be-rendered system plug-in, start the to-be-rendered system plug-in to obtain the started system plug-in, which is used as the rendered system plug-in.

[0027] As an optional implementation manner, in the first aspect of the present invention, the method further includes:

[0028] During the rendering process of the to-be-rendered plug-ins among all the entity plug-ins, when there is communication content between the to-be-rendered plug-in and the target object, the event engine in the plug-in engine set forwards the communication content between the to-be-rendered plug-in and the target object through a pre-created proxy object; the target object includes the main process of the platform software or other plug-ins.

[0029] The second aspect of the present invention discloses a platform software plug-in device based on a service-oriented architecture. The device includes:

[0030] An acquisition module, configured to acquire the plug-in requirement information of the platform software;

[0031] A construction module, configured to construct a plurality of entity plug-ins required to start the platform software according to the plug-in requirement information; the plug-in requirement information includes at least one of plug-in function requirement information, modular development requirement information, plug-in update requirement information, and plug-in deployment requirement information; based on a preset service-oriented architecture system, construct a plug-in engine set corresponding to all the entity plug-ins;

[0032] A startup module, configured to, during the startup process of the platform software, render the to-be-rendered plug-ins among all the entity plug-ins through a target engine in the plug-in engine set to obtain rendered plug-ins, and complete the startup process of the platform software based on the rendered plug-ins.

[0033] As an optional implementation manner, in the second aspect of the present invention, the manner in which the construction module constructs a plurality of entity plug-ins required to start the platform software according to the plug-in requirement information specifically includes:

[0034] Perform a plug-in definition operation on the platform software according to the plug-in requirement information to obtain the plug-in definition information of the platform software; the plug-in definition information includes plug-in metadata and plug-in target information, and the plug-in metadata includes at least one of plug-in name information, plug-in execution instruction information, and rendering method information, and the plug-in target information includes at least one of plug-in interface protocol information, plug-in data structure information, plug-in communication method information, and plug-in type information;

[0035] According to the plug-in definition information, perform a plug-in abstraction encapsulation and protocol modeling operation on the platform software to obtain a plurality of entity plug-ins required to start the platform software.

[0036] As an alternative implementation manner, in the second aspect of the present invention, the device further includes:

[0037] A determination module, configured to determine the association configuration information of the plug-in to be rendered among all the entity plug-ins; the association configuration information of the plug-in to be rendered includes at least one of the configuration association relationship between the plug-in to be rendered and the system module of the platform software, the menu-window configuration association relationship between the plug-in to be rendered and the page to be constructed of the platform software, and the window-interface rendering element configuration association relationship between the plug-in to be rendered and the page to be constructed;

[0038] Among them, the manner in which the start module renders the plug-in to be rendered among all the entity plug-ins through the target engine in the plug-in engine set to obtain a rendered plug-in and completes the startup process of the platform software based on the rendered plug-in specifically includes:

[0039] Render the plug-in to be rendered among all the entity plug-ins through the target engine in the plug-in engine set and the association configuration information to obtain a rendered plug-in, and complete the startup process of the platform software based on the rendered plug-in.

[0040] As an alternative implementation manner, in the second aspect of the present invention, the manner in which the start module renders the plug-in to be rendered among all the entity plug-ins through the target engine in the plug-in engine set and the association configuration information to obtain a rendered plug-in and completes the startup process of the platform software specifically includes:

[0041] Obtain the plug-in metadata corresponding to the plug-in to be rendered among all the entity plug-ins through the plug-in engine in the plug-in engine set, and parse the plug-in metadata corresponding to the plug-in to be rendered to obtain the parsed metadata of the plug-in to be rendered; the plug-in to be rendered is a plug-in that has not been loaded, and the plug-in to be rendered includes a page plug-in to be rendered and a system plug-in to be rendered;

[0042] Perform a first rendering operation on the page plugin to be rendered through the rendering engine in the plugin engine set, and obtain a rendered page plugin according to the parsed metadata of the page plugin to be rendered and the associated configuration information, and perform a second rendering operation on the system plugin to be rendered through the rendering engine, and obtain a rendered system plugin according to the parsed metadata of the system plugin to be rendered and the associated configuration information;

[0043] Construct the software page corresponding to the platform software according to the rendered page plugin, and complete the startup process of the platform software based on the software page, the rendered system plugin, and the loaded plugins among all the entity plugins.

[0044] As an optional implementation manner, in the second aspect of the present invention, the manner in which the startup module performs a first rendering operation on the page plugin to be rendered through the rendering engine in the plugin engine set, and obtains a rendered page plugin according to the parsed metadata of the page plugin to be rendered and the associated configuration information specifically includes:

[0045] Judge whether there is a corresponding rendering template language for the page plugin to be rendered through the rendering engine in the plugin engine set;

[0046] When the judgment result is negative, obtain the user-defined interface construction file corresponding to the page to be rendered, and perform a first rendering operation on the page plugin to be rendered according to the user-defined interface construction file, the parsed metadata of the page plugin to be rendered, and the associated configuration information, and obtain a rendered page plugin;

[0047] When the judgment result is positive, parse the rendering template language according to the preset parsing rules, obtain the parsed rendering template language, and perform a first rendering operation on the page plugin to be rendered according to the parsed rendering template language, the parsed metadata, and the associated configuration information, and obtain a rendered page plugin.

[0048] As an optional implementation manner, in the second aspect of the present invention, the manner in which the startup module performs a second rendering operation on the system plugin to be rendered through the rendering engine, and obtains a rendered system plugin according to the parsed metadata of the system plugin to be rendered and the associated configuration information specifically includes:

[0049] Register the system plugin to be rendered into the startup cache of the preset system plugin queue through the rendering engine, and according to the parsed metadata of the system plugin to be rendered and the associated configuration information;

[0050] During the execution of the system plugin queue, when it is necessary to start the system plugin to be rendered, start the system plugin to be rendered to obtain the started system plugin, which is used as the rendered system plugin.

[0051] As an optional implementation manner, in the second aspect of the present invention, the device further includes:

[0052] A forwarding module, configured to, during the process that the startup module renders the plugins to be rendered among all the entity plugins, when there is communication content between the plugin to be rendered and the target object, forward the communication content between the plugin to be rendered and the target object through a pre-created proxy object; the target object includes the main process of the platform software or other plugins.

[0053] The third aspect of the present invention discloses another platform software plug-in device based on a service-oriented architecture. The device includes:

[0054] A memory storing executable program code;

[0055] A processor coupled to the memory;

[0056] The processor calls the executable program code stored in the memory to execute the platform software plug-in method disclosed in the first aspect of the present invention.

[0057] The fourth aspect of the present invention discloses a computer storage medium. The computer storage medium stores computer instructions, which are used to execute the platform software plug-in method disclosed in the first aspect of the present invention when being called.

[0058] Compared with the prior art, the embodiments of the present invention have the following beneficial effects:

[0059] In the embodiments of the present invention, according to the plug-in requirement information of the platform software, a plurality of entity plugins required to start the platform software are constructed; based on the service-oriented architecture system, a set of plugin engines corresponding to all entity plugins is constructed; during the process of starting the platform software, the plugins to be rendered among all entity plugins are rendered through the target engine in the set of plugin engines, so as to complete the startup process of the platform software based on the rendered plugins. It can be seen that implementing the present invention can render the plugins to be rendered through the set of plugin engines constructed based on the service-oriented architecture system, and then realize the startup process of the platform software based on the rendered plugins. In this way, the application flexibility and scalability of the entity plugins are improved, the function response rate of the entity plugins is enhanced, and the entity plugins can better adapt to different application scenarios and user requirements. Description of the Drawings

[0060] To more clearly illustrate the technical solutions in the embodiments of the present invention, the following will briefly introduce the accompanying drawings required for the description of the embodiments. Obviously, the accompanying drawings in the following description are only some embodiments of the present invention. For those of ordinary skill in the art, without creative efforts, other accompanying drawings can be obtained based on these drawings.

[0061] Figure 1 is a schematic flowchart of a method for platform software plug-in based on service-oriented architecture disclosed in an embodiment of the present invention;

[0062] Figure 2 is a schematic flowchart of another method for platform software plug-in based on service-oriented architecture disclosed in an embodiment of the present invention;

[0063] Figure 3 is a schematic structural diagram of a device for platform software plug-in based on service-oriented architecture disclosed in an embodiment of the present invention;

[0064] Figure 4 is a schematic structural diagram of another device for platform software plug-in based on service-oriented architecture disclosed in an embodiment of the present invention;

[0065] Figure 5 is a schematic structural diagram of yet another device for platform software plug-in based on service-oriented architecture disclosed in an embodiment of the present invention;

[0066] Figure 6 is a schematic structural diagram of a plug-in framework system disclosed in an embodiment of the present invention;

[0067] Figure 7 is a plug-in management flowchart of a plug-in engine disclosed in an embodiment of the present invention;

[0068] Figure 8 is a plug-in rendering flowchart of a rendering engine disclosed in an embodiment of the present invention. Detailed implementation manners

[0069] In order to enable those skilled in the art to better understand the solutions of the present invention, the following will clearly and completely describe the technical solutions in the embodiments of the present invention in conjunction with the accompanying drawings in the embodiments of the present invention. Obviously, the described embodiments are only some embodiments of the present invention, rather than all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those of ordinary skill in the art without creative efforts belong to the scope of protection of the present invention.

[0070] The terms "first", "second", etc. in the description, claims and the above-mentioned drawings of the present invention are used to distinguish different objects, rather than to describe a specific order. In addition, the terms "comprising" and "having" and any variations thereof are intended to cover non-exclusive inclusion. For example, a process, method, device, product or terminal comprising a series of steps or units is not limited to the listed steps or units, but optionally further includes steps or units not listed, or optionally further includes other steps or units inherent to these processes, methods, products or terminals.

[0071] Referring to "embodiments" herein means that the specific features, structures or characteristics described in connection with the embodiments can be included in at least one embodiment of the present invention. The phrase appearing in various places in the specification does not necessarily refer to the same embodiment, nor is it an independent or alternative embodiment mutually exclusive with other embodiments. Those skilled in the art will explicitly and implicitly understand that the embodiments described herein can be combined with other embodiments.

[0072] The present invention discloses a method and device for platform software plug-in based on service-oriented architecture, which improves the application flexibility and scalability of entity plug-ins, enhances the function response rate of entity plug-ins, and enables entity plug-ins to better adapt to different application scenarios and user requirements.

[0073] Embodiment 1

[0074] Please refer to Figure 1 , Figure 1 , which is a schematic flowchart of a method for platform software plug-in based on service-oriented architecture disclosed in an embodiment of the present invention. Among them, Figure 1 The described method for platform software plug-in based on service-oriented architecture can be applied to plug-in desktop software, app mobile terminal programs, human-machine interface interaction software, etc. The embodiments of the present invention do not limit the type of platform software. Optionally, the method can be implemented by a software plug-in device, which can be integrated in a hardware platform supporting the plug-in method, such as a smart computer, a smart phone, etc.; or it can be a local server or a cloud server for processing the plug-in process of platform software based on service-oriented architecture, etc. The embodiments of the present invention do not limit.

[0075] As Figure 1 shown, the method for platform software plug-in based on service-oriented architecture may include the following operations:

[0076] 101. Obtain the plug-in requirement information of the platform software, and construct multiple entity plug-ins required to start the platform software according to the plug-in requirement information.

[0077] In the embodiments of the present invention, according to the plug-in requirement information of the platform software, the plug-in protocol definition of the platform software is determined. Then, based on the plug-in protocol definition, upper-layer abstract encapsulation and protocol modeling of the platform software are performed. Finally, entity plugs are constructed, such as business logic plugs, third-party service integration plugs (such as plugs for connecting and integrating third-party services, including payment gateways, social media platforms, and mail services), development and debugging tool plugs, security and compliance plugs (such as plugs for implementing data encryption and access control), performance monitoring plugs (such as plugs for monitoring the memory / CPU occupancy of software), system plugs (such as plugs for interacting with external systems and servers), page plugs (such as plugs for customizing and extending user interfaces), and so on. Optionally, the plug-in requirement information includes at least one of plug-in function requirement information (such as plug-in functions to be supported and extended), modular development requirement information, plug-in update requirement information (such as upgrade time and upgrade version information), and plug-in deployment requirement information.

[0078] 102. Based on a preset service-oriented architecture system, a set of plug-in engines corresponding to all entity plugs is constructed.

[0079] In the embodiments of the present invention, optionally, based on the SOA architecture system, a set of plug-in engines corresponding to all entity plugs is constructed, that is, a plug-in framework (for the specific plug-in framework system, reference can be made to Figure 6 , Figure 6 which is a schematic structural diagram of a plug-in framework system disclosed in the embodiments of the present invention), and it may include a plug-in engine, an event engine, a rendering engine, a template parsing engine, a storage engine, a data synchronization engine, a plug-in template engine, an open interface engine component, and so on, aiming to improve the modularity and scalability of the platform software, simplify the loading, communication, and management of plugs, and provide developers with plug debugging and efficient secondary development of plugs.

[0080] Furthermore, it should be noted that the functions of each basic plugin engine in the plugin engine set are as follows: The plugin engine can be used to discover, load, register, and manage entity plugins; the event engine can be used to handle message communication between entity plugins; the rendering engine can be used to render the plugin to be rendered according to the association configuration information related to plugin rendering and the plugin type of the plugin to be rendered; the template parsing engine can be used to parse the plugin template language; the storage engine can be used to store the local plugin metadata information of the platform software; the data synchronization engine can be used to synchronize the multi-terminal plugin metadata information of the platform software and support the export of configuration files; the plugin template engine can be used to provide some development example templates, such as storing the basic example programs of system plugins and page UI plugins in the plugin template center, and providing scaffolding support for the rapid secondary development of plugins through the scaffolding module and the template center; the open interface engine component can be used to provide the APIs of some native capabilities, built-in functions, and application service interfaces provided by the software program.

[0081] 103. During the process of starting the platform software, the plugin to be rendered in all entity plugins is rendered through the target engine in the plugin engine set to obtain the rendered plugin, and the startup process of the platform software is completed based on the rendered plugin.

[0082] In the embodiment of the present invention, further, the method further includes:

[0083] During the process of rendering the plugin to be rendered in all entity plugins, when there is communication content between the plugin to be rendered and the target object, the event engine in the plugin engine set forwards the communication content between the plugin to be rendered and the target object through the pre-created proxy object.

[0084] In this optional embodiment, the target object includes the main process of the platform software or other plugins, and the other plugins may include one or more of a business logic plugin, a third-party service integration plugin, a development and debugging tool plugin, a security and compliance plugin, a performance monitoring plugin, other system plugins, other page plugins, and so on. It should be noted that when there is a plugin call requirement, the plugin corresponding to the plugin call instruction is obtained through the plugin manager and loaded into the platform software, and the entity plugins communicate with each other through the event engine to achieve plugin interoperability.

[0085] In the event engine mechanism, in the application layer of the data access plug-ins between entity plug-ins and between entity plug-ins and the main process, the complexity of cross-process communication can be simplified through the event proxy and forwarding mechanism to improve development efficiency. The interaction process is as follows: When an entity plug-in needs to communicate with the main process / other plug-ins, the event engine will forward the method calls between entity plug-ins / between entity plug-ins and the main process to the actual objects in the main process / other plug-ins through a pre-created proxy object (this proxy object is actually a reference pointing to the actual object in the main process / other plug-ins). Among them, IPC mechanism can be used to implement the communication during the forwarding process; Secondly, for the data flow monitoring during the plug-in rendering process, the event engine will perform data logging and monitor the event flow triggering of the life cycle during the communication process between entity plug-ins / between entity plug-ins and the main process to complete the communication process between entity plug-ins / between entity plug-ins and the main process during the rendering cycle process.

[0086] It can be seen that implementing the embodiments of the present invention can render the plug-ins to be rendered through a set of plug-in engines constructed based on the service-oriented architecture system, and then start the platform software based on the rendered plug-ins. In this way, for application software programs, plug-in development allows application components to be designed as pluggable modules, improving the application flexibility and scalability of entity plug-ins, enhancing the functional response rate of entity plug-ins, enabling entity plug-ins to better adapt to different application scenarios and user needs; at the same time, it also reduces the system maintenance cost, enabling the software to more quickly adapt to changes in business requirements.

[0087] Embodiment 2

[0088] Please refer to Figure 2 , Figure 2 which is a schematic flowchart of another platform software plug-in method based on the service-oriented architecture disclosed in the embodiments of the present invention. Among them, Figure 2 the described platform software plug-in method based on the service-oriented architecture can be applied to plug-in desktop software, app mobile programs, human-machine interface interaction software, etc. The embodiments of the present invention do not limit the type of platform software. Optionally, this method can be implemented by a software plug-in device, which can be integrated in a hardware platform supporting the plug-in method, such as a smart computer, a smart phone, etc.; it can also be a local server or a cloud server for processing the platform software plug-in process based on the service-oriented architecture, etc. The embodiments of the present invention do not limit. As Figure 2 shown, the platform software plug-in method based on the service-oriented architecture may include the following operations:

[0089] 201. Obtain the plug-in requirement information of the platform software.

[0090] 202. According to the plug-in requirement information, perform plug-in definition operations on the platform software to obtain the plug-in definition information of the platform software.

[0091] In the embodiments of the present invention, performing plug-in definition on the platform software can ensure the compatibility and interoperability between the subsequently created entity plug-ins. Among them, the plug-in definition information includes plug-in metadata and plug-in target information. Optionally, the plug-in metadata includes at least one of plug-in name information, plug-in execution instruction information, and rendering method information, and the plug-in target information includes at least one of plug-in interface protocol information, plug-in data structure information, plug-in communication method information, and plug-in type information.

[0092] 203. According to the plug-in definition information, perform plug-in abstraction encapsulation and protocol modeling operations on the platform software to obtain multiple entity plug-ins required to start the platform software.

[0093] In the embodiments of the present invention, that is, according to the defined entity plug-in standard information (the plug-in definition information of the platform software), perform abstract encapsulation of entity plug-ins and protocol modeling on the platform software, so as to realize the interaction, rendering, and communication processes between entity plug-ins. In this way, by providing a unified plug-in framework, the development and integration of plug-ins can be made more standardized and normalized.

[0094] It should be noted that by designing application components as separate modules, developers can more easily perform separate testing, debugging, and maintenance on the components, which can not only improve the development efficiency of application components but also reduce the risk of system failures caused by modifying application components. In addition, when it is necessary to update application components, only the corresponding plug-ins need to be replaced or upgraded, without redeploying the entire system, thereby reducing the upgrade cost.

[0095] For example, through plug-in design, the map component can easily integrate multiple map services and data sources. Developers can choose to use different map services such as Amap, Baidu Map, or Google Map according to their needs, and can easily switch data sources to obtain the latest map data. This flexibility enables the map component to better meet the needs and preferences of different users.

[0096] 204. Based on a preset service-oriented architecture system, construct a set of plug-in engines corresponding to all entity plug-ins.

[0097] 205. During the process of starting the platform software, through the target engine in the set of plug-in engines, render the plug-ins to be rendered in all entity plug-ins to obtain the rendered plug-ins, and complete the startup process of the platform software based on the rendered plug-ins.

[0098] In the embodiments of the present invention, for other descriptions of steps 201, 204, and 205, please refer to the detailed descriptions of steps 101 and 103 in Embodiment 1, and the embodiments of the present invention will not elaborate further.

[0099] It can be seen that implementing the embodiments of the present invention can perform plug-in definition operations on platform software through plug-in demand information to obtain plug-in definition information of the platform software. Subsequently, based on the plug-in definition information, plug-in abstraction encapsulation and protocol modeling operations are performed on the platform software to obtain entity plug-ins of the platform software. At the same time, based on the SOA architecture, a set of plug-in engines corresponding to the entity plug-ins is constructed, so as to render the entity plug-ins through the set of plug-in engines to complete the normal startup process of the platform software. In this way, the introduction of entity plug-ins can enable the addition of new functions or services without large-scale modification of the entire platform software, and only the corresponding entity plug-ins need to be developed, thereby improving the flexibility and scalability of the platform software. In addition, through software plug-inization, components can be more easily reused and shared, which not only saves development time but also ensures the quality and consistency of the code, and is conducive to promoting the continuous progress of application component technology.

[0100] In an optional embodiment, the method further includes:

[0101] Determine the association configuration information of the plug-ins to be rendered among all entity plug-ins.

[0102] In this optional embodiment, further, the plug-ins to be rendered among all entity plug-ins are rendered through the target engine in the set of plug-in engines to obtain the rendered plug-ins, and the startup process of the platform software is completed based on the rendered plug-ins, including:

[0103] The plug-ins to be rendered among all entity plug-ins are rendered through the target engine in the set of plug-in engines and the association configuration information to obtain the rendered plug-ins, and the startup process of the platform software is completed based on the rendered plug-ins.

[0104] In this optional embodiment, optionally, the association configuration information of the plug-ins to be rendered includes at least one of the configuration association relationship between the plug-ins to be rendered and the system modules of the platform software, the menu-window configuration association relationship between the plug-ins to be rendered and the pages to be constructed of the platform software, and the window-interface rendering element configuration association relationship between the plug-ins to be rendered and the pages to be constructed. Among them, the window-interface rendering element configuration association relationship between the plug-ins to be rendered and the pages to be constructed includes the interface rendering element-window query condition configuration association relationship, the interface rendering element-window result data column configuration association relationship, and the interface rendering element-window operation information configuration association relationship between the plug-ins to be rendered and the pages to be constructed, etc., such as the prompt information configuration during user input, the callback events triggered during user input, the callback events triggered by user key presses, etc.

[0105] It should be noted that rendering the to-be-rendered plug-in, that is, implementing the function of the to-be-rendered plug-in: developing the plug-in according to the open interface engine provided by the plug-in system and the template plug-in engine. The plug-in layer is responsible for implementing most of the business functions, including query functions, operation functions, and data display functions. After the plug-in is implemented, the rendering engine of the plug-in framework is used to render and display operation buttons, query conditions, and result data.

[0106] It can be seen that this optional embodiment can render the to-be-rendered disassembled parts by configuring the associated configuration information of the to-be-rendered plug-in and the target engine in the plug-in engine set, thereby realizing the startup process of the platform software. In this way, the seamless integration between the entity plug-in and the platform software is ensured, the development and deployment process of the entity plug-in is simplified, and the integrity and stability of the plug-in function are guaranteed; at the same time, by developing the plug-in through the open interface engine and the template plug-in engine provided by the plug-in system, core business functions such as rapid query, operation, and data display can be realized, which is beneficial to shortening the software development cycle and improving the business response speed.

[0107] In another optional embodiment, rendering the to-be-rendered plug-ins in all entity plug-ins through the target engine in the plug-in engine set and the associated configuration information in the above steps to obtain the rendered plug-ins, and completing the startup process of the platform software based on the rendered plug-ins includes:

[0108] Through the plug-in engine in the plug-in engine set, obtain the plug-in metadata corresponding to the to-be-rendered plug-ins in all entity plug-ins, and parse the plug-in metadata corresponding to the to-be-rendered plug-ins to obtain the parsed metadata of the to-be-rendered plug-ins;

[0109] Through the rendering engine in the plug-in engine set, and according to the parsed metadata of the to-be-rendered page plug-in and the associated configuration information, perform a first rendering operation on the to-be-rendered page plug-in to obtain the rendered page plug-in, and through the rendering engine, and according to the parsed metadata of the to-be-rendered system plug-in and the associated configuration information, perform a second rendering operation on the to-be-rendered system plug-in to obtain the rendered system plug-in;

[0110] According to the rendered page plug-in, construct the software page corresponding to the platform software, and complete the startup process of the platform software based on the software page, the rendered system plug-in, and the loaded plug-ins in all entity plug-ins.

[0111] In this optional embodiment, the plug-in engine can manage all entity plug-ins, such as plug-in loading, plug-in cache detection, plug-in download, etc. (for the specific management process, please refer to Figure 7 , Figure 7 which is the plug-in management flow chart of a plug-in engine disclosed in the embodiments of the present invention).

[0112] Further, the plug-in to be rendered is a non-loaded plug-in. Among them, the plug-in to be rendered includes the plug-in to be rendered for the page and the plug-in to be rendered for the system. It should be noted that the plug-in to be rendered for the system may not have a UI page and will be registered during the operation of the platform software; while the plug-in to be rendered for the page will have a UI interface and can be used for interaction with the user.

[0113] It can be seen that this optional embodiment can parse the plug-in metadata corresponding to the plug-in to be rendered, and then through the rendering engine, and according to the parsed metadata and associated configuration information, render the plug-in to be rendered for the page and the plug-in to be rendered for the system, so as to realize the normal startup process of the platform software. In this way, the function implementation of the system plug-in is ensured and the user can interact with the platform software more intuitively, which is conducive to improving the richness and interactivity of the user interface, and thus conducive to enhancing the user experience and satisfaction of using the platform software.

[0114] In another optional embodiment, the first rendering operation on the plug-in to be rendered for the page is performed through the rendering engine in the plug-in engine set and according to the parsed metadata of the plug-in to be rendered for the page and the associated configuration information to obtain the rendered plug-in for the page, including:

[0115] Judge whether there is a corresponding rendering template language for the plug-in to be rendered for the page through the rendering engine in the plug-in engine set;

[0116] When the judgment result is negative, obtain the user-defined interface construction file corresponding to the page to be rendered, and perform the first rendering operation on the plug-in to be rendered for the page according to the user-defined interface construction file, the parsed metadata of the plug-in to be rendered for the page and the associated configuration information to obtain the rendered plug-in for the page;

[0117] When the judgment result is positive, parse the rendering template language according to the preset parsing rules to obtain the parsed rendering template language, and perform the first rendering operation on the plug-in to be rendered for the page according to the parsed rendering template language, the parsed metadata and the associated configuration information to obtain the rendered plug-in for the page.

[0118] In this optional embodiment, with reference to Figure 8 , Figure 8The plug-in rendering flowchart of a rendering engine disclosed in an embodiment of the present invention: namely, there are two types of page plug-in rendering processes: one is to construct a plug-in page through a rendering template language, and the other is to perform rendering by reading a user-defined UI plug-in page construction file. Among them, the rendering template language is a way of expressing by abstracting page rendering elements (such as text boxes, input boxes, operation buttons, images, etc.) and formulating rendering rules, which needs to be parsed by a plug-in language parsing engine according to the abstract expression rules to obtain rendering instructions (that is, the parsed rendering template language); for the rendering instructions, they are adapted and constructed according to different rendering engines for the plug-in template language, and finally the page is constructed through the rendering engine.

[0119] It can be seen that this optional embodiment can render the page plug-in to be rendered through the rendering template language corresponding to the page plug-in to be rendered or the user-defined interface construction file. In this way, the rendering flexibility of the page plug-in to be rendered can be improved, the diversified page construction requirements can be met, which is beneficial to improving the flexibility and scalability of page rendering and enhancing the user experience; at the same time, it is also beneficial to reduce redundant calculations in the rendering process and improve the efficiency of page rendering.

[0120] In another optional embodiment, through the rendering engine, and according to the parsed metadata and associated configuration information of the system plug-in to be rendered, a second rendering operation is performed on the system plug-in to be rendered to obtain a rendered system plug-in, including:

[0121] Through the rendering engine, and according to the parsed metadata and associated configuration information of the system plug-in to be rendered, register the system plug-in to be rendered in the startup cache of a preset system plug-in queue;

[0122] During the execution of the system plug-in queue, when it is necessary to start the system plug-in to be rendered, start the system plug-in to be rendered to obtain a started system plug-in, which is used as the rendered system plug-in.

[0123] In this optional embodiment, as Figure 8 shown, that is, performing a second rendering operation on the system plug-in to be rendered can be understood as registering and starting the execution of the system plug-in to be rendered. Finally, according to the software page, the started system plug-in, and the loaded plug-ins, the platform software can be started normally. Among them, the rendered system plug-in is used to indicate that the plug-in function of the started system plug-in can be called.

[0124] It can be seen that this optional embodiment can register and start the execution of the plugin to be rendered, so as to implement the second rendering operation on the plugin to be rendered. In this way, through the preset system plugin queue and the startup cache management plugin, the loading and execution order of the plugin can be effectively controlled, the system stability and compatibility are improved, and the instant availability of the plugin function is ensured, optimizing the startup process of the platform software.

[0125] In summary, for the pluginization process of the platform software based on the service-oriented architecture in the embodiments of the present invention, the pluginization process of the following desktop software Electron can be referred to:

[0126] First, define the plugin protocol for Electron to obtain information such as the unique identifier of the plugin, the plugin name, the plugin description, the plugin entry, the native capability interaction (wherein, for the interaction of the system native capabilities, it can be implemented through the system layer API based on NodeJS provided by Electron, such as exposing an interface in the program Open API and then calling it in preload), the plugin type, the plugin execution instruction, etc., and then construct the entity plugin of Electron;

[0127] On the other hand, after constructing the plugin engine set and when starting the system, the system plugin can directly start and execute through the main entry defined by the plugin metadata. In this way, the purpose of directly registering the background service and directly updating the plugin is achieved through the capabilities provided by NodeJS, reducing the problems of slow and complex plugin updates. At the same time, the page UI plugin can implement page rendering based on the BrowserView rendering window of Electron, and configure and parse the plugin metadata information through the plugin language parsing engine (such as parsing the type value, extracting the information of the rendering input box element, and finally submitting the instruction through the plugin rendering command and implementing the interaction between the page data and the background service through the execute submit interface) to construct the software page of Electron. In this way, through BrowserView, window-level rendering existing in the operating system can be achieved, and its underlying uses the Chrome rendering engine, enabling fast and efficient rendering of the browser;

[0128] During this rendering process, the event engine in the plugin engine set can use the remote module of Electron to complete the communication between plugins or between plugins and the main process during the rendering process. Secondly, for the entire rendering cycle of the plugin, lifecycle data points can be buried through the event stream mechanism; at the application layer of the plugin, communication can be achieved by listening to the events triggered between plugins or between plugins and the main process (wherein, the main process can use a means similar to JSONP and execute JavaScript code snippets through the executeJavaScript interface of the Electron context).

[0129] In addition, for the storage management method of the plugin engine involved in the rendering process, the npm package manager can be used to achieve npm plugin release, plugin debugging in the npm link way, plugin installation, etc., or a custom plugin management service can be implemented, such as loading, registering, and managing plugins, etc.; and the data synchronization engine can be used to synchronize the metadata information of the software's multi-terminal plugins and support the export of configuration files (wherein, the synchronization of metadata information can be implemented based on the WebDAV technology. The WebDAV technology is a communication protocol based on the HTTP 1.1 protocol. It extends HTTP 1.1 and adds some new methods outside several HTTP standard methods such as GET, POST, and HEAD, enabling applications to directly read and write to the Web Server, supporting file locking (Locking) and unlocking (Unlock), and also supporting file version control, supporting the extension of mapping the network disk to the local disk, etc.); and the plugin template engine can provide some development example templates, such as system plugins and page UI plugins, to provide scaffolding support for the rapid secondary development of plugins. For example, the front-end scaffolding can be implemented using NodeJS and the template can be built using a code repository. Among them, the NodeJS scaffolding can be used to interactively select the plugin name and plugin type, etc. when the developer creates a project, and finally generate a plugin project template, and the code repository can be used to prepare the example code of the project in advance, and then download the template when interacting with the NodeJS scaffolding, thus realizing project construction; and the open interface engine mainly includes some native capabilities of the software program, such as the underlying capabilities of the system, functions such as the notification bar and clipboard, built-in functions, APIs of application service interfaces, etc. Among them, the exposure of the native capability API can be achieved through the preload script of Electron.

[0130] Therefore, through the above pluginization process of the desktop software Electron, the rapid and efficient display of the desktop software interface can be realized, which is conducive to friendly interaction with users.

[0131] Embodiment Three

[0132] Please refer toFigure 3 , Figure 3 is a schematic structural diagram of a platform software plug-in device based on a service-oriented architecture disclosed in an embodiment of the present invention. As Figure 3 shown, the platform software plug-in device based on the service-oriented architecture may include:

[0133] An acquisition module 301, configured to acquire plug-in requirement information of the platform software;

[0134] A construction module 302, configured to construct a plurality of entity plug-ins required to start the platform software according to the plug-in requirement information; and construct a set of plug-in engines corresponding to all entity plug-ins based on a preset service-oriented architecture system;

[0135] A start module 303, configured to, during the process of starting the platform software, render a to-be-rendered plug-in among all entity plug-ins through a target engine in the set of plug-in engines to obtain a rendered plug-in, and complete the start process of the platform software based on the rendered plug-in.

[0136] In the embodiment of the present invention, the plug-in requirement information includes at least one of plug-in function requirement information, modular development requirement information, plug-in update requirement information, and plug-in deployment requirement information.

[0137] Further, the device further includes:

[0138] A forwarding module 305, configured to, during the process of the start module 303 rendering the to-be-rendered plug-in among all entity plug-ins, when there is communication content between the to-be-rendered plug-in and a target object, forward the communication content between the to-be-rendered plug-in and the target object through a pre-created proxy object.

[0139] In this optional embodiment, optionally, the target object includes a main process of the platform software or other plug-ins.

[0140] It can be seen that implementing Figure 3 the described platform software plug-in device based on the service-oriented architecture can render the to-be-rendered plug-in through the set of plug-in engines constructed based on the service-oriented architecture system, and then implement the start process of the platform software based on the rendered plug-in. In this way, for application software programs, plug-in development allows application components to be designed as pluggable modules, improving the application flexibility and scalability of entity plug-ins, enhancing the function response rate of entity plug-ins, enabling entity plug-ins to better adapt to different application scenarios and user requirements; at the same time, it also reduces the system maintenance cost, enabling the software to more quickly adapt to changes in business requirements.

[0141] In an alternative embodiment, the manner in which the building module 302 builds multiple entity plugins required to start the platform software according to the plug-in requirement information specifically includes:

[0142] Perform a plug-in definition operation on the platform software according to the plug-in requirement information to obtain the plug-in definition information of the platform software;

[0143] Perform plug-in abstraction encapsulation and protocol modeling operations on the platform software according to the plug-in definition information to obtain multiple entity plugins required to start the platform software.

[0144] In this alternative embodiment, the plug-in definition information includes plug-in metadata and plug-in target information. The plug-in metadata includes at least one of plug-in name information, plug-in execution instruction information, and rendering method information. The plug-in target information includes at least one of plug-in interface protocol information, plug-in data structure information, plug-in communication method information, and plug-in type information.

[0145] It can be seen that implementing Figure 4 The described platform software plug-in device based on the service-oriented architecture can perform a plug-in definition operation on the platform software through the plug-in requirement information to obtain the plug-in definition information of the platform software, and then perform plug-in abstraction encapsulation and protocol modeling operations on the platform software according to the plug-in definition information to obtain the entity plug-ins of the platform software; at the same time, based on the SOA system, build a set of plug-in engines corresponding to the entity plug-ins, so as to render the entity plug-ins through the set of plug-in engines to complete the normal startup process of the platform software. In this way, the introduction of entity plug-ins can enable the addition of new functions or services without large-scale modification of the entire platform software, and only the corresponding entity plug-ins need to be developed, thereby improving the flexibility and scalability of the platform software; in addition, through software plug-in, components can be more easily reused and shared, which not only saves development time, but also ensures the quality and consistency of the code, and is conducive to promoting the continuous progress of application component technology.

[0146] In another alternative embodiment, the device further includes:

[0147] A determination module 304, configured to determine the association configuration information of the plug-in to be rendered among all entity plug-ins;

[0148] Among them, the manner in which the startup module 303 renders the plug-in to be rendered among all entity plug-ins through the target engine in the set of plug-in engines to obtain the rendered plug-in and completes the startup process of the platform software specifically includes:

[0149] Render the plug-in to be rendered among all entity plug-ins through the target engine in the set of plug-in engines and the association configuration information to obtain the rendered plug-in, and complete the startup process of the platform software based on the rendered plug-in.

[0150] In this optional embodiment, the associated configuration information of the plugin to be rendered includes at least one of the configuration association relationship between the plugin to be rendered and the system modules of the platform software, the menu-window configuration association relationship between the plugin to be rendered and the page to be constructed of the platform software, and the window-interface rendering element configuration association relationship between the plugin to be rendered and the page to be constructed.

[0151] It can be seen that implementing Figure 4 The described platform software plug-in device based on the service-oriented architecture can configure the target engine in the plugin engine set through the associated configuration information of the plugin to be rendered, so as to render the plugin to be rendered, thereby realizing the startup process of the platform software. In this way, the seamless integration between the physical plugin and the platform software is ensured, the development and deployment process of the physical plugin is simplified, and the integrity and stability of the plugin function are guaranteed. At the same time, through the open interface engine and template plugin engine provided by the plugin system for plugin development, core business functions such as rapid query, operation, and data display can be realized, which is beneficial to shortening the software development cycle and improving the business response speed.

[0152] In another optional embodiment, the specific manner in which the startup module 303 renders the plugin to be rendered in all physical plugins through the target engine in the plugin engine set and the associated configuration information, obtains the rendered plugin, and completes the startup process of the platform software based on the rendered plugin includes:

[0153] Through the plugin engine in the plugin engine set, obtain the plugin metadata corresponding to the plugin to be rendered in all physical plugins, and parse the plugin metadata corresponding to the plugin to be rendered to obtain the parsed metadata of the plugin to be rendered;

[0154] Through the rendering engine in the plugin engine set, and according to the parsed metadata of the page plugin to be rendered and the associated configuration information, perform a first rendering operation on the page plugin to be rendered to obtain the rendered page plugin, and through the rendering engine, and according to the parsed metadata of the system plugin to be rendered and the associated configuration information, perform a second rendering operation on the system plugin to be rendered to obtain the rendered system plugin;

[0155] According to the rendered page plugin, construct the software page corresponding to the platform software, and complete the startup process of the platform software based on the software page, the rendered system plugin, and the loaded plugins in all physical plugins.

[0156] In this optional embodiment, the plugin to be rendered is an unloaded plugin, and the plugin to be rendered includes the page plugin to be rendered and the system plugin to be rendered.

[0157] It can be seen that implementing Figure 4The described platform software plug-in device based on the service-oriented architecture can parse the plug-in metadata corresponding to the plug-in to be rendered, and then, through the rendering engine, and according to the parsed metadata and associated configuration information, render the page plug-in to be rendered and the system plug-in to be rendered, so as to realize the normal startup process of the platform software. In this way, the function implementation of the system plug-in is ensured and the user can interact with the platform software more intuitively, which is conducive to improving the richness and interactivity of the user interface, and thus conducive to enhancing the user experience and satisfaction of using the platform software.

[0158] In yet another alternative embodiment, the specific manner in which the startup module 303 performs a first rendering operation on the page plug-in to be rendered through the rendering engine in the plug-in engine set and according to the parsed metadata of the page plug-in to be rendered and the associated configuration information to obtain the rendered page plug-in includes:

[0159] Through the rendering engine in the plug-in engine set, determine whether there is a corresponding rendering template language for the page plug-in to be rendered;

[0160] When the judgment result is negative, obtain the user-defined interface construction file corresponding to the page to be rendered, and perform a first rendering operation on the page plug-in to be rendered according to the user-defined interface construction file, the parsed metadata of the page plug-in to be rendered, and the associated configuration information to obtain the rendered page plug-in;

[0161] When the judgment result is positive, parse the rendering template language according to the preset parsing rules to obtain the parsed rendering template language, and perform a first rendering operation on the page plug-in to be rendered according to the parsed rendering template language, the parsed metadata, and the associated configuration information to obtain the rendered page plug-in.

[0162] It can be seen that implementing Figure 4 The described platform software plug-in device based on the service-oriented architecture can render the page plug-in to be rendered through the rendering template language corresponding to the page plug-in to be rendered or the user-defined interface construction file. In this way, the rendering flexibility of the page plug-in to be rendered can be improved, meeting diverse page construction requirements, which is conducive to enhancing the flexibility and scalability of page rendering and improving the user experience; at the same time, it is also conducive to reducing redundant calculations during the rendering process and improving the efficiency of page rendering.

[0163] In yet another alternative embodiment, the specific manner in which the startup module 303 performs a second rendering operation on the system plug-in to be rendered through the rendering engine and according to the parsed metadata of the system plug-in to be rendered and the associated configuration information to obtain the rendered system plug-in includes:

[0164] Through a rendering engine, and based on the parsed metadata of the system plugin to be rendered and the associated configuration information, register the system plugin to be rendered in the startup cache of a preset system plugin queue;

[0165] During the execution of the system plugin queue, when it is necessary to start the system plugin to be rendered, start the system plugin to be rendered to obtain the started system plugin, which is used as the rendered system plugin.

[0166] In this optional embodiment, the rendered system plugin is used to indicate that the plugin function of the started system plugin can be called.

[0167] It can be seen that implementing Figure 4 the described platform software plug-in device based on the service-oriented architecture can register and start the execution of the system plugin to be rendered, so as to implement the second rendering operation on the system plugin to be rendered. In this way, through the preset system plugin queue and startup cache management plugin, the loading and execution order of the plugins can be effectively controlled, the system stability and compatibility are improved, and the instant availability of the plugin function is ensured, optimizing the startup process of the platform software.

[0168] Embodiment Four

[0169] Please refer to Figure 5 , Figure 5 which is a schematic structural diagram of another platform software plug-in device based on the service-oriented architecture disclosed in the embodiments of the present invention. As Figure 5 shown, the platform software plug-in device based on the service-oriented architecture may include:

[0170] A memory 401 storing executable program code;

[0171] A processor 402 coupled to the memory 401;

[0172] The processor 402 calls the executable program code stored in the memory 401 and executes the steps in the platform software plug-in method based on the service-oriented architecture described in Embodiment One or Embodiment Two of the present invention.

[0173] Embodiment Five

[0174] The embodiments of the present invention disclose a computer storage medium, which stores computer instructions. When the computer instructions are called, they are used to execute the steps in the platform software plug-in method based on the service-oriented architecture described in Embodiment One or Embodiment Two of the present invention.

[0175] Embodiment Six

[0176] An embodiment of the present invention discloses a computer program product, which includes a non-transitory computer-readable storage medium storing a computer program, and the computer program is operable to cause a computer to execute the steps in the method for platform software plug-in based on a service-oriented architecture described in Embodiment 1 or Embodiment 2.

[0177] The device embodiments described above are merely illustrative. The modules described as separate components may or may not be physically separated, and the components shown as modules may or may not be physical modules, that is, they may be located in one place or distributed to multiple network modules. Some or all of the modules can be selected according to actual needs to achieve the purpose of the solution of this embodiment. A person of ordinary skill in the art can understand and implement it without creative labor.

[0178] Through the specific descriptions of the above embodiments, those skilled in the art can clearly understand that each embodiment can be implemented by means of software plus a necessary general hardware platform, and of course, it can also be implemented by hardware. Based on such an understanding, the above technical solution, in essence, or the part that contributes to the prior art, can be embodied in the form of a software product, and the computer software product can be stored in a computer-readable storage medium. The storage medium includes a read-only memory (ROM), a random access memory (RAM), a programmable read-only memory (PROM), an erasable programmable read-only memory (EPROM), a one-time programmable read-only memory (OTPROM), an electrically-erasable programmable read-only memory (EEPROM), a compact disc read-only memory (CD-ROM) or other optical disc memories, a magnetic disk memory, a tape memory, or any other computer-readable medium capable of carrying or storing data.

[0179] Finally, it should be noted that what is disclosed in a platform software plug-in method and device based on a service-oriented architecture according to the embodiments of the present invention is only the preferred embodiments of the present invention, which are only used to illustrate the technical solutions of the present invention, rather than to limit it; although the present invention has been described in detail with reference to the foregoing embodiments, those of ordinary skill in the art should understand that they can still modify the technical solutions described in the foregoing embodiments, or perform equivalent replacements on some of the technical features; and these modifications or replacements do not make the essence of the corresponding technical solutions deviate from the spirit and scope of the technical solutions of the embodiments of the present invention.

Claims

1. A method for platform software plug-in based on service-oriented architecture, characterized in that The method includes: Obtaining the plug-in requirement information of the platform software, and constructing a plurality of entity plug-ins required to start the platform software according to the plug-in requirement information; the plug-in requirement information includes at least one of plug-in function requirement information, modular development requirement information, plug-in update requirement information, and plug-in deployment requirement information; Based on a preset service-oriented architecture system, constructing a set of plug-in engines corresponding to all the entity plug-ins; During the process of starting the platform software, rendering the plug-ins to be rendered among all the entity plug-ins through the target engine in the set of plug-in engines to obtain the rendered plug-ins, and completing the startup process of the platform software based on the rendered plug-ins.

2. The method for platform software plug-in based on service-oriented architecture according to claim 1, wherein The constructing a plurality of entity plug-ins required to start the platform software according to the plug-in requirement information includes: Performing a plug-in definition operation on the platform software according to the plug-in requirement information to obtain the plug-in definition information of the platform software; the plug-in definition information includes plug-in metadata and plug-in target information, the plug-in metadata includes at least one of plug-in name information, plug-in execution instruction information, and rendering method information, and the plug-in target information includes at least one of plug-in interface protocol information, plug-in data structure information, plug-in communication method information, and plug-in type information; Performing plug-in abstraction encapsulation and protocol modeling operations on the platform software according to the plug-in definition information to obtain a plurality of entity plug-ins required to start the platform software.

3. The method for platform software plug-in based on service-oriented architecture according to claim 2, wherein The method further includes: Determining the association configuration information of the plug-ins to be rendered among all the entity plug-ins; the association configuration information of the plug-ins to be rendered includes at least one of the configuration association relationship between the plug-ins to be rendered and the system modules of the platform software, the menu-window configuration association relationship between the plug-ins to be rendered and the pages to be constructed of the platform software, and the window-interface rendering element configuration association relationship between the plug-ins to be rendered and the pages to be constructed; Among them, the rendering the plug-ins to be rendered among all the entity plug-ins through the target engine in the set of plug-in engines to obtain the rendered plug-ins, and completing the startup process of the platform software based on the rendered plug-ins includes: Rendering the plug-ins to be rendered among all the entity plug-ins through the target engine in the set of plug-in engines and the association configuration information to obtain the rendered plug-ins, and completing the startup process of the platform software based on the rendered plug-ins.

4. The method for plugin-izing platform software based on service-oriented architecture according to claim 3, characterized in that, The rendering the plug-ins to be rendered among all the entity plug-ins through the target engine in the set of plug-in engines and the association configuration information to obtain the rendered plug-ins, and completing the startup process of the platform software based on the rendered plug-ins includes: Through the plug-in engines in the set of plug-in engines, obtain the plug-in metadata corresponding to the to-be-rendered plug-ins among all the entity plug-ins, and parse the plug-in metadata corresponding to the to-be-rendered plug-ins to obtain the parsed metadata of the to-be-rendered plug-ins; the to-be-rendered plug-ins are unloaded plug-ins, and the to-be-rendered plug-ins include to-be-rendered page plug-ins and to-be-rendered system plug-ins. Through the rendering engine in the set of plug-in engines, and based on the parsed metadata of the to-be-rendered page plug-in and the associated configuration information, perform a first rendering operation on the to-be-rendered page plug-in to obtain a rendered page plug-in, and through the rendering engine, and based on the parsed metadata of the to-be-rendered system plug-in and the associated configuration information, perform a second rendering operation on the to-be-rendered system plug-in to obtain a rendered system plug-in. Based on the rendered page plug-in, construct the software page corresponding to the platform software, and complete the startup process of the platform software based on the software page, the rendered system plug-in, and the loaded plug-ins among all the entity plug-ins.

5. The method for plugin of platform software based on service-oriented architecture according to claim 4, wherein The step of performing a first rendering operation on the to-be-rendered page plug-in through the rendering engine in the set of plug-in engines and based on the parsed metadata of the to-be-rendered page plug-in and the associated configuration information to obtain a rendered page plug-in includes: Through the rendering engine in the set of plug-in engines, determine whether there is a corresponding rendering template language for the to-be-rendered page plug-in. When the determination result is no, obtain the user-defined interface construction file corresponding to the to-be-rendered page, and based on the user-defined interface construction file, the parsed metadata of the to-be-rendered page plug-in, and the associated configuration information, perform a first rendering operation on the to-be-rendered page plug-in to obtain a rendered page plug-in. When the determination result is yes, parse the rendering template language according to a preset parsing rule to obtain the parsed rendering template language, and based on the parsed rendering template language, the parsed metadata, and the associated configuration information, perform a first rendering operation on the to-be-rendered page plug-in to obtain a rendered page plug-in.

6. The method for plugin of platform software based on service-oriented architecture according to claim 4, characterized in that The step of performing a second rendering operation on the to-be-rendered system plug-in through the rendering engine and based on the parsed metadata of the to-be-rendered system plug-in and the associated configuration information to obtain a rendered system plug-in includes: Through the rendering engine, and based on the parsed metadata of the to-be-rendered system plug-in and the associated configuration information, register the to-be-rendered system plug-in in the startup cache of a preset system plug-in queue. During the execution of the system plug-in queue, when it is necessary to start the to-be-rendered system plug-in, start the to-be-rendered system plug-in to obtain a started system plug-in, which is used as the rendered system plug-in.

7. The method for platform software plug-in based on service-oriented architecture according to any one of claims 1-6, characterized in that The method further includes: During the process of rendering the plug-ins to be rendered in all the entity plug-ins, when there is communication content between the plug-in to be rendered and the target object, the event engine in the plug-in engine set forwards the communication content between the plug-in to be rendered and the target object through a pre-created proxy object; the target object includes the main process of the platform software or other plug-ins.

8. A platform software plug-in device based on a service-oriented architecture, characterized in that, The device includes: An acquisition module, configured to acquire the plug-in requirement information of the platform software; A construction module, configured to construct a plurality of entity plug-ins required to start the platform software according to the plug-in requirement information; the plug-in requirement information includes at least one of plug-in function requirement information, modular development requirement information, plug-in update requirement information, and plug-in deployment requirement information; based on a preset service-oriented architecture system, construct a plug-in engine set corresponding to all the entity plug-ins; A start module, configured to, during the process of starting the platform software, render the plug-ins to be rendered in all the entity plug-ins through the target engine in the plug-in engine set to obtain the rendered plug-ins, and complete the start process of the platform software based on the rendered plug-ins.

9. A platform software plug-in device based on a service-oriented architecture, characterized in that, The device includes: A memory storing executable program code; A processor coupled to the memory; The processor calls the executable program code stored in the memory and executes the service-oriented architecture-based platform software plug-in method according to any one of claims 1-7.

10. A computer storage medium, characterized in that, The computer storage medium stores computer instructions, which are used to execute the service-oriented architecture-based platform software plug-in method according to any one of claims 1-7 when the computer instructions are called.

Citation Information

Cited By

  • Authentication document generation method and system

    CN121683749A

  • A method and system for generating an authentication document

    CN121683749B