Stateful component authoring and execution
US-9465589-B2 · Oct 11, 2016 · US
US9778915B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-9778915-B2 |
| Application number | US-201113037299-A |
| Country | US |
| Kind code | B2 |
| Filing date | Feb 28, 2011 |
| Priority date | Feb 28, 2011 |
| Publication date | Oct 3, 2017 |
| Grant date | Oct 3, 2017 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
A method of creating an application definition for a distributed application is disclosed. Constructs corresponding with a schema of the distributed application are defined in a declarative and technology agnostic manner. The constructs include the application definition, a module definition, and a component definition. Each construct includes metadata.
Opening claim text (preview).
What is claimed is: 1. A method of creating an application definition for a distributed application, comprising: declaratively defining a plurality of constructs corresponding with a schema of the distributed application in a technology agnostic manner, the distributed application including one or more modules, and the one or more modules include, respectively, one or more components; wherein the constructs include the application definition, a module definition, and a component definition, wherein the constructs include metadata, respectively; and declaratively defining in metadata an amount of module instances and an amount of partitions assigned to the module instances, respectively, to be activated at runtime; wherein at runtime, an application framework provides the connections between the components, and wherein at runtime the application definition is used by the application framework to validate a compositional structure of the distributed application. 2. The method of claim 1 wherein the application definition includes a plurality of module definitions and the module definitions include a plurality of component definitions, respectively. 3. The method of claim 2 wherein the module definitions include a common set of metadata shared in the module definitions, respectively. 4. The method of claim 3 wherein the common set of metadata includes metadata regarding “Name,” “Qualified Name,” “Isolation Level,” “Machine Size,” “Enable High Availability,” “Instance Count Hint,” “Component Definitions,” and “Aspect Definitions.” 5. The method of claim 2 wherein the component definitions include a common set of metadata shared in the module definitions, respectively. 6. The method of claim 5 wherein the common set of metadata includes metadata regarding “Component Name,” “Qualified Name,” “Version,” “Activation Policy,” “Module Affinity,” “Component Type,” and “Artifacts.” 7. The method of claim 1 and further comprising serializing the application definition. 8. The method of claim 7 wherein the application definition is serialized from a scripting language. 9. The method of claim 1 and further comprising including the application definition within an application manifest. 10. The method of claim 1 wherein the application definition is used through an application lifecycle. 11. The method of claim 1 wherein the constructs include a component export definition, a component import definition and a component aspect definition. 12. The method of claim 11 wherein the component export definition includes metadata regarding “Name,” “Qualified Name,” “Exporting Component Name,” “Proxy Artifacts,” “Proxy Type Hint,” “Aspects,” “Contract,” “Visibility,” “Listen Address,” “Claimed Listen Address Hint,” “Canonical Address,” and “Publish Address.” 13. The method of claim 11 wherein the component import definition includes metadata regarding “Name,” “Qualified Name,” “Owner Component,” “Instancing Policy,” “Cardinality,” and “Constraint.” 14. The method of claim 11 wherein the component aspect definition includes metadata regarding “Name,” “Qualified Name,” “Before Advice Pointcut Predicate,” “After Advice Pointcut Predicate,” “Error Advice Pointcut Predicate,” “Final Advice Pointcut Predicate,” “Around Advice Pointcut Predicate,” “Artifacts,” and “Component Aspect Type.” 15. The method of claim 1 wherein the application definition includes metadata regarding “Name,” “Base URI [universal resource identifier],” “ID [identifier],” “Version,” “Base Path,” “Module Definitions,” “Aspect Definitions,” “External Exports,” and “Tenant.” 16. A computer readable storage medium, which is not a transitory propagating signal, storing computer executable instructions for controlling a computing device to perform a method comprising: creating an application definition for a distributed application described in a schema, the distributed application including one or more modules, and the one or more modules include, respectively, one or more components, wherein the application definition includes a plurality of constructs corresponding with a schema of the distributed application, wherein creating the application definition includes: expressing component configurations and constraints within the constructs in a declarative manner; and expressing component dependencies, interrelationships, and interactions within the constructs in a declarative manner; wherein the constructs include metadata in a technology agnostic format; and adjustably programming the metadata to declaratively define an amount of module instances and an amount of partitions assigned to the module instances, respectively, to be assigned at runtime; wherein at runtime, an application framework provides the connections between the components, and wherein at runtime the application definition is used by the application framework to validate a compositional structure of the distributed application. 17. The computer readable storage medium of claim 16 and further comprising serializing the application definition. 18. The computer readable storage medium of claim 16 and further including applying the application definition to validate a compositional structure of the distributed application. 19. The computer readable storage medium of claim 18 and further including applying the application definition to enforce the compositional structure at runtime. 20. A method of creating an application definition for a distributed application, comprising: declaratively defining a plurality of constructs corresponding with a schema of the distributed application in a technology agnostic manner, wherein the schema includes one or more modules and the one or more modules include, respectively, one or more components; wherein the constructs include the application definition, a module definition for the one or more modules, respectively, a component definition for the one or more components, respectively, a component export definition for the one or more components providing an export, respectively, a component import definition for the one or more components using an import, respectively, and a component aspect definition; wherein the constructs include metadata; and adjustably programming the metadata to declaratively define an amount of module instances and an amount of partitions assigned to the module instances, respectively, to be assigned at runtime; wherein at runtime, an application framework provides the connections between the components, wherein at runtime the application definition is used by the application framework to validate and enforce a compositional structure of the distributed application. 21. A system for creating an application definition for a distributed application in an application framework, the system comprising: a processor; and memory comprising instructions executable by the processor to: declaratively define a plurality of constructs to correspond with a schema of the distributed application in a technology agnostic manner, the distributed application includes one or more modules, and the one or more modules include, respectively, one or more components, the plurality of constructs include an application definition, a module definition, and a component definition corresponding with one or more module instances of the schema of the distributed application, the one or more module instance having a plurality of components according to the component definition, and the constructs include metadata; declaratively define in metad
Related publications grouped by family.
Answers are generated from the same data shown on this page.