Implementation for an object oriented run-time extensible item
AssigneeInternational Business Machines Corporation
InventorsTimothy James Graser, Steven Lester Halter
Life of this patent
Estimating the term…
Loading patent…
AssigneeInternational Business Machines Corporation
InventorsTimothy James Graser, Steven Lester Halter
Estimating the term…
Term end not estimated
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.
An apparatus comprising:
An apparatus comprising:
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:
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:
A program product comprising:
A program product comprising:
Dependencies are inferred from the claim text.
Drawings are temporarily unavailable. Open the PDF at USPTO
This application is a Divisional of “Implementation for an Object Oriented Run-Time Extensible Item”, U.S. Ser. No. 09/291,543, filed on Apr. 14, 1999, which is a Continuation-In-Part of “A Method of Developing a Software System Using Object Oriented Technology”, U.S. Ser. No. 09/038,024, filed Mar. 11, 1998, which are both incorporated herein by reference.
1. Technical Field
This invention generally relates to object oriented programming and more specifically relates to an implementation for a run-time extensible item.
The preferred embodiments of the present invention will hereinafter be described in conjunction with the appended drawings, where like designations denote like elements, and:
FIG. 1 is a class diagram of a prior art implementation of a run-time extensible item;
FIG. 2 is an object interaction diagram showing the interaction between instances of the classes shown in FIG. 1 in accordance with the prior art when the invokeMethod() method on the ExtensibleItem is invoked by a client;
The present invention is accomplished through the use of object oriented programming concepts. For those who are not familiar with object oriented programming concepts, the brief overview below provides background information that will help the reader to understand the present invention.
1. Overview
Object oriented programming is a method of program implementation in which programs are organized as cooperative collections of objects, each of which represents an instance of some class, and whose classes are all members of a hierarchy of classes united via inheritance relationships. Object oriented programming differs from standard procedural programming in that it uses objects, not algorithms, as the fundamental building blocks for creating computer programs. This difference stems from the fact that the design focus of object oriented programming technology is wholly different than that of procedural programming technology.
Software design: object-oriented
Object-oriented: object-oriented method invocation or resolution
Object-oriented: object persistence
Databases characterised by their database models, e.g. relational or object models: object oriented databases
From the US filing history. Foreign family members aren’t listed.
Backward citations are indexed for grants only.