[Objectbridge-jdo-dev] food for thought
Brought to you by:
thma
From: Thomas M. <tho...@ho...> - 2002-01-18 22:35:17
|
hi all, For those of you that are not yet JDO experts I have attached a gzipped overview. This presentation was held by Craig Russel, JDO specification lead back in 2000. This presentation is not up to date but gives a useful overall picture. (thanks to Cristian Rath for pointing me to this presentation). I had several offline discussions with Christian. We came to the conclusion that it may be a good idea to form several loose "working groups" that focus on several aspects of our JDO implementation. This may help us in several ways: - people may share knowledge and ideas - we will get some common understanding about what we have to do - it's a way of socialising and getting in touch with each other Christian prepared a list of topics that we should discuss. This list is mainly based on the JDO spec. 1. Life Cycle of JDO Instances - Term of the JDO Instance (Persistence Capable) - JDO identity and uniquing of data store objects (persistent data) Application (primary key) identity, Data store identity, Non-data store identity JDO object id and the characteristics of the implementing class - Difference between transient instances and persistent instances - Terms of transient transactional, persistent transactional, Nontransactional, Optimistic Transactions - State Transitions (Life Cycle States) 2. JDO Object Model - Requirements on JDO instances - references to other JDO instances - Mapping to the data store - Terms of First Class Objects, Second Class Objects, System-Defined Classes, - Field types of Persistent-capable classes Primitive types, Arrays, Immutable Class types, Mutable Class types, PersistenceCapable Class types, Object Class types, Collection Interface types - Inheritance 3. Important API classes - Interface PersistenceCapable - Interface InstanceCallbacks - Interface PersistenceManagerFactory Connection Factories for application server support - Interface PersistenceManager non-managed, non-managed with extended features, managed, Threading and synchronization, automatic and transparent cache management 4. Transactions - Connection Management Native, Non-native connection pooling, distributed transactions, managed transactions, J2EE Connection Architecture (ManagedConnection, ConnectionManager), Optimistic Transactions - Interface Transaction - Relation to PersistenceManager - J2EE integration CMT, BMT, etc. 5. Query - Relation to the PersistenceManager - JDOQL - Query execution strategies, large result set support, compiled query support, thread safe execution - Namespace in Queries - Element binding, options, Filter specification, Parameter declaration, Import statements, Variable declaration, Ordering statement - Extent interface and the concept 6. The Big Picture - get an overall model that presents the essential concepts - what are the basic parts and components - how do all parts fit together - how to they collaborate - what structures do we have to build to implement the JDO concepts Thats our list of topics We believe that it will be good to have discussions on these topics. Christian is interested in participating in the discussion on the big picture and on the transaction concepts. I'm interested in LifeCycle and in the central API classes. Please contribute your thoughts ! How can we communicate? - by sending emails to this list - by sending in code fragments - by using the discussion forums on the SF site - by sending offline emails cu, Thomas |