主权项 |
1. A system that supports the use of different types of dependency injection and other software modeling or software development frameworks, comprising:
a computer, including a processor and memory; a service provider interface (SPI) which allows for plugin of a plurality of framework model plugins, including at least a first framework model plugin for an Open Services Gateway initiative (OSGi) framework having a first modeling or development framework and a second framework model plugin for a Java Management Extensions (JMX) framework having a second modeling or development framework different than the first modeling and development framework model,
wherein the first framework model plugin introduces, into a unified software model, a first plurality of constructs and a first plurality of legitimate relationships between the first plurality of constructs, including whether a particular construct requires or produces another construct, as defined by the first modeling or development framework, and wherein the first plurality of constructs introduced by the first framework model plugin can be exposed as categories of component for use with the unified software model, andwherein the second framework model plugin introduces, into the unified software model, a second plurality of constructs and a second plurality of legitimate relationships between the second plurality of constructs, including whether a particular construct requires or produces another construct, as defined by the second modeling or development framework, and wherein the second plurality of constructs introduced by the second framework model plugin can be exposed as categories of component for use with the unified software model; an application provider interface (API) which exposes the categories of component provided by the unified software model and which provides a plurality of functions that allow for machines or implementations to be specified by a software developer, including that objects be linked to the categories of component that are defined by the SPI and the plurality of framework model plugins; and wherein the system dynamically generates the unified software model based on the first plurality of constructs, second plurality of constructs, first plurality of legitimate relationships, and second plurality of legitimate relationships introduced by the SPI and the plurality of framework model plugins; and wherein the unified software model is accessible via the API and is used to link objects specified by the software developer, and to model or develop software applications in accordance with the unified software model. |