Programmer's Guide

 

 Introduction
Preparing the Workspace
 Preparing EMF Models
Creating an Ecore Model
Using the CDO Model Importer
Using the CDO Model Migrator
Migrating a GenModel Manually
Generating a Model
Modifying Generated Getters and Setters
 Developing Client Applications
 Architecture of a Client Application
OSGi
EMF
CDO Client
Net4j Core
Models
Protocol
Transport
 Working with Sessions
Creating and Configuring Sessions
1.1 Session Configurations
1.2 Net4j Connectors
1.3 Authentication and Security
1.4 Recovering from Disconnects
1.5 Passive Updates and Refreshing
1.6 Waiting For Updates
View Management
2.1 Purpose of Views and Transactions
2.2 Branch Points and the View Target
2.3 Opening Views and Transactions
2.4 Accessing Open Views
2.5 Finding Views by ID
2.6 Listening for View-Related Events
2.7 Closing Views
Authorizable Operations
Client and Server Entities
Session Facilities
5.1 Repository Info
5.2 Package Registry
5.3 Revision Manager
5.3.1 Working with Revisions
5.3.2 Pre-fetching Revisions
5.4 Branch Manager
5.4.1 Working with Branches
5.4.2 Working with Tags
5.5 Fetch Rule Manager
5.6 Commit Info Manager
5.7 User Info Manager
5.8 Remote Session Manager
5.8.1 Exchanging Messages With Other Sessions
5.8.2 Collaborating on Shared Topics
5.8.3 Integrating Topics With Your User Interface
Session Events
Session Options
7.1 Generated Package Emulation
7.2 Passive Update Enabled
7.3 Passive Update Mode
7.4 Lock Notification Enabled
7.5 Lock Notification Mode
7.6 Collection Loading Policy
7.7 Large Object Cache
7.8 Permission Updater
7.9 Delegable View Lock Enabled
7.10 Prefetch Send Max Revision Keys
Session Properties
Session Registry
 Working with Views
Understanding Views and Their Types
Thread Safety
Opening and Closing Views
Understanding the CDO File System
4.1 The Root Resource
4.2 Resource Folders
4.3 Model Resources
4.4 Binary Resources
4.5 Text Resources
Resource Sets and Their Usage
Navigating Models
Waiting For Updates
Querying Resources
Querying Model Objects
10 Querying Cross References
11 Custom Queries
12 Units
13 View Events
14 View Options
15 View Properties
 Working with Transactions
Creating and Managing Transactions
Committing and Rolling Back Changes
2.1 Commit Comments
2.2 Partial Commits
Dirtiness Detection
Conflict Detection and Resolution
Merging
Using Save Points
Reverting Changes
Exporting and Importing Changes
Push Transactions
10 Considering Dirty Objects In Queries
11 Transaction Options
 Locking
Lock Types
1.1 Read Locks
1.2 Write Locks
1.3 Write Option Locks
Optimistic Locking
Pessimistic Locking
Durable Locking
 Large Objects
 Branching and Versioning
Working with Branches
Accessing Historical Versions
Comparing Versions
Merging Changes
 Notifications and Event Handling
Listening for Model Changes
Handling Remote Updates
Custom Event Processing
 Integrating with EMF and Other Frameworks
Using CDO with EMF-Based Tools
Extending and Customizing CDO Behavior
 Advanced Topics
Custom View Providers
Optimizing Performance
Handling Large Models Efficiently
Troubleshooting and Debugging
 Best Practices and Patterns
Error Handling Strategies
Recommended Usage Patterns
Common Pitfalls
 Developing Server Applications
 Understanding the Architecture of a Repository
OSGi
CDO Server Core
CDO Store
Protocol
OCL
Net4j Core
Transport
 Installing the Sources