PATH |
The EODistribution Layer
- Package:
- com.webobjects.eodistribution.client (client side)
- com.webobjects.eodistribution (server side)
Introduction
The EODistribution layer is used in Java Client applications. It consists of two parts: a framework for the server and a Java package for the client. The EODistribution (or, simply, "distribution") layer performs by-copy object distribution and synchronization. It is responsible for synchronizing the states of the object graphs on the client and on the application server. The distribution layer handles communication over a "channel" (which use transports such as HTTP or CORBA) and moves properties in both directions, that is, as objects are fetched and changes are saved. It encodes and decodes objects as they travel back and forth over the channel.
The classes in the server side of the EODistribution layer are provided by the EOJavaClient framework, and server side APIs are available in both Objective-C and Java (the Java package for the server side APIs is com.webobjects.eodistribution). The classes on the client side are implemented in pure Java and live in the com.webobjects.eodistribution package.
The following table summarizes each class in the EODistribution layer:
Class | Client | Server | Description |
EODistributedDataSource | X | Fetches data using an EOEditingContext on the client as its source of objects. | |
EODistributedObjectStore | X | Handles interaction with the distribution layer's channel, incorporating knowledge of that channel so it can forward messages it receives from the server to its editing contexts and forward messages from its editing contexts to the server. | |
EODistributionChannel | X | Abstract class for distribution channels. | |
EODistributionContext | X | Encodes data to send to the client and decodes data it receives from the client; also tracks and communicates any changes on the server object graph to the client. | |
EOHTTPChannel | X | Implements a distribution channel using HTTP as the transport. | |
WOJavaClientApplet | X | Used to download and create the applet on the client. |
In addition, the utility class EOAccessAdditions declares a number of methods that return client-specific information stored in model files.
© 2001 Apple Computer, Inc. (Last Published April 17, 2001)