Implementation for an object oriented run-time extensible item
First Claim
1. An apparatus comprising:
- (1) at least one processor;
(2) a memory coupled to the at least one processor;
(3) an object oriented run-time extensible item class residing in the memory, the extensible item class including;
at least one extension class;
at least one object oriented method that may be invoked by a client;
(4) a separate method table object residing in the memory for each extension class that is shared among instances of the extension class, each method table object correlating at least one method name to a corresponding method node object;
(5) a method repository object residing in the memory, the method repository object including the method table object for each extension class.
0 Assignments
0 Petitions
Accused Products
Abstract
In an object oriented computer system, one or more run-time extensible items are defined that may be dynamically reconfigured as required to support different interfaces at run-time. The behavior associated with these interfaces is supported by one or more extensions owned by the extensible item. Each extension class has a corresponding method table that is shared among instances of the extension class and that correlates the methods defined on the extension class to method node objects that carry out the method. A method repository is a static object that is created at run-time to correlate extensions to their corresponding method tables. When a client invokes an invokeMethod() method on an extensible item, specifying the name of the method to be invoked, the extensible item cycles through its extensions, from newest to oldest, looking for an extension that supports the named method. Each extension examines the method repository to see if the method repository contains a method table corresponding to the extension class. If not, a method table corresponding to the extension class is created and placed in the method repository. When an extension is found that supports the named method, a method node that corresponds to the named method is returned. The method node then invokes the named method on the extension.
40 Citations
22 Claims
-
1. An apparatus comprising:
-
(1) at least one processor;
(2) a memory coupled to the at least one processor;
(3) an object oriented run-time extensible item class residing in the memory, the extensible item class including;
at least one extension class;
at least one object oriented method that may be invoked by a client;
(4) a separate method table object residing in the memory for each extension class that is shared among instances of the extension class, each method table object correlating at least one method name to a corresponding method node object;
(5) a method repository object residing in the memory, the method repository object including the method table object for each extension class. - View Dependent Claims (2, 3, 4)
-
-
5. An apparatus comprising:
-
(1) at least one processor;
(2) a memory coupled to the at least one processor;
(3) an object oriented run-time extensible item class residing in the memory, the extensible item class including;
at least one extension class;
at least one object oriented method that may be invoked by a client;
(4) a separate method table object residing in the memory for each extensible item class that is shared among instances of the extensible item class, each method table object correlating at least one method name to a corresponding method node object;
(5) a method repository object residing in the memory, the method repository object including the method table object for each extensible item class. - View Dependent Claims (6, 7, 8)
-
-
9. A computer-implemented method for responding to the invocation of an object oriented method on a run-time extensible item class, the run-time extensible item class including at least one extension class, the method comprising the steps of:
-
instantiating at run-time a method repository that includes a method table for each extension class, the method repository comprising a key-value pair for each extension class, the key comprising a unique identifier for each extension class, the value comprising a method table that contains methods for the extension class corresponding to the unique identifier in the key-value pair;
identifying which method table in the method repository has a method node corresponding to the invoked method; and
the method node invoking an object oriented method on an instance of the at least one the extension class.
-
-
10. A computer-implemented method for responding to the invocation of an object oriented method on a run-time extensible item class, the run-time extensible item class including at least one extension class, the method comprising the steps of:
-
instantiating at run-time a method repository that includes a method table for the extensible item class, the method repository comprising a key-value pair for the extensible item class, the key comprising a unique identifier for the extensible item class and for each extension class, the value comprising a method table that contains methods for the class corresponding to the unique identifier in the key-value pair;
identifying which method table in the method repository has a method node corresponding to the invoked method; and
the method node invoking an object oriented method on an instance of the extensible item class.
-
-
11. A program product comprising:
-
(A) an object oriented run-time extensible item class that defines;
an object oriented extension class;
at least one object oriented method that may be invoked by a client;
(B) a method table class that defines a method table for each instance of the extension class, each method table correlating at least one method name to a corresponding method node;
(C) a method repository class that correlates an instance of the method table class with each instance of the extension class; and
(D) signal bearing media bearing the extensible item class, the method table class, and the method repository class. - View Dependent Claims (12, 13, 14, 15, 16)
-
-
17. A program product comprising:
-
(A) an object oriented run-time extensible item class that defines;
an object oriented extension class;
at least one object oriented method that may be invoked by a client;
(B) a method table class that defines a method table for each instance of the extensible item class, each method table correlating at least one method name to a corresponding method node;
(C) a method repository class that correlates an instance of the method table class with each instance of the extensible item class; and
(D) signal bearing media bearing the extensible item class, the method table class, and the method repository class. - View Dependent Claims (18, 19, 20, 21, 22)
-
Specification