Modular co-versioning in a dynamically linked runtime environment
First Claim
1. A non-transitory, computer-readable storage medium storing program instructions that when executed on a computing device cause the computing device to perform:
- loading, at runtime by a runtime module executing within a runtime environment, a class from a runtime linkable, multi-version library, wherein the multi-version library is configured to include multiple versions of classes, wherein all versions of a respective class correspond to an identical class signature for the respective class;
wherein the runtime module is configured to load, by default, a default version of the class; and
wherein said loading a class comprises;
loading, from the multi-version library, a particular version of the class associated with a particular version of the runtime environment rather than the default version of the class,wherein the particular version of the class is different from the default version of the class.
0 Assignments
0 Petitions
Accused Products
Abstract
Modular co-versioning may involve the creation of multi-version libraries that may include multiple versions of a class. A multi-version library may include a base version and one or more other versions each of which may correspond to a particular, respective version of a software development kit, runtime environment or software platform, according to various embodiments. At runtime, a multi-version library may be searched in order to load a version of a class that corresponds to the version of the currently executing runtime environment. If the multi-version library does not include a version of the class corresponding to the currently executing version of the environment/platform, a version of the class corresponding to a previous version of the environment may be loaded if found in the multi-version library. Alternatively, if no other version of the class is found, a base version of the class may be loaded from the multi-version library.
59 Citations
20 Claims
-
1. A non-transitory, computer-readable storage medium storing program instructions that when executed on a computing device cause the computing device to perform:
-
loading, at runtime by a runtime module executing within a runtime environment, a class from a runtime linkable, multi-version library, wherein the multi-version library is configured to include multiple versions of classes, wherein all versions of a respective class correspond to an identical class signature for the respective class; wherein the runtime module is configured to load, by default, a default version of the class; and wherein said loading a class comprises; loading, from the multi-version library, a particular version of the class associated with a particular version of the runtime environment rather than the default version of the class, wherein the particular version of the class is different from the default version of the class. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A computing device, comprising:
-
a processor; and a memory coupled to the processor, wherein the memory comprises program instructions that when executed by the processor, cause the processor to perform; executing a class loader within a runtime environment; loading, at runtime by the class loader, a class from a runtime linkable, multi-version library, wherein the multi-version library is configured to include multiple versions of classes, wherein all versions of a respective class correspond to an identical class signature for the respective class; wherein the runtime module is configured to load, by default, a default version of the class; and wherein said loading a class comprises loading, from the multi-version library, a particular version of the class associated with a particular version of the runtime environment rather than the default version of the class, wherein the particular version of the class is different from the default version of the class. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
-
15. A computer implemented method, comprising:
-
loading, at runtime by a runtime module executing within a runtime environment, a class from a runtime linkable, multi-version library, wherein the multi-version library is configured to include multiple versions of classes, wherein all versions of a respective class correspond to an identical class signature for the respective class; wherein the runtime module is configured to load, by default, a default version of the class; and wherein said loading a class comprises; loading, from the multi-version library, a particular version of the class associated with a particular version of the runtime environment rather than the default version of the class, wherein the particular version of the class is different from the default version of the class. - View Dependent Claims (16, 17, 18, 19, 20)
-
Specification