"org.apache.cayenne.DataChannel" is an abstraction of Cayenne persistence stack. It is very simple - it defines only 4 methods, two for actually performing persistent operations, one to access metadata, and one - to access EventManager:
DataChannel is rarely used by the application directly. Instead ObjectContexts use it internally as an abstract persistent store. There are few kinds of DataChannels in Cayenne:
- DataDomain (the most commonly used DataChannel) connects to one or more databases via DataNodes.
- DataContext can serve as a DataChannel for other DataContexts
- ClientChannel is a DataChannel that connects to a remote Cayenne service.