Menu
Home
People
Places
Arts
History
Plants & Animals
Science
Life & Culture
Technology
Reference.org
Connected Data Objects
open-in-new
Model integration features
EMF integration at model level (as opposed to the edit level)
Support for generated models (just switch two .genmodel properties)
Support for dynamic models (just load .ecore file and commit to repository)
Support for legacy models (for compiled models without access to .genmodel)
Support for the Ecore meta model and descendants
User interface features
Eclipse view for working with CDO sessions, transactions, views and resources
Package Manager dialog per session
Eclipse editor for working with resources and objects
Client side features
Multiple sessions to multiple repositories on multiple servers
Multiple transactions per session
Multiple read-only views per session
Multiple audit views per session (an audit is a view that shows a consistent, historical version of a repository)
Multiple resources per view (a view is always associated with its own EMF ResourceSet)
Inter-resource
proxy
resolution
Multiple root objects per resource
Object state shared among all views of a session
Object graph internally unconnected (unused parts of the graph can easily be reclaimed by the garbage collector)
Only new and modified objects committed in a transaction
Transactions can span multiple resources
Demand loading of objects (resources are populated as they are navigated)
Partial loading of collections (chunk size can be configured per session)
Adaptable pre-fetching of objects (different intelligent usage analyzers are available)
Asynchronous
object invalidation (optional)
Clean API to work with sessions, views, transactions and objects
CDOResources are EObjects as well
Objects carry meta information like id, state, version and life span
Support for OSGi environments (headless, Eclipse RCP, ...)
Support for standalone applications (non-OSGi)
Network protocol features
Net4j based binary application protocol
Pluggable transport layer (shipped with NIO socket transport and JVM embedded transport)
Pluggable fail over support
Pluggable authentication (shipped with challenge/response negotiation)
Multiple acceptors per server
Server side features
Pluggable storage adapters
Multiple repositories per server
Multiple models (packages) per repository
Multiple resources (instance documents) per repository
Expressive
XML
configuration file
Configurable storage adapter per repository (see below)
Configurable caching per repository
Clean
API
to work with repositories, sessions, views, transactions and revisions
Support for OSGi environments (usually headless)
Support for standalone applications (non-OSGi)
DB store features
Supports all optional features of the CDO Server
Pluggable
SQL
dialect adapters
Includes support for Derby, HSQLDB,
MySQL
and
Oracle
(TBD)
Pluggable mapping strategies
Includes horizontal mapping strategy (one table per concrete class)
Includes vertical mapping strategy (TBD, one table per class in hierarchy)
Supports different mapping modes for collections
External links
CDO Homepage