Implicit composition of component bindings
First Claim
1. A computer program product comprising one or more physical computer-readable storage devices having stored thereon computer-executable instructions that, when executed by one or more processors of a computing system, cause the computing system to perform a method for composing a plurality of components of a program, and wherein the method is comprised of the following acts:
- creating a component domain in which to associate instantiated components;
creating a component domain manager which contains logic mechanisms used to dynamically bind components contained in the component domain at runtime based on matching service imports and service exports of the components that are instantiated and associated with the component domain at runtime, and using the logic mechanisms, the component domain manager performing the follow at runtime;
associating a plurality of instantiated components with said component domain;
identifying and indexing those services exported and those services imported by each of the instantiated components of the component domain; and
comparing at runtime service export data with service import data and then identifying as matching at least a first component that exports a particular service, and at least a second component that imports the particular service, and then binding the first component to the second component for the particular service so that the first component makes the particular service available to the second component at runtime.
2 Assignments
0 Petitions
Accused Products
Abstract
Component domains used to define a binding between various components associated with the component domain. The component domain tracks the various services to be imported by each component, and tracks the various services exported by each component. At runtime, rather than at compile time, the various interrelations between the components are bound using the service import and export data. Accordingly, depending on the components available and their characteristics, the bindings may differ. This permits applications to be much more flexible.
-
Citations
16 Claims
-
1. A computer program product comprising one or more physical computer-readable storage devices having stored thereon computer-executable instructions that, when executed by one or more processors of a computing system, cause the computing system to perform a method for composing a plurality of components of a program, and wherein the method is comprised of the following acts:
-
creating a component domain in which to associate instantiated components; creating a component domain manager which contains logic mechanisms used to dynamically bind components contained in the component domain at runtime based on matching service imports and service exports of the components that are instantiated and associated with the component domain at runtime, and using the logic mechanisms, the component domain manager performing the follow at runtime; associating a plurality of instantiated components with said component domain; identifying and indexing those services exported and those services imported by each of the instantiated components of the component domain; and comparing at runtime service export data with service import data and then identifying as matching at least a first component that exports a particular service, and at least a second component that imports the particular service, and then binding the first component to the second component for the particular service so that the first component makes the particular service available to the second component at runtime. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14)
-
-
15. A computer program product comprising one or more physical computer-readable storage devices having stored thereon computer-executable instructions that, when executed by one or more processors of a computing system, cause the computing system to perform a method for composing a plurality of components of a program, and wherein the method is comprised of the following acts:
-
creating a component domain within a non-volatile portion of computer system memory, the component domain serving as a logical container in which to instantiate various components; creating a component domain manager which contains logic mechanisms used to dynamically bind components contained in the component domain at runtime based on matching service imports and service exports of the components that are instantiated and contained in the component domain at runtime, and wherein the logic mechanisms comprise; an association mechanism that associates the plurality of instantiated components with said component domain; a service inventory mechanism that identifies and indexes at runtime those services exported and those services imported by each of the instantiated components of the component domain; and a matching mechanism that compares at runtime service export data with service import data and identifies at least a first component that exports a particular service, and at least a second component that imports the particular service, and then binds the first component to the second component for the particular service so that the first component makes the particular service available to the second component at runtime.
-
-
16. A computer program product comprising one or more physical computer-readable storage devices having stored thereon computer-executable instructions that, when executed by one or more processors of a computing system, cause the computing system to perform a method for composing a plurality of components of a program, and wherein the method is comprised of the following acts:
-
creating a component domain within a non-volatile portion of computer system memory, the component domain serving as a logical container in which to instantiate various components; creating a component domain manager which contains logic mechanisms used to dynamically bind components contained in the component domain at runtime based on matching service imports and service exports of the components that are instantiated and contained in the component domain at runtime, and wherein the logic mechanisms comprise; an association mechanism that associates the plurality of instantiated components with said component domain at runtime; a service inventory mechanism that identifies and indexes at runtime those services exported and those services imported by each of the instantiated components of the component domain; and a matching mechanism that uses a set of matching rules to compare at runtime service export data with service import data and to then identify at least a first component that exports a particular service, and at least a second component that imports the particular service, and then binds the first component to the second component for the particular service so that the first component makes the particular service available to the second component at runtime.
-
Specification