IP Library Granted Patent US 8,572,562
Granted Patent B2
US 8,572,562 · App. 12/209,256 · Granted Oct 29, 2013

Method, apparatus and systems thereof for implementing non-function logic extensibly

Inventors: He Yuan Huang (Beijing, CN); Hua Fang Tan (Beijing, CN); Jian Xu (Haidian District, CN); Jun Zhu (Beijing, CN)
Assignee: International Business Machines Corporation
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,572,562
App. No.
12/209,256
Granted
Oct 29, 2013
Kind
B2
Abstract

A method, apparatus, system, and computer program products for implementing non-function logic extensibly and independently of functional logic, the method comprising the steps of: acquiring association relationship between a policy and a required plug-in based on a loaded policy demand configuration; generating a plug-in context definition according to the acquired association relationship, the plug-in context definition being part of a plug-in context associated with the plug-in, wherein the plug-in context defines services provided by the plug-in and reference to other plug-ins related to the plug-in; and generating a plug-in context object based on the plug-in context definition, wherein the plug-in context object is an instantiated plug-in context definition. According to the method of the present invention, it is possible to perform inexplicit invocation of infrastructure service plug-ins according to application configuration without querying plug-in registry, and better performance is acquired in the process of invoking plug-ins.

Claims (40)

1. A method executed by a central processing unit (CPU) of implementing non-function logic for a plurality of applications extensibly and independently of functional logic for each of the plurality of applications, comprising the steps of:

acquiring an association relationship between a policy and a plug-in required by the application based on a loaded policy demand configuration of the application by querying a plug-in registry containing information on description of the plug-ins and on relationships between the plug-ins based on the policy demand configuration;

generating a plug-in context definition according to the acquired association relationship, the plug-in context definition being part of a plug-in context associated with the plug-in, wherein the plug-in context defines services provided by the plug-in and reference to other plug-ins related to the plug-in;

generating an application runtime object based on a component definition;

generating a plug-in context object based on the plug-in context definition, wherein the plug-in context object is an instantiated plug-in context definition; and

associating the plug-in context object to the application runtime object so as to implement a function of the plug-in for the application.

2. The method as claimed in claim 1 , wherein the step of acquiring association relationship between a policy and a required plug-in based on a loaded policy demand configuration further includes:

querying a policy registry containing information on policies supported by the plug-ins and on relationships between the policies based on the policy demand configuration; and

mapping the policy demand configuration to corresponding plug-in by further querying the plug-in registry based on the result of querying the policy registry so as to acquire the association relationship between the policy and the required plug-in, wherein the plug-in registry contains information on description of the plug-ins and on relationships between the plug-ins.

3. The method as claimed in claim 1 , further comprising the step of defining the policy demand configuration of an application.

4. The method as claimed in claim 3 , further comprising steps of:

defining the component function of the application; and

generating a component definition according to a loaded component function definition.

5. The method as claimed in claim 1 , wherein the plug-in context is formed as a chain table or a tree structure.

6. The method as claimed in claim 1 , wherein the plug-in registry further includes definition of extension relationship and/or dependency relationship between plug-ins, wherein the extension relationship indicates that a plug-in further includes definition of a extension point pointing to another plug-in, while the dependency relationship indicates that instantiation of a plug-in depends on implementation of another plug-in.

7. An apparatus for implementing non-function logic for a plurality of applications extensibly and independently of functional logic for each one of the plurality of applications, comprising:

at least one processor; and

an application loader for loading policy demand configuration of an application;

a policy attacher for acquiring association relationship between a policy and a plug-in required by the application based on a loaded policy demand configuration of the application, and for generating a plug-in context definition according to the acquired association relationship, the plug-in context definition being part of a plug-in context associated with the plug-in, wherein the plug-in context defines services provided by the plug-in and reference to other plug-ins related to the plug-in;

an application builder for generating an application runtime object based on a component definition and generating a plug-in context object based on the plug-in context definition, wherein the plug-in context object is an instantiated plug-in context definition;

an application constructor unit for associating the plug-in context object to the application runtime object so as to implement a function of the plug-in for the application; and

a plug-in registry unit for storing a plug-in registry containing information on description of the plug-ins and on relationships between the plug-ins;

wherein the policy attacher acquires the association relationship between the policy and the required plug-in by querying the plug-in registry based on the policy demand configuration.

8. The apparatus as claimed in claim 7 , the apparatus further comprising:

a policy registry unit for storing a policy registry containing information on policies supported by the plug-ins and on relationships between the policies;

wherein the policy attacher queries the policy registry based on the policy demand configuration, and maps the policy demand configuration to the supported plug-in by further querying the plug-in registry based on the result of querying the policy registry so as to acquire the association relationship between the policy and the required plug-in, wherein the plug-in registry contains information on description of the plug-ins and on relationships between the plug-ins.

9. The apparatus as claimed in claim 7 , wherein, the application loader further loads at least one component function definition of the application.

10. The apparatus as claimed in claim 9 , wherein,

the policy attacher further generates application runtime objects based on the component function definition.

11. The apparatus as claimed in claim 7 , wherein the plug-in context is formed as a chain table or a tree structure.

12. The apparatus as claimed in claim 7 , wherein the plug-in registry further includes definition of extension relationship and/or dependency relationship between plug-ins, wherein the extension relationship indicates that a plug-in further includes definition of a extension point pointing to another plug-in, while the dependency relationship indicates that instantiation of a plug-in depends on implementation of another plug-in.

13. A system for separating functional logic of an application from non-function logic for any of a plurality of applications and implementing the non-function logic, including:

a central processing unit;

an application runtime layer entity configured to implement functional logic by user and utilize plug-ins provided by an infrastructure service plug-in layer entity;

the infrastructure service plug-in layer entity configured to implement the plug-in by utilizing services provided by an application runtime layer entity; and

the application runtime layer entity configured to implement acquiring an association relationship between a policy and a plug-in required by the application based on a loaded policy demand configuration of the application by querying a plug-in registry containing information on description of the plug-ins and on relationships between the plug-ins based on the policy demand configuration, and further performing steps of:

generating a plug-in context definition according to the acquired association relationship, the plug-in context definition being part of a plug-in context associated with the plug-in, wherein the plug-in context defines services provided by the plug-in and reference to other plug-ins related to the plug-in;

generating an application runtime object based on a component definition;

generating a plug-in context object based on the plug-in context definition, wherein the plug-in context object is an instantiated plug-in context definition; and

associating the plug-in context object to the application runtime object so as to implement a function of the plug-in for the application.

Assignments (2)
CONVEYOR IS ASSIGNING UNDIVIDED 50% INTEREST Recorded Jan 11, 2018
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: SERVICENOW, INC.; INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 045060/0977 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 25, 2008
From: HUANG, HE YUAN; TAN, HUA FANG; XU, JIAN; ZHU, JUN
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 021885/0216 →
Priority Claims (1)
CN 2007 10 1536919 · Sep 14, 2007 · national
Continuity (1)
Related Publication 20090077546A1 · Mar 19, 2009