← Back to Patent Explorer
US5974428A Expired / Lapsed US ⏱️ 0.0 years remaining

Method and apparatus for class version naming and mapping

Assignee: International Business Machines Corp
•
Filing: 1997-08-29
•
Granted: 1999-10-26
•
Expires: 2017-08-29
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract According to a preferred embodiment of the present invention, a class versioning and mapping system allows a user to request a desired class without knowing which class version is the most recent or correct version for the desired class. The class versioning and mapping system uses a version mapping mechanism to cross reference the requested class, select the most recent or best version of the requested class, and then return an object to the user that belongs to the selected class. This feature allows the system to have multiple versions of the same class on-line at the same time and use objects from different versions of the same class in a way that is transparent to the user. Therefore, by using a preferred embodiment of the present invention, a client object can specify or request that an object be created without having any knowledge of the actual class version or version(s) that are available.

Inventors

  • 👤 Scott N. Gerard
  • 👤 Steven J. Munroe

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-05 21:46
CPC Classifications
G; G06; G06F; G06F8/00; G06F8/70; G06F8/71; G06F9/00; G06F9/06; G06F9/44; G06F9/445; G06F9/44536; Y; Y10; Y10S; Y10S707/00; Y10S707/953; Y10S707/955; Y10S707/99951; Y10S707/99952; Y10S707/99953; Y10S707/99954

Claims Analysis

Total Claims: 49
Claim 1
Independent Claim 84 words
An apparatus comprising: a CPU coupled to a bus; a memory coupled to the bus; a version mapping mechanism residing in the memory, the version mapping mechanism including a mapping of classes to preferred class versions; and a version loader object residing in the memory, wherein the version loader object, in response to a request to load a requested class, checks the version mapping mechanism to determine a preferred version of the requested class and then loads the preferred version of the requested class.
Claim 2
Independent Claim 84 words
An apparatus comprising: a CPU coupled to a bus; a memory coupled to the bus; a version mapping mechanism residing in the memory, the version mapping mechanism including a mapping of classes to preferred class versions; and a version loader object residing in the memory, wherein the version loader object, in response to a request to load a requested class, checks the version mapping mechanism to determine a preferred version of the requested class and then loads the preferred version of the requested class.
Claim 3
Dependent Claim 13 words
The apparatus of claim 1 wherein the requested class is a default class.
Claim 4
Dependent Claim 20 words
The apparatus of claim 1 wherein the preferred version of the requested class is a subclass of the requested class.
Claim 5
Dependent Claim 21 words
The apparatus of claim 1 wherein the preferred version of the requested class is unrelated by inheritance to the requested class.
Claim 6
Dependent Claim 14 words
The apparatus of claim 1 wherein the version mapping mechanism comprises a mapping file.
Claim 7
Dependent Claim 17 words
The apparatus of claim 1 wherein the version mapping mechanism comprises an algorithm stored in the memory.
Claim 8
Dependent Claim 17 words
The apparatus of claim 1 wherein the preferred version of the requested class is the requested class.
Claim 9
Dependent Claim 18 words
The apparatus of claim 1 wherein the preferred version of the requested class is not the requested class.
Claim 10
Independent Claim 74 words
A method of providing versioning for classes in an object-oriented environment, the method comprising the steps of: sending a request for a requested class to a version loader object; the version loader object checking a version mapping mechanism to determine a preferred version of the requested class, the version mapping mechanism including a mapping of classes to preferred class versions; and the version loader object loading the preferred class version of the requested class.
Claim 11
Independent Claim 74 words
A method of providing versioning for classes in an object-oriented environment, the method comprising the steps of: sending a request for a requested class to a version loader object; the version loader object checking a version mapping mechanism to determine a preferred version of the requested class, the version mapping mechanism including a mapping of classes to preferred class versions; and the version loader object loading the preferred class version of the requested class.
Claim 12
Dependent Claim 13 words
The method of claim 9 wherein the requested class is a default class.
Claim 13
Dependent Claim 20 words
The method of claim 9 wherein the preferred version of the requested class is a subclass of the requested class.
Claim 14
Dependent Claim 21 words
The method of claim 9 wherein the preferred version of the requested class is unrelated by inheritance to the requested class.
Claim 15
Dependent Claim 14 words
The method of claim 9 wherein the version mapping mechanism comprises a mapping file.
Claim 16
Dependent Claim 13 words
The method of claim 9 wherein the version mapping mechanism comprises an algorithm.
Claim 17
Dependent Claim 17 words
The method of claim 9 wherein the preferred version of the requested class is the requested class.
Claim 18
Dependent Claim 18 words
The method of claim 9 wherein the preferred version of the requested class is not the requested class.
Claim 19
Dependent Claim 61 words
A program product comprising: a version loader object that, in response to a request to load a requested class, checks a version mapping mechanism comprising a mapping of classes to preferred class versions to determine a preferred version of the requested class and then loads the preferred version of the requested class; and signal bearing media bearing the version loader object.
Claim 20
Dependent Claim 61 words
A program product comprising: a version loader object that, in response to a request to load a requested class, checks a version mapping mechanism comprising a mapping of classes to preferred class versions to determine a preferred version of the requested class and then loads the preferred version of the requested class; and signal bearing media bearing the version loader object.
Claim 21
Dependent Claim 14 words
The program product of claim 17 wherein the requested class is a default class.
Claim 22
Dependent Claim 21 words
The program product of claim 17 wherein the preferred version of the requested class is a subclass of the requested class.
Claim 23
Dependent Claim 22 words
The program product of claim 17 wherein the preferred version of the requested class is unrelated by inheritance to the requested class.
Claim 24
Dependent Claim 18 words
The program product of claim 17 wherein the preferred version of the requested class is the requested class.
Claim 25
Dependent Claim 19 words
The program product of claim 17 wherein the preferred version of the requested class is not the requested class.
Claim 26
Dependent Claim 14 words
The program product of claim 17 wherein the signal bearing media comprises recordable media.
Claim 27
Dependent Claim 14 words
The program product of claim 17 wherein the signal bearing media comprises transmission media.
Claim 28
Dependent Claim 19 words
The program product of claim 17 wherein the version mapping mechanism comprises a mapping file stored in a memory.
Claim 29
Dependent Claim 18 words
The program product of claim 17 wherein the version mapping mechanism comprises an algorithm stored in a memory.
Claim 30
Independent Claim 95 words
An apparatus, the apparatus comprising: a CPU coupled to a bus; a memory coupled to the bus; a plurality of version mapping mechanisms residing in the memory, each version mapping mechanism including a mapping of classes to preferred class versions; and a plurality of version loader objects residing in the memory, wherein each of the plurality of version loader objects, in response to a request to load a requested class, checks a different version mapping mechanism to determine a preferred version of the requested class and then loads the preferred version of the requested class.
Claim 31
Independent Claim 95 words
An apparatus, the apparatus comprising: a CPU coupled to a bus; a memory coupled to the bus; a plurality of version mapping mechanisms residing in the memory, each version mapping mechanism including a mapping of classes to preferred class versions; and a plurality of version loader objects residing in the memory, wherein each of the plurality of version loader objects, in response to a request to load a requested class, checks a different version mapping mechanism to determine a preferred version of the requested class and then loads the preferred version of the requested class.
Claim 32
Dependent Claim 13 words
The apparatus of claim 27 wherein the requested class is a default class.
Claim 33
Dependent Claim 21 words
The apparatus of claim 27 wherein the preferred version of the requested class selected is a subclass of the requested class.
Claim 34
Dependent Claim 21 words
The apparatus of claim 27 wherein the preferred version of the requested class is unrelated by inheritance to the requested class.
Claim 35
Dependent Claim 17 words
The apparatus of claim 27 wherein the preferred version of the requested class is the requested class.
Claim 36
Dependent Claim 18 words
The apparatus of claim 27 wherein the preferred version of the requested class is not the requested class.
Claim 37
Independent Claim 103 words
An apparatus, the apparatus comprising: a CPU coupled to a bus; a memory coupled to the bus; a plurality of user interfaces residing in the memory; a plurality of version mapping mechanisms residing in the memory each version mapping mechanism including a mapping of classes to preferred class versions; a plurality of class loader objects residing in the memory; and wherein each of the plurality of user interfaces, in response to a request to load a requested class, checks a different version mapping mechanism to determine a preferred version of the requested class and then loads the preferred version of the requested class.
Claim 38
Independent Claim 103 words
An apparatus, the apparatus comprising: a CPU coupled to a bus; a memory coupled to the bus; a plurality of user interfaces residing in the memory; a plurality of version mapping mechanisms residing in the memory each version mapping mechanism including a mapping of classes to preferred class versions; a plurality of class loader objects residing in the memory; and wherein each of the plurality of user interfaces, in response to a request to load a requested class, checks a different version mapping mechanism to determine a preferred version of the requested class and then loads the preferred version of the requested class.
Claim 39
Dependent Claim 13 words
The apparatus of claim 33 wherein the requested class is the default class.
Claim 40
Dependent Claim 20 words
The apparatus of claim 33 wherein the preferred version of the requested class is a subclass of the requested class.
Claim 41
Dependent Claim 21 words
The apparatus of claim 33 wherein the preferred version of the requested class is unrelated by inheritance to the requested class.
Claim 42
Dependent Claim 121 words
A JAVA virtual machine apparatus for implementing class versioning and naming, the apparatus comprising: a CPU coupled to a bus; a memory coupled to the bus; a JAVA virtual machine residing in the memory; a plurality of class versions residing in the memory; a plurality of version mapping mechanisms residing in the memory, each version mapping mechanism including a mapping of classes to preferred class versions; a plurality of class loader objects residing in the memory; and wherein each of the plurality of class loader objects, in response to a request to load a requested class, checks a different version mapping mechanism to determine a preferred version of the requested class and then loads the preferred version of the requested class.
Claim 43
Dependent Claim 121 words
A JAVA virtual machine apparatus for implementing class versioning and naming, the apparatus comprising: a CPU coupled to a bus; a memory coupled to the bus; a JAVA virtual machine residing in the memory; a plurality of class versions residing in the memory; a plurality of version mapping mechanisms residing in the memory, each version mapping mechanism including a mapping of classes to preferred class versions; a plurality of class loader objects residing in the memory; and wherein each of the plurality of class loader objects, in response to a request to load a requested class, checks a different version mapping mechanism to determine a preferred version of the requested class and then loads the preferred version of the requested class.
Claim 44
Independent Claim 123 words
An apparatus, the apparatus comprising: a CPU coupled to a bus; a memory coupled to the bus; a JAVA class file residing in the memory, the JAVA class file having a name; a version mapping mechanism residing in the memory, the version mapping mechanism including a mapping of classes to preferred class versions and their names; a class loader object residing in the memory; and wherein the class loader object, in response to a request to load a requested JAVA class, checks the version mapping mechanism to determine a preferred version of the requested JAVA class, modifies the name of the preferred JAVA class file to the name the requested JAVA class, and then loads the preferred version of the requested JAVA class.
Claim 45
Independent Claim 123 words
An apparatus, the apparatus comprising: a CPU coupled to a bus; a memory coupled to the bus; a JAVA class file residing in the memory, the JAVA class file having a name; a version mapping mechanism residing in the memory, the version mapping mechanism including a mapping of classes to preferred class versions and their names; a class loader object residing in the memory; and wherein the class loader object, in response to a request to load a requested JAVA class, checks the version mapping mechanism to determine a preferred version of the requested JAVA class, modifies the name of the preferred JAVA class file to the name the requested JAVA class, and then loads the preferred version of the requested JAVA class.
Claim 46
Dependent Claim 14 words
The apparatus of claim 38 wherein the requested JAVA class is a default class.
Claim 47
Dependent Claim 21 words
The apparatus of claim 38 wherein the preferred version of the requested JAVA class is a subclass of the requested class.
Claim 48
Dependent Claim 171 words
A class versioning and naming apparatus, the apparatus comprising: a CPU coupled to a bus; a memory coupled to the bus; a plurality of JAVA packages residing in the memory; each of the plurality of JAVA packages having a JAVA package name; a version mapping mechanism residing in the memory, the version mapping mechanism including a mapping of classes to preferred class versions and their names; a version loader object residing in the memory; wherein the JAVA package name for each of the plurality of JAVA packages has a different class version identifier included in the JAVA package name, wherein the version loader object uses the class version identifier included in the JAVA package name to identify the class version of the JAVA package, and wherein in response to a request to load a requested JAVA class, the version loader object checks the version mapping mechanism using the version class identifier to determine a preferred version of the requested JAVA class, then loads the preferred version of the requested JAVA class.
Claim 49
Dependent Claim 171 words
A class versioning and naming apparatus, the apparatus comprising: a CPU coupled to a bus; a memory coupled to the bus; a plurality of JAVA packages residing in the memory; each of the plurality of JAVA packages having a JAVA package name; a version mapping mechanism residing in the memory, the version mapping mechanism including a mapping of classes to preferred class versions and their names; a version loader object residing in the memory; wherein the JAVA package name for each of the plurality of JAVA packages has a different class version identifier included in the JAVA package name, wherein the version loader object uses the class version identifier included in the JAVA package name to identify the class version of the JAVA package, and wherein in response to a request to load a requested JAVA class, the version loader object checks the version mapping mechanism using the version class identifier to determine a preferred version of the requested JAVA class, then loads the preferred version of the requested JAVA class.

References Cited (Backward Citations)

US5404525A Cited
US5784553A Cited
US5815718A Cited
US5790855A Cited
US5842020A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2002-10-25 2003-04-26 2003-10-26 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2006-10-25 2007-04-26 2007-10-26 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2010-10-25 2011-04-26 2011-10-26 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag