unsetSetContext > Semantics of Dynamic View Type Specifications > Dynamic View Types: Overview
 
Dynamic View Types: Overview
Dynamic view types specify how Rogue Wave Server must notify a Server object structure to a component. Notification is based on three main concepts:
*Main origin: The main origin is a Server object that is designated as the root of a dynamic view. This is the entry point into a Server object structure, from which Rogue Wave Server notifies information to the component that opened the view. The main origin is passed as an argument to the functions that trigger the opening of a view and to the view constructor (see the classes IlsMvServer, IlsRpObject, and IlsMvView). More origins can be added to the view (see IlsMvView). However, the main origin is the only one that can be directly referenced in the dynamic-view type specification as an implicit runtime relation —named origin— of the dynamic view type.
*Propagation: A dynamic view type specifies which Server object types its instances are interested in and to which these instances must subscribe. This involves selecting the relations on which Rogue Wave Server will have to propagate notification from the origin(s) and recursively to the targets of the relations.
*Representation: A dynamic view type defines associations between the representations and the Server object types to which the view subscribes. A dynamic view type can associate 0, 1 or n representations to a subscribed Server object type.
When a view is opened, it automatically subscribes to the Server object that was designated as its main origin (see IlsMvView::getMainOrigin). Notification is propagated to the Server objects that are accessed from the origin via the relations selected in the dynamic view type. During propagation, the view subscribes to these Server objects and relations and creates the associated representations.
If a Server object to which the view subscribes is modified or destroyed, this event is automatically reflected to the associated representation object.
If a Server relation to which the view subscribes is modified, this event has two consequences:
*The representation objects associated with the new relation target are created.
*The representation objects associated with the old target(s) are deleted.
Parameters can be declared on a dynamic view type to initialize or dynamically modify the way Server objects are mapped to the representation objects without altering these Server objects. For instance, parameters can be used to implement dynamic filtering.

Version 5.8
Copyright © 2014, Rogue Wave Software, Inc. All Rights Reserved.