Migrated samskivert into its own, sensibly organized, repository.
git-svn-id: https://samskivert.googlecode.com/svn/trunk@1774 6335cc39-0255-0410-8fd6-9bcaacd3b74c
This commit is contained in:
@@ -0,0 +1,65 @@
|
||||
samskivert notes -*- mode: outline -*-
|
||||
|
||||
* To do:
|
||||
Modify JORA such that if it doesn't find a matching public field in the
|
||||
persistence object, it looks for getter/setter methods that will handle
|
||||
the encoding/decoding of the composite fields during persistification.
|
||||
|
||||
Fix message.properties single quote handling. In messages that have
|
||||
translation substitutions ({0}, {1}, etc.), one has to use '' but in plain
|
||||
strings they have to use \'. It should be one or the other.
|
||||
|
||||
Make MessageManager.resolveBundle more efficient because presently it
|
||||
iterates over all locales looking for an exact match *every* time a
|
||||
message is fetched.
|
||||
|
||||
Make SiteResourceLoader cache the resources it loads (locate and make use
|
||||
of someone else's caching services rather than rewheeling).
|
||||
|
||||
* Minimal database services
|
||||
** Requirements
|
||||
- Connection management (configuration file mapping database identifiers
|
||||
to JDBC info; connection pooling if desired; automatic reconnection on
|
||||
transient error)
|
||||
- Support for retrying transation on transient error
|
||||
- Mechanism for ironing out database idiosyncrasies
|
||||
|
||||
* O/R database services
|
||||
** Requirements
|
||||
- Generate schemas from XML description
|
||||
- Generate Java source from XML description
|
||||
- Load object from table
|
||||
- Extensibility (extend tables & objects)
|
||||
- Partial loads (load subset of object fields)
|
||||
- Partial updates (update subset of object fields)
|
||||
- Joins (populate objects w/data from multiple tables)
|
||||
- Multiple queries (populate objects w/data from multiple queries)
|
||||
- Support multiple operations in the same transaction
|
||||
- Support automatic transation retries on transient errors
|
||||
- Extensible support for smoothing over DB vendor inconsistencies
|
||||
- Handle OID assignment
|
||||
- Support mapping of multiple classes to one table (ie. address contains
|
||||
zipcode object, address table contains all the information)
|
||||
- Loose coupling between in memory objects and data in database
|
||||
- Ability to load entire object and dependencies at once or as needed
|
||||
|
||||
** Postponed or explicitly ignored requirements
|
||||
- Object proxies with just in time loaded fields (use partial loads instead)
|
||||
- Cursor support
|
||||
|
||||
** Related projects (in some sort of order)
|
||||
- Castor http://castor.exolab.org/
|
||||
- Town http://share.whichever.com/index.php?SCREEN=town
|
||||
- POEM http://www.melati.org/
|
||||
- s2j http://www.bitmechanic.com/projects/s2j/
|
||||
- COBRA http://www.kimble.easynet.co.uk/cobra/index.htm
|
||||
- DbGen http://dbgen.sourceforge.net/
|
||||
- JORA http://www.ispras.ru/~knizhnik/
|
||||
- TableGen http://tablegen.sourceforge.net/
|
||||
- DECCO http://www.khill.org/decco/
|
||||
- Osage http://osage.sourceforge.net/
|
||||
- DOGEN http://sourceforge.net/projects/dogen/
|
||||
|
||||
** Related information
|
||||
- http://www.ambysoft.com/mappingObjects.html
|
||||
- http://www.ambysoft.com/persistenceLayer.html
|
||||
Reference in New Issue
Block a user