
Reinhard ask for definitions to support the drawing at:
http://www.gnuenterprise.org/modules.php?op=modload&name=NS-My_eGallery&file=index&do=showpic&pid=31

So here goes.


GEAS v2
--------
Database Adapter - Adapter for each type of database that works with 
GNUe.  Handles unique or special requirements of a particular 
database.  This should be very similar to if not use the database 
programs in "common".

SQL Schema Generator - Generate SQL for interfacing with SQL 
database.  This may be unique for each database (I am not sure at 
this point) or groups of databases.

Object Repository - A way to store object definitions (currently .gcd 
files).  But could also be XML.

Object Server - Implements business object abstraction (the model) in 
a model view controller architecture.  Hides all SQL relationships, 
joins, and tables from the UI.  Allows multiple table definitions for 
a single business object (new from GEASv1).  Security is enforced at 
the Object Server.

Remote Protocol Adapter - Implements CORBA or other RPC type protocol 
over the network.

Method Language Adapter - An adapter to allow methods written in 
various languages (C, C++, Python, Objective-C etc.) (I have to add 
this to the Drawing.)


Future Items
------------
Batch Schema Compilers - A one-time program that converts items in 
the object repository to SQL tables, columns, triggers, store 
procedures etc.  It also compiles methods if necessary and registers 
them with the Object Server.  The primary purpose of this component 
is to not burden the Object Server startup with having to sort 
through possible changes to the Object Repository.

Transaction Processor - Accepts database transactions from SQL Schema 
Generator for formatting and storage.  In early versions this may be 
a simple logging server.  This is simple to implement and will 
off-load the file access work from the main server.  When the 
Synchronization Engine is working this process will also determine 
the need to keep certain transactions.  If they are not need for 
Synchronization then the transaction may not be kept (depending on 
the configuration).

Synchronization Engine - Applies transactions from the Transaction 
Processor to backup databases or remote database based on the 
configuration of the Synchronization Engine.  Required for CRM 
applications.  This is the process or server that a remote user or 
remote database will connect to get updates.

Workflow Server - A Server that defines workflow rules including 
triggers in the SQL database (if the capability exists) and or 
monitors objects to determine when to invoke methods or other data 
transformations without user interaction.
