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

Apparatus and method for dynamically modifying class files during loading for execution

Assignee: International Business Machines Corp
•
Filing: 1997-09-30
•
Granted: 2000-06-06
•
Expires: 2017-09-30
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract The present invention discloses a method, computer program product, and system for dynamically and programmatically modifying the semantics and/or logic of class files as they are being loaded for execution. The present invention permits a user to write a control file specifying in a programmatic manner the changes to be applied to class files and the conditions for carrying out the changes. As the class files are loaded, they are analyzed for the desired conditions and if the conditions are found, the control file is applied to them to effect the appropriate changes according to the user's control file.

Inventors

  • 👤 Geoffrey Alexander Cohen
  • 👤 Richard Adam King

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-07 22:54
CPC Classifications
G; G06; G06F; G06F9/00; G06F9/06; G06F9/44; G06F9/445; G06F9/44521

Claims Analysis

Total Claims: 12
Claim 1
Independent Claim 201 words
A computer-implemented method for enabling programmatic semantic modifications to class files as said files are loaded for execution by a loading and execution process, said method comprising the steps of: providing an extended class loader; receiving, by said extended class loader, a request for loading a selected one of said class files, wherein said request is generated from an executing application program and wherein said selected class file contains executable program code to be executed as a part of said application program; retrieving, by said extended class loader, said selected class file; determining, by evaluating one or more specified conditions from a stored control file, whether said retrieved class file is to be semantically modified prior to an execution of said executable program code; if any of said conditions are met, performing the steps of: applying one or more semantic modifications to said executable program code in said retrieved class file by executing one or more stored transformations associated with said stored conditions, creating a dynamically modified class file; and delivering said dynamically modified class file as a result of said request; and if none of said conditions are met, delivering said retrieved class file as said result of said request.
Claim 2
Dependent Claim 201 words
A computer-implemented method for enabling programmatic semantic modifications to class files as said files are loaded for execution by a loading and execution process, said method comprising the steps of: providing an extended class loader; receiving, by said extended class loader, a request for loading a selected one of said class files, wherein said request is generated from an executing application program and wherein said selected class file contains executable program code to be executed as a part of said application program; retrieving, by said extended class loader, said selected class file; determining, by evaluating one or more specified conditions from a stored control file, whether said retrieved class file is to be semantically modified prior to an execution of said executable program code; if any of said conditions are met, performing the steps of: applying one or more semantic modifications to said executable program code in said retrieved class file by executing one or more stored transformations associated with said stored conditions, creating a dynamically modified class file; and delivering said dynamically modified class file as a result of said request; and if none of said conditions are met, delivering said retrieved class file as said result of said request.
Claim 3
Dependent Claim 16 words
The computer-implemented method as claimed in claim 1, wherein said class files are Java class files.
Claim 4
Dependent Claim 18 words
The computer-implemented method as claimed in claim 1, wherein said extended class loader extends a Java class loader.
Claim 5
Dependent Claim 246 words
A computer program product for enabling programmatic semantic modifications to class files as said files are loaded for execution by a loading and execution process, said computer program product comprising: a computer-readable storage medium having computer-readable program code means embodied in said medium, said computer-readable program code means comprising: computer-readable program code means for providing an extended class loader; computer-readable program code means for receiving, by said extended class loader, a request for loading a selected one of said class files, wherein said request is generated from an executing application program and wherein said selected class file contains executable program code to be executed as a part of said application program; computer-readable program code means for retrieving, by said extended class loader, said selected class file; computer-readable program code means for determining, by evaluating one or more specified conditions from a stored control file, whether said retrieved class file is to be semantically modified prior to an execution of said executable program code; if any of said conditions are met, computer-readable program code means for: applying one or more semantic modifications to said executable program code in said retrieved class file by executing one or more stored transformations associated with said stored conditions, creating a dynamically modified class file, and delivering said dynamically modified class file as a result of said request; and if none of said conditions are met, computer-readable program code means for delivering said retrieved class file as said result of said request.
Claim 6
Dependent Claim 246 words
A computer program product for enabling programmatic semantic modifications to class files as said files are loaded for execution by a loading and execution process, said computer program product comprising: a computer-readable storage medium having computer-readable program code means embodied in said medium, said computer-readable program code means comprising: computer-readable program code means for providing an extended class loader; computer-readable program code means for receiving, by said extended class loader, a request for loading a selected one of said class files, wherein said request is generated from an executing application program and wherein said selected class file contains executable program code to be executed as a part of said application program; computer-readable program code means for retrieving, by said extended class loader, said selected class file; computer-readable program code means for determining, by evaluating one or more specified conditions from a stored control file, whether said retrieved class file is to be semantically modified prior to an execution of said executable program code; if any of said conditions are met, computer-readable program code means for: applying one or more semantic modifications to said executable program code in said retrieved class file by executing one or more stored transformations associated with said stored conditions, creating a dynamically modified class file, and delivering said dynamically modified class file as a result of said request; and if none of said conditions are met, computer-readable program code means for delivering said retrieved class file as said result of said request.
Claim 7
Dependent Claim 17 words
The computer program product as claimed in claim 4, wherein said class files are Java class files.
Claim 8
Dependent Claim 19 words
The computer program product as claimed in claim 4, wherein said extended class loader extends a Java class loader.
Claim 9
Dependent Claim 206 words
A computer system for enabling programmatic semantic modifications to class files as said files are loaded for execution by a loading and execution process, said system comprising: means for providing an extended class loader; means for receiving, by said extended class loader, a request for loading a selected one of said class files, wherein said request is generated from an executing application program and wherein said selected class file contains executable program code to be executed as a part of said application program; means for retrieving, by said extended class loader, said selected class file; means for determining, by evaluating one or more specified conditions from a stored control file, whether said retrieved class file is to be semantically modified prior to an execution of said executable program code; if any of said conditions are met, means for: applying one or more semantic modifications to said executable program code in said retrieved class file by executing one or more stored transformations associated with said stored conditions, creating a dynamically modified class file; and delivering said dynamically modified class file as a result of said request; and if none of said conditions are met, means for delivering said retrieved class file as said result of said request.
Claim 10
Dependent Claim 206 words
A computer system for enabling programmatic semantic modifications to class files as said files are loaded for execution by a loading and execution process, said system comprising: means for providing an extended class loader; means for receiving, by said extended class loader, a request for loading a selected one of said class files, wherein said request is generated from an executing application program and wherein said selected class file contains executable program code to be executed as a part of said application program; means for retrieving, by said extended class loader, said selected class file; means for determining, by evaluating one or more specified conditions from a stored control file, whether said retrieved class file is to be semantically modified prior to an execution of said executable program code; if any of said conditions are met, means for: applying one or more semantic modifications to said executable program code in said retrieved class file by executing one or more stored transformations associated with said stored conditions, creating a dynamically modified class file; and delivering said dynamically modified class file as a result of said request; and if none of said conditions are met, means for delivering said retrieved class file as said result of said request.
Claim 11
Dependent Claim 16 words
The computer system as claimed in claim 7, wherein said class files are Java class files.
Claim 12
Dependent Claim 18 words
The computer system as claimed in claim 7, wherein said extended class loader extends a Java class loader.

References Cited (Backward Citations)

US5339430A Cited
US5740469A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2003-06-06 2003-12-06 2004-06-06 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2007-06-06 2007-12-06 2008-06-06 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2011-06-06 2011-12-06 2012-06-06 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag