Configurations for binding software assemblies to application programs
First Claim
1. A computer-implemented method, comprising:
- receiving a request corresponding to binding at least one shared assembly to executable code; and
interpreting configuration information to determine a version of a shared assembly to bind to the executable code, wherein the configuration information is separate from the shared assembly.
2 Assignments
0 Petitions
Accused Products
Abstract
A method, system and infrastructure that allow an application to run with specified versions of assemblies bound thereto, while allowing the application author, assembly publisher and/or an administrator to change the originally-specified version as desired. Each assembly may exist and run side-by-side on the system with other versions of the same assembly being used by other applications. An application manifest specifies any desired assembly versions, which may be redirected to another version (overridden) by an application configuration. A publisher configuration provided by an assembly publisher can similarly override the specified version. Lastly, an administrator configuration is capable of overriding other configuration versioning information. A table built from the manifest and any configuration redirection may be accessed during execution to quickly locate the appropriate version. The various configuration data structures themselves may be wrapped as assemblies, thereby enabling versioning of configurations.
-
Citations
37 Claims
-
1. A computer-implemented method, comprising:
-
receiving a request corresponding to binding at least one shared assembly to executable code; and
interpreting configuration information to determine a version of a shared assembly to bind to the executable code, wherein the configuration information is separate from the shared assembly. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 29, 30, 31, 32)
-
-
17. A system in a computing environment, comprising:
-
an manifest including information that specifies a dependency of executable code on an identified version of a shared assembly;
a configuration including information that redirects at least one version of a shared assembly to another version of that shared assembly; and
a binding mechanism configured to receive a request directed to execute the executable code, to select the identified version of the shared assembly from the manifest, and to interpret the configuration to determine whether to redirect the identified version in the manifest to another version identified in the configuration.
-
-
28. A computer-implemented method, comprising:
-
receiving a request corresponding to binding a selected version of an assembly to an application program;
determining whether publisher configuration information is associated with the assembly, and if so, interpreting information in the publisher configuration to determine whether to bind to the application program a version of the assembly that is different from the selected version, and if so, selecting that different version as the selected version of the assembly for binding to the application program; and
determining whether application configuration information is associated with the application, and if so, interpreting the application configuration information to determine whether to bind to the application program a version of the assembly that is different from the selected version, and if so, selecting that different version as the selected version of the assembly for binding to the application program.
-
-
33. A computer-implemented method, comprising:
-
receiving a request corresponding to binding a selected version of an assembly to an application program;
determining whether application configuration information is associated with the application, and if so, interpreting the application configuration information to determine whether to bind to the application program a version of the assembly that is different from the selected version, and if so, selecting that different version as the selected version of the assembly for binding to the application program;
determining whether publisher configuration information is associated with the assembly, and if so, interpreting information in the publisher configuration to determine whether to bind to the application program a version of the assembly that is different from the selected version, and if so, selecting that different version as the selected version of the assembly for binding to the application program; and
determining whether administrator configuration information exists, and if so, interpreting administrator configuration information to determine whether to bind to the application program a version of the assembly that is different from the selected version, and if so, selecting that different version as the selected version of the assembly for binding to the application program. - View Dependent Claims (34, 35, 36, 37)
-
Specification