Integrated three-tier application framework with automated class and table generation
First Claim
1. A computer-implemented method comprising:
- obtaining a schema describing a data class;
generating code for use in a multi-tier run-time environment automatically from the schema, the multi-tier run-time environment including a client tier and an application tier, the generated code including a client class for the client tier and a server class for the application tier;
bringing the generated code into a run-time environment having a set of framework components, the components including the client tier, the application tier, and a database tier;
initiating a transaction in the client tier, the transaction including a change to be applied to a first data object, the first data object being an object of the client class cached by the client tier, the first data object representing a datum;
creating in the client tier a change object representing the change to be applied;
communicating the change object from the client tier to the application tier;
in the application tier, applying the change represented by the change object thus communicated to a second data object, the second data object being an object of the server class cached by the application tier, the second data object representing said datum represented by the first data object;
in the application tier, converting the second data object with the change thus applied into a representation suitable for use by the database tier;
communicating the representation from the application tier to the database tier;
in a manner responsive to the representation thus communicated, changing a database entry in the database tier, the database entry including said datum represented by the first and second data objects;
notifying the application tier that the database entry has been changed;
notifying the client tier that the datum represented by the second data object has been changed;
in the client tier, changing a value in a field of the first data object so as to reflect the changed datum;
in the client tier, closing the transaction; and
making the first data object with the field thus updated available for further use in the run-time environment.
6 Assignments
0 Petitions
Accused Products
Abstract
An integrated three-tier application framework with automated class and database table generation. Schema information in the form of metadata structures is used to generate data classes for the client tier and the application tier. Corresponding client tier and application tier data classes implement a common interface that supports generalized access by other system components. Based on the schema information, factory classes are automatically generated for the client tier and application tier which permit instantiation of the generated data classes. Also, database configuration is automated by the generation of database table creation commands from the schema information. In one embodiment, a framework of management components are provided for both the client and application tiers to handle inter-tier communication, transparent caching of data objects in a public store, handling of changes to data via change objects, handling of updates in response to data changes, and resolution of query objects into database queries. Common methods are generated within each data class which recognize the use of a public store and the application of a change object scheme. Further, methods and attributes are inherited from framework superclasses that identify and interface with a public store, and that confer the concept of identity on a data class, as well as the ability to discover the attributes of the data class.
370 Citations
7 Claims
-
1. A computer-implemented method comprising:
-
obtaining a schema describing a data class; generating code for use in a multi-tier run-time environment automatically from the schema, the multi-tier run-time environment including a client tier and an application tier, the generated code including a client class for the client tier and a server class for the application tier; bringing the generated code into a run-time environment having a set of framework components, the components including the client tier, the application tier, and a database tier; initiating a transaction in the client tier, the transaction including a change to be applied to a first data object, the first data object being an object of the client class cached by the client tier, the first data object representing a datum; creating in the client tier a change object representing the change to be applied; communicating the change object from the client tier to the application tier; in the application tier, applying the change represented by the change object thus communicated to a second data object, the second data object being an object of the server class cached by the application tier, the second data object representing said datum represented by the first data object; in the application tier, converting the second data object with the change thus applied into a representation suitable for use by the database tier; communicating the representation from the application tier to the database tier; in a manner responsive to the representation thus communicated, changing a database entry in the database tier, the database entry including said datum represented by the first and second data objects; notifying the application tier that the database entry has been changed; notifying the client tier that the datum represented by the second data object has been changed; in the client tier, changing a value in a field of the first data object so as to reflect the changed datum; in the client tier, closing the transaction; and making the first data object with the field thus updated available for further use in the run-time environment. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
Specification