diva.pod
Interface Delta


public interface Delta

A Delta is an incremental change in the data within some protocol. This is the object that is passed between receivers and transmitters, via a channel. The structure of a Delta is highly-specialized to a particular protocol. However, the following design principle should be observed when designing a protocol and its delta:

A Delta is able to encompass an arbitrary amount of change.

To illustrate, a delta that encodes only, for example, addition and deletion of child nodes (in the tree protocol), does not follow this guideline: the deltas are too fine-grained. While it should be possible to encode these atomic operations, it must also be possible to encode larger operations, such as addition or pruning of a whole subtree, or modification of attribute over an arbitrary collection of nodes.

The reason for this is partly performance (it reduces the number of objects that are passed across channels, a real concern in a large visualization), but mostly a design sensibility that we encourage you to absorb. Don't think in terms of primitive operations on data, think in terms gross transformations on that data. Your life will be better, you will feel more at ease with yourself, and your cat will thank you.

Version:
$Revision: 1.2 $
Author:
John Reekie

Method Summary
 Object getSource()
          Get the very first originating Pod of this delta.
 

Method Detail

getSource

Object getSource()
Get the very first originating Pod of this delta. Pods that receive this delta and pass it on must not change the source, as it is needed to prevent circularities.



Copyright © 2015 Central Laboratory of the Research Councils. All Rights Reserved.