About content on demand

The content on demand feature allows an SDM model to delay the loading of its objects content in order to save resources. Unlike a tiling system, content on demand requires that all the objects be present in the model. The objects can be hollow. Assuming that hollow model objects have low memory and time footprints, content on demand allows you to fill them on demand and empty them when they are no more needed. Content on demand sends a notification when the content of a set of objects needs to be loaded, and, optionally, when it can be unloaded.
Content on demand addresses two main use cases:
  • Models that are time-consuming in terms of loading, and applications that are slow at start up. The lazy loading of content speeds the start up of the Diagrammer application because the model and the graphic representation of the model objects are light and simple. Objects are filled on demand, and the customization and rendering time is used only for the requested objects.
  • Fat models that need to load content for a subset of objects only. Typically, only the objects that are visible in the main view should be fully loaded. When panning or zooming, the content of newly visible objects is loaded and the content of non visible objects can be unloaded, which keeps the model memory footprint to a minimum.
The classes of the content on demand feature are located in the package ilog.views.sdm.modeltools . The entry point is the class IlvContentController.