#

# CDO Model Repository Documentation

CDO is both a development-time model repository and a run-time persistence framework; being highly optimized it supports object graphs of arbitrary size.

See: Description

CDO Model Repository Client
Package | Description
--- | ---
org.eclipse.emf.cdo | Client concepts like `CDOObject` and `CDOState`.
org.eclipse.emf.cdo.eresource | The generated EMF API of the CDO repository file system.
org.eclipse.emf.cdo.eresource.impl | The generated EMF implementation of the CDO repository file system.
org.eclipse.emf.cdo.eresource.util | The generated EMF utilities of the CDO repository file system.
org.eclipse.emf.cdo.etypes | The generated EMF API of the CDO system data types and native annotations.
org.eclipse.emf.cdo.etypes.impl | The generated EMF implementation of the CDO system data types and native annotations.
org.eclipse.emf.cdo.etypes.util | The generated EMF utilities of the CDO system data types and native annotations.
org.eclipse.emf.cdo.session | Client concepts for dealing with sessions to CDO repositories.
org.eclipse.emf.cdo.session.remote | Client concepts for the communication and collaboration with other sessions.
org.eclipse.emf.cdo.transaction | Client concepts for dealing with transactions, distributed transactions and their save points.
org.eclipse.emf.cdo.util | Client utility classes, some common interfaces and exceptions.
org.eclipse.emf.cdo.view | Client concepts for dealing with views, view sets, queries, CDO objects and EMF resource sets.
org.eclipse.emf.internal.cdo | Exposes `CDOObjectImpl` for extension in generated EMF models.
org.eclipse.emf.spi.cdo | Client service provider interfaces and useful base implementations.

CDO Model Repository Client Admin Support
Package | Description
--- | ---
org.eclipse.emf.cdo.admin | Client side of the protocol to administer CDO repositories remotely.

CDO Model Repository Client Compare Support
Package | Description
--- | ---
org.eclipse.emf.cdo.compare | Client concepts for integrating EMF Compare with CDO.

CDO Model Repository Client Edit Support
Package | Description
--- | ---
org.eclipse.emf.cdo.edit | Useful base classes that can be referenced from custom EMF generator models.
org.eclipse.emf.cdo.eresource.provider | The generated EMF edit support of the CDO repository file system.
org.eclipse.emf.cdo.etypes.provider | The generated EMF edit support of the CDO system data types and native annotations.

CDO Model Repository Client Net4j Support
Package | Description
--- | ---
org.eclipse.emf.cdo.net4j | Client concepts for dealing with Net4j-based sessions to remote repositories.

CDO Model Repository Client UI
Package | Description
--- | ---
org.eclipse.emf.cdo.ui | Reusable UI components specific to the CDO Model Repository.
org.eclipse.emf.cdo.ui.widgets | A library with reusable widgets.

CDO Model Repository Client UI Compare
Package | Description
--- | ---
org.eclipse.emf.cdo.ui.compare | Classes that help to open EMF Compare user interfaces on CDO models.

CDO Model Repository Client Workspace
Package | Description
--- | ---
org.eclipse.emf.cdo.spi.workspace | Server provider interfaces (SPI) for CDO `workspaces`.
org.eclipse.emf.cdo.workspace | Concepts to checkout, open and further operate CDO `workspaces`.

CDO Model Repository Common
Package | Description
--- | ---
org.eclipse.emf.cdo.common | Common concepts that are differently extended in clients and servers.
org.eclipse.emf.cdo.common.admin | Common concepts for the protocol to administer CDO repositories remotely.
org.eclipse.emf.cdo.common.branch | Common concepts for dealing with branches.
org.eclipse.emf.cdo.common.commit | Common concepts for dealing with commits and change sets.
org.eclipse.emf.cdo.common.commit.handler | Some useful commit info handler implementations.
org.eclipse.emf.cdo.common.id | Common concepts for dealing with object and revision IDs.
org.eclipse.emf.cdo.common.lob | Common concepts for dealing with large binary objects and large character objects.
org.eclipse.emf.cdo.common.lock | Common concepts for dealing with durable locks and views.
org.eclipse.emf.cdo.common.model | Common concepts for dealing with models and types.
org.eclipse.emf.cdo.common.protocol | Common concepts for dealing with protocols and CDO-specific I/O.
org.eclipse.emf.cdo.common.revision | Common concepts for dealing with revisions and revision lists.
org.eclipse.emf.cdo.common.revision.delta | Common concepts for dealing with revision deltas and feature deltas.
org.eclipse.emf.cdo.common.security | Common concepts for dealing with permissions and protectable entities.
org.eclipse.emf.cdo.common.util | Common utility classes, some common interfaces and exceptions.
org.eclipse.emf.cdo.spi.common | Common service provider interfaces and useful base implementations.
org.eclipse.emf.cdo.spi.common.admin | Common concepts for dealing with protocols and CDO administration-specific I/O.
org.eclipse.emf.cdo.spi.common.branch | Common service provider interfaces and useful base implementations for dealing with branches.
org.eclipse.emf.cdo.spi.common.commit | Common service provider interfaces and useful base implementations for dealing with commits and change sets.
org.eclipse.emf.cdo.spi.common.id | Common service provider interfaces and useful base implementations for dealing with object and revision IDs.
org.eclipse.emf.cdo.spi.common.lock | Common service provider interfaces and useful base implementations for dealing with object locks.
org.eclipse.emf.cdo.spi.common.model | Common service provider interfaces and useful base implementations for dealing with models and types
org.eclipse.emf.cdo.spi.common.protocol | Common base implementations for dealing with I/O of CDO data structures.
org.eclipse.emf.cdo.spi.common.revision | Common service provider interfaces and useful base implementations for dealing with revisions and deltas.

CDO Model Repository Explorer
Package | Description
--- | ---
org.eclipse.emf.cdo.explorer | Base interfaces and a utility class for `repositories` and `checkouts`.
org.eclipse.emf.cdo.explorer.checkouts | Interfaces for working with `checkouts`.
org.eclipse.emf.cdo.explorer.repositories | Interfaces for working with `repositories`.

CDO Model Repository Expressions
Package | Description
--- | ---
org.eclipse.emf.cdo.expressions | The generated EMF API of the CDO expressions model.
org.eclipse.emf.cdo.expressions.impl | The generated EMF implementation of the CDO expressions model.
org.eclipse.emf.cdo.expressions.util | The generated EMF utilities of the CDO expressions model.

CDO Model Repository Expressions Edit Support
Package | Description
--- | ---
org.eclipse.emf.cdo.expressions.provider | The generated EMF edit support of the CDO expressions model.

CDO Model Repository Security
Package | Description
--- | ---
org.eclipse.emf.cdo.security | The generated EMF API of the CDO security model.
org.eclipse.emf.cdo.security.impl | The generated EMF implementation of the CDO security model.
org.eclipse.emf.cdo.security.util | The generated EMF utilities of the CDO security model.

CDO Model Repository Security Edit Support
Package | Description
--- | ---
org.eclipse.emf.cdo.security.provider | The generated EMF edit support of the CDO security model.

CDO Model Repository Security UI
Package | Description
--- | ---
org.eclipse.emf.cdo.security.ui | Concepts and default implementations for the CDO security user interface.

CDO Model Repository Server
Package | Description
--- | ---
org.eclipse.emf.cdo.server | Server concepts for dealing with repositories and stores.
org.eclipse.emf.cdo.server.mem | Server concepts for dealing with in-memory stores.
org.eclipse.emf.cdo.spi.server | Server service provider interfaces and useful base implementations.

CDO Model Repository Server Admin Support
Package | Description
--- | ---
org.eclipse.emf.cdo.server.admin | Server side of the protocol to administer CDO repositories remotely.
org.eclipse.emf.cdo.server.spi.admin | Server provider interfaces (SPI) for the protocol to administer CDO repositories remotely.

CDO Model Repository Server DB
Package | Description
--- | ---
org.eclipse.emf.cdo.server.db | Server concepts for dealing with DB stores and accessors.
org.eclipse.emf.cdo.server.db.mapping | Server concepts for dealing with mapping strategies and mappings for classes, lists and types.

CDO Model Repository Server Embedded Support
Package | Description
--- | ---
org.eclipse.emf.cdo.server.embedded | Server concepts for dealing with Net4j-based repositories and fail-over infrastructure.

CDO Model Repository Server Lissome
Package | Description
--- | ---
org.eclipse.emf.cdo.server.lissome | Server concepts for dealing with DB stores and accessors.

CDO Model Repository Server MongoDB
Package | Description
--- | ---
org.eclipse.emf.cdo.server.mongodb | Server concepts for dealing with MongoDB stores and accessors.

CDO Model Repository Server Net4j Support
Package | Description
--- | ---
org.eclipse.emf.cdo.server.net4j | Server concepts for dealing with Net4j-based repositories and fail-over infrastructure.

CDO Model Repository Server OCL Support
Package | Description
--- | ---
org.eclipse.emf.cdo.server.ocl | Server implementation of a generic OCL query handler.

CDO Model Repository Server Security Support
Package | Description
--- | ---
org.eclipse.emf.cdo.server.security | Server integration of the `Security` model.
org.eclipse.emf.cdo.server.spi.security | Server provider interfaces (SPI) for the server integration of the `Security` model.

CDO Transfer Framework
Package | Description
--- | ---
org.eclipse.emf.cdo.spi.transfer | Service provider concepts for dealing with transfers of `resources` between `systems`.
org.eclipse.emf.cdo.transfer | Client concepts for dealing with transfers of `resources` between `systems`.

CDO Transfer Framework (Repository Support)
Package | Description
--- | ---
org.eclipse.emf.cdo.transfer.spi.repository | Client concepts for dealing with transfers of `resources` between `systems`.

CDO Transfer Framework (UI)
Package | Description
--- | ---
org.eclipse.emf.cdo.transfer.spi.ui | Service provider concepts for dealing with transfers of `resources` between `systems`.
org.eclipse.emf.cdo.transfer.ui | Reusable implementatins of common JFace concepts for dealing with transfers of `resources` between `systems`.
org.eclipse.emf.cdo.transfer.ui.swt | Reusable `controls` for dealing with transfers of `resources` between `systems`.

CDO Transfer Framework (Workspace Support)
Package | Description
--- | ---
org.eclipse.emf.cdo.transfer.spi.workspace | Client concepts for dealing with transfers of `resources` between `systems`.

CDO is both a development-time model repository and a run-time persistence framework; being highly optimized it supports object graphs of arbitrary size.

CDO offers transactions with save points, explicit locking, change notification, remote queries, temporality, branching, merging, offline and fail-over modes. The storage back-end is pluggable and migrations between direct JDBC, Hibernate, Objectivity/DB, MongoDB or DB4O are seamless for CDO applications.

Copyright (c) 2004-2019 Eike Stepper (Loehne, Germany) and others.
All rights reserved. This program and the accompanying materials are made available under the terms of the Eclipse Public License v1.0 which accompanies this distribution, and is available at http://www.eclipse.org/legal/epl-v10.html