Developing Client Applications

 

 Architecture of a Client Application
1 OSGi
2 EMF
3 CDO Client
4 Net4j Core
5 Models
6 Protocol
7 Transport
 Anatomy of a Model Object
1 CDOID
2 CDORevision
3 CDOView
4 CDOState
 Working with Sessions
1 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
2 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
3 Authorizable Operations
4 Client and Server Entities
5 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
6 Session Events
7 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
8 Session Properties
9 Session Registry
 Working with Views
1 Understanding Views and Their Types
2 Opening and Closing Views
3 Thread Safety
3.1 Using Critical Sections
3.2 Using a Delegable Lock
4 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
5 Resource Sets and Their Usage
6 Navigating Models
7 Waiting For Updates
8 Querying Resources
9 Querying Model Objects
10 Querying Cross References
11 Custom Queries
12 Units
13 View Events
14 View Options
15 View Properties
 Working with Transactions
1 Creating and Managing Transactions
2 Committing and Rolling Back Changes
2.1 Commit Comments
2.2 Partial Commits
3 Dirtiness Detection
4 Conflict Detection and Resolution
5 Merging
6 Using Save Points
7 Reverting Changes
8 Exporting and Importing Changes
9 Push Transactions
10 Considering Dirty Objects In Queries
11 Transaction Options
 Locking
1 Lock Types
1.1 Read Locks
1.2 Write Locks
1.3 Write Option Locks
2 Optimistic Locking
3 Pessimistic Locking
4 Durable Locking
 Large Objects
 Branching and Versioning
1 Working with Branches
2 Accessing Historical Versions
3 Comparing Versions
4 Merging Changes
 Notifications and Event Handling
1 Listening for Model Changes
2 Handling Remote Updates
3 Custom Event Processing
 Integrating with EMF and Other Frameworks
1 Using CDO with EMF-Based Tools
2 Extending and Customizing CDO Behavior
 Advanced Topics
1 Custom View Providers
2 Optimizing Performance
3 Handling Large Models Efficiently
4 Troubleshooting and Debugging
 Best Practices and Patterns
1 Error Handling Strategies
2 Recommended Usage Patterns
3 Common Pitfalls