Method, system, program, and data structures for loading programs into a runtime environment
First Claim
1. A method for installing components in a computer runtime environment, comprising:
- retrieving a kit file including information on program components to load into memory;
using the retrieved kit file information to retrieve the program components external to the kit file;
loading the retrieved program components for the kit file into the runtime environment;
determining whether there are dependency kit files associated with the retrieved kit file;
loading program components for each determined dependency kit file in the runtime environment, wherein classes and interfaces called from programs executing in the runtime environment are resolved using the program components loaded into the runtime environment; and
maintaining one kit object for each kit file, wherein one kit object is associated with each kit file and program components of the kit file loaded in the runtime environment, wherein the kit objects are used to determine how to resolve calls from the program components.
1 Assignment
0 Petitions
Accused Products
Abstract
Provided is a method, system, program, and data structures for installing components in a computer runtime environment. A kit file is retrieved including information on program components to load into memory. The retrieved kit file information is used to retrieve the program components for the kit file. The retrieved program components for the kit file are loaded into the runtime environment. A determination is made as to whether there are dependency kit files associated with the retrieved kit file. Program components for each determined dependency kit file are maintained in the runtime environment, wherein classes and interfaces are resolved using the program components loaded into the runtime environment.
-
Citations
50 Claims
-
1. A method for installing components in a computer runtime environment, comprising:
-
retrieving a kit file including information on program components to load into memory;
using the retrieved kit file information to retrieve the program components external to the kit file;
loading the retrieved program components for the kit file into the runtime environment;
determining whether there are dependency kit files associated with the retrieved kit file;
loading program components for each determined dependency kit file in the runtime environment, wherein classes and interfaces called from programs executing in the runtime environment are resolved using the program components loaded into the runtime environment; and
maintaining one kit object for each kit file, wherein one kit object is associated with each kit file and program components of the kit file loaded in the runtime environment, wherein the kit objects are used to determine how to resolve calls from the program components. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
storing the retrieved program components for the retrieved kit file in a file directory; and
storing program components for the determined dependency kit files in the file directory.
-
-
3. The method of claim 2, further comprising:
-
retrieving file kits for any nested dependency kit files of the determined dependency kit files;
storing the program components of the nested dependency kit files in the file directory; and
loading the program components of the nested dependency kit files in the file directory.
-
-
4. The method of claim 2, further comprising:
-
for each dependency kit file, determining whether the program components for the dependency kit file are stored in the file directory;
retrieving the dependency kit file and the program components thereof from a storage device if the program components for the dependency kit file are not stored in the file directory;
storing the program components of the retrieved dependency kit file in the file directory; and
loading the program components for the retrieved dependency kit files into the runtime environment.
-
-
5. The method of claim 1, wherein the kit file comprises an XML document, wherein attributes of the kit file indicate a URL for the program components of the kit file and URLs for the dependency kit files.
-
6. The method of claim 1, wherein order in which the kit objects are linked indicates an order in which the program components for the associated kit files are considered to resolve a program call, wherein the program components associated with one kit object at a relatively higher order in the linking of the kit objects are considered before the program components associated with kit objects at a relatively later order in the linking.
-
7. The method of claim 6, wherein the linking of kit objects comprises a first linking of system kit objects whose associated program components are capable of being shared by all programs executing in the runtime environment and a second linking of kit objects associated with program components that are only used by one program in the runtime environment.
-
8. The method of claim 7, wherein the second linking comprises multiple chains of kit objects, wherein each chain in the second linking is used by only one program executing in the runtime environment.
-
9. The method of claim 8, wherein a first and second chains in the second linking are capable of including at least two of a same kit objects in a different order, wherein a first program in the runtime environment associated with the first chain and a second program associated with the second chain resolve program calls from the program components associated with kit objects in the first and second chains, respectively, in the order indicated in the first and second chains.
-
10. The method of claim 9, wherein the first and second chains include kit objects associated with a first and second version of a same kit file program in a different order, wherein the first and second programs executing in the run time environment would resolve program calls from program components for the version of the kit file according to the order of the corresponding kit objects in the first and second chain, respectively.
-
11. The method of claim 6, wherein kit objects are linked according to an order in which the dependency kit files are listed in the kit file.
-
12. A method for installing components in a computer runtime environment, comprising:
-
retrieving a kit file including information on program components to load into memory;
using the retrieved kit file information to retrieve the program components for the kit file;
loading the retrieved program components for the kit file into the runtime environment;
determining whether there are dependency kit files associated with the retrieved kit file;
loading program components for each determined dependency kit file in the runtime environment, wherein classes and interfaces called from programs executing in the runtime environment are resolved using the program components loaded into the runtime environment;
storing the retrieved program components for the retrieved kit file in a file directory; and
storing program components for the determined dependency kit files in the file directory, wherein the file directory includes a separate subdirectory for each kit file to store the program components for the kit file, wherein the name of the subdirectory indicates a name and version of the kit file.
-
-
13. A method for installing components in a computer runtime environment, comprising:
-
retrieving a kit file including information on program components to load into memory;
using the retrieved kit file information to retrieve the program components for the kit file;
loading the retrieved program components for the kit file into the runtime environment;
determining whether there are dependency kit files associated with the retrieved kit file;
loading program components for each determined dependency kit file in the runtime environment, wherein classes and interfaces called from programs executing in the runtime environment are resolved using the program components loaded into the runtime environment;
storing the retrieved program components for the retrieved kit file in a file directory;
storing program components for the determined dependency kit files in the file directory;
storing in the file directory a previously retrieved copy of the kit file;
determining whether the retrieved kit file matches the previously retrieved kit file stored in the file directory;
loading the program components from the file directory into the runtime environment if the retrieved and previously retrieved kit files match; and
throwing an exception if the retrieved and stored kit files do not match.
-
-
14. A system for installing components in a computer runtime environment executing at least one program calling classes and interfaces, comprising:
-
a memory;
means for retrieving a kit file including information on program components to load into the memory;
means for using the retrieved kit file information to retrieve the program components external to the kit file;
means for loading the retrieved program components for the kit file into the runtime environment;
means for determining whether there are dependency kit files associated with the retrieved kit file;
means for loading program components for each determined dependency kit file in the runtime environment, wherein the classes and interfaces are resolved using the program components loaded into the runtime environment; and
means for maintaining one kit object for each kit file, wherein one kit object is associated with each kit file and program components of the kit file loaded in the runtime environment, wherein the kit objects are used to determine how to resolve calls from the program components. - View Dependent Claims (15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26)
means for storing the retrieved program components for the retrieved kit file in a file directory; and
means for storing program components for the determined dependency kit files in the file directory.
-
-
16. The system of claim 15, wherein the file directory includes a separate subdirectory for each kit file to store the program components for the kit file, wherein the name of the subdirectory indicates a name and version of the kit file.
-
17. The system of claim 15, further comprising:
-
means for determining, for each dependency kit file, whether the program components for the dependency kit file are stored in the file directory;
means for retrieving the dependency kit file and the program components thereof from a storage device if the program components for the dependency kit file are not stored in the file directory;
means for storing the program components of the retrieved dependency kit file in the file directory; and
means for loading the program components for the retrieved dependency kit files into the runtime environment.
-
-
18. The system of claim 15, further comprising;
-
means for storing in the file directory a previously retrieved copy of the kit file;
means for determining whether the retrieved kit file matches the previously retrieved kit file stored in the file directory;
means for loading the program components from the file directory into the runtime environment if the retrieved and previously retrieved kit files match; and
means for throwing an exception if the retrieved and stored kit files do not match.
-
-
19. The system of claim 15, further comprising:
-
retrieving file kits for any nested dependency kit files of the determined dependency kit files;
storing the program components of the nested dependency kit files in the file directory; and
loading the program components of the nested dependency kit files in the file directory.
-
-
20. The system of claim 14, wherein the kit file comprises an XML document, wherein attributes of the kit file indicate a URL for the program components of the kit file and URLs for the dependency kit files.
-
21. The system of claim 14, wherein an order in which the kit objects are linked indicates an order in which the program components for the associated kit files are considered to resolve a program call, wherein the program components associated with one kit object at a relatively higher order in the linking of the kit objects are considered before the program components associated with kit objects at a relatively later order in the linking.
-
22. The system of claim 21, wherein the linking of kit objects comprises a first linking of system kit objects whose associated program components are capable of being shared by all programs executing in the runtime environment and a second linking of kit objects associated with program components that are only used by one program in the runtime environment.
-
23. The system of claim 22, wherein the second linking comprises multiple chains of kit objects, wherein each chain in the second linking is used by only one program executing in the runtime environment.
-
24. The system of claim 23, wherein a first and second chains in the second linking are capable of including at least two of a same kit objects in a different order, wherein a first program in the runtime environment associated with the first chain and a second program associated with the second chain resolve program calls from the program components associated with kit objects in the first and second chains, respectively, in the order indicated in the first and second chains.
-
25. The system of claim 24, wherein the first and second chains include kit objects associated with a first and second version of a same kit file program in a different order, wherein the first and second programs executing in the run time environment would resolve program calls from program components for the version of the kit file according to the order of the corresponding kit objects in the first and second chain, respectively.
-
26. The system of claim 21, wherein kit objects are linked according to an order in which the dependency kit files are listed in the kit file.
-
27. A program for use for installing components in a computer runtime environment executing at least one program calling classes and interfaces, wherein the program is implemented in a computer readable medium and capable of causing a computer having memory to perform:
-
retrieving a kit file including information on program components to load into the memory;
using the retrieved kit file information to retrieve the program components external to the kit file;
loading the retrieved program components for the kit file into the runtime environment;
determining whether there are dependency kit files associated with the retrieved kit file;
loading program components for each determined dependency kit file in the runtime environment, wherein the classes and interfaces are resolved using the program components loaded into the runtime environment; and
maintaining one kit object for each kit file, wherein one kit object is associated with each kit file and program components of the kit file loaded in the runtime environment, wherein the kit objects are used to determine how to resolve calls from the program components. - View Dependent Claims (28, 29, 30, 31, 32, 33, 34, 35, 36, 37)
storing the retrieved program components for the retrieved kit file in a file directory; and
storing program components for the determined dependency kit files in the file directory.
-
-
29. The program of claim 28, wherein the program code is further capable of causing the computer to perform:
-
retrieving file kits for any nested dependency kit files of the determined dependency kit files;
storing the program components of the nested dependency kit files in the file directory; and
loading the program components of the nested dependency kit files in the file directory.
-
-
30. The program of claim 28, wherein the program code is further capable of causing the computer to perform:
-
for each dependency kit file, determining whether the program components for the dependency kit file are stored in the file directory;
retrieving the dependency kit file and the program components thereof from a storage device if the program components for the dependency kit file are not stored in the file directory;
storing the program components of the retrieved dependency kit file in the file directory; and
loading the program components for the retrieved dependency kit files into the runtime environment.
-
-
31. The program of claim 27, wherein the kit file comprises an XML document, wherein attributes of the kit file indicate a URL for the program components of the kit file and URLs for the dependency kit files.
-
32. The program of claim 27, wherein order in which the kit objects are linked indicates an order in which the program components for the associated kit files are considered to resolve a program call, wherein the program components associated with one kit object at a relatively higher order in the linking of the kit objects are considered before the program components associated with kit objects at a relatively later order in the linking.
-
33. The program of claim 32, wherein the inking of kit objects comprises a first linking of system kit objects whose associated program components are capable of being shared by all programs executing in the runtime environment and a second linking of kit objects associated with program components that are only used by one program in the runtime environment.
-
34. The program of claim 33, wherein the second linking comprises multiple chains of kit objects, wherein each chain in the second linking is used by only one program executing in the runtime environment.
-
35. The program of claim 34, wherein a first and second chains in the second linking are capable of including at least two of a same kit objects in a different order, wherein a first program in the runtime environment associated with the first chain and a second program associated with the second chain resolve program calls from the program components associated with kit objects in the first and second chains, respectively, in the order indicated in the first and second chains.
-
36. The program of claim 35, wherein the first and second chains include kit objects associated with a first and second version of a same kit file program in a different order, wherein the first and second programs executing in the run time environment resolve program calls from program components for the version of the kit file according to the order of the corresponding kit objects in the first and second chain, respectively.
-
37. The program of claim 32, wherein kit objects are linked according to an order in which the dependency kit files are listed in the kit file.
-
38. A program for use for installing components in a computer runtime environment executing at least one program calling classes and interfaces, wherein the program is implemented in a computer readable medium and capable of causing a computer having memory to perform:
-
retrieving a kit file including information on program components to load into the memory;
using the retrieved kit file information to retrieve the program components for the kit file;
loading the retrieved program components for the kit file into the runtime environment;
determining whether there are dependency kit files associated with the retrieved kit file;
loading program components for each determined dependency kit file in the runtime environment, wherein the classes and interfaces are resolved using the program components loaded into the runtime environment;
storing the retrieved program components for the retrieved kit file in a file directory; and
storing program components for the determined dependency kit files in the file directory, wherein the file directory includes a separate subdirectory for each kit file to store the program components for the kit file, wherein the name of the subdirectory indicates a name and version of the kit file.
-
-
39. A program for use for installing components in a computer runtime environment executing at least one program calling classes and interfaces, wherein the program is implemented in a computer readable medium and capable of causing a computer having memory to perform:
-
retrieving a kit file including information on program components to load into the memory;
using the retrieved kit file information to retrieve the program components for the kit file;
loading the retrieved program components for the kit file into the runtime environment;
determining whether there are dependency kit files associated with the retrieved kit file;
loading program components for each determined dependency kit file in the runtime environment, wherein the classes and interfaces are resolved using the program components loaded into the runtime environment;
storing the retrieved program components for the retrieved kit file in a file directory;
storing program components for the determined dependency kit files in the file directory;
storing in the file directory a previously retrieved copy of the kit file;
determining whether the retrieved kit file matches the previously retrieved kit file stored in the file directory;
loading the program components from the file directory into the runtime environment if the retrieved and previously retrieved kit files match; and
throwing an exception if the retrieved and stored kit files do not match.
-
-
40. A computer readable medium containing structures used for installing components in a computer runtime environment in a computer memory executing at least one program calling classes and interfaces, wherein the data structures comprise:
-
a kit file including information on program components to load into the computer memory, wherein the kit file information is retrieved to further retrieve the program components for the kit file, wherein the retrieved program components external to the kit file are loaded into the runtime environment;
at least one dependency kit file associated with the retrieved kit file;
program components for each determined dependency kit file loaded in the runtime environment, wherein the classes and interfaces are resolved using the program components loaded into the runtime environment; and
one kit object for each kit file, wherein one kit object is associated with each kit file and program components of the kit file loaded in the runtime environment, and wherein the kit objects are used to determine how to resolve calls from the program components. - View Dependent Claims (41, 42, 43, 44, 45, 46, 47, 48, 49)
a file directory, wherein the retrieved program components for the retrieved kit file and dependency kit files are stored in the file directory.
-
-
42. The computer readable medium of claim 41, wherein kits files and related program components for any nested dependency kit files of the determined dependency kit files are stored in the file directory.
-
43. The computer readable medium of claim 40, wherein the kit file comprises an XML document, wherein attributes of the kit file indicate a URL for the program components of the kit file and URLs for the dependency kit files.
-
44. The computer readable medium of claim 40, wherein order in which the kit objects are linked indicates an order in which the program components for the associated kit files are considered to resolve a program call, wherein the program components associated with one kit object at a relatively higher order in the linking of the kit objects are considered before the program components associated with kit objects at a relatively later order in the linking.
-
45. The computer readable medium of claim 44, wherein the liked kit objects comprise a first link of system kit objects whose associated program components are capable of being shared by all programs executing in the runtime environment and a second link of kit objects associated with program components that are only used by one program in the runtime environment.
-
46. The computer readable medium of claim 45, wherein the second link of kit objects comprises multiple chains of kit objects, wherein each chain in the second linking is used by only one program executing in the runtime environment.
-
47. The computer readable medium of claim 46, wherein the second link includes a first and second chains that are capable of including at least two of a same kit objects in a different order, wherein a first program in the runtime environment associated with the first chain and a second program associated with the second chain resolve program calls from the program components associated with kit objects in the first and second chains, respectively, in the order indicated in the first and second chains.
-
48. The computer readable medium of claim 47, wherein the first and second chains include kit objects associated with a first and second version of a same kit file program in a different order, wherein the first and second programs executing in the run time environment would resolve program calls from program components for the version of the kit file according to the order of the corresponding kit objects in the first and second chain, respectively.
-
49. The computer readable medium of claim 44, wherein the kit objects are linked according to an order in which the dependency kit files are listed in the kit file.
-
50. A computer readable medium containing data structures used for installing components in a computer runtime environment in a computer memory executing at least one program calling classes and interfaces, wherein the data structures comprise:
-
a kit file including information on program components to load into the computer memory, wherein the kit file information is retrieved to further retrieve the program components for the kit file, wherein the retrieved program components for the kit file are loaded into the runtime environment;
at least one dependency kit file associated with the retrieved kit file;
program components for each determined dependency kit file loaded in the runtime environment, wherein the classes and interfaces are resolved using the program components loaded into the runtime environment; and
a file directory, wherein the retrieved program components for the retrieved kit file and dependency kit files are stored in the file directory, wherein the file directory includes a separate subdirectory for each kit file to store the program components for the kit file, wherein the name of the subdirectory indicates a name and version of the kit file.
-
Specification