The Service Framework data model consists of the following key object types:
Framework - Master container for navigation, layout and look-and-feel
Skin - Look-and-feel definition
Tab - Top-level navigation unit
Cell - Basic layout unit
Panel Stack - Ordered content container
Panel - Basic content unit
The framework object is the container for everything else in the UI. A framework contains skins for defining look-and-feel, as well as layout templates and tabs for top-level navigation. Each tab defines the layout cells that are meaningful for the tab (e.g. two cells arranged as vertical columns) and the panel stacks that should be displayed with the tab assigned to specific cells (e.g. left-column panels and right-column panels). The panel stacks contain the panels, which are the most basic content unit.
The Service Framework data model consists of the following supporting object types:
Content - Static content definition
Template: - JSP layout definition
Segmented Option - Full integration to segmented option system
Note: The segmented option object does not extend the
FrameworkObject
base class.
There are a few supporting object types that can be referenced by any other framework object:
A content object defines static content, such as CSS, JavaScript, and HTML.
Template objects define JSP layout templates.
Segmented options are not a framework object, but are integrated into the framework and can be assigned to any object.
There are three tiers of framework objects:
Definition objects: Define the initial or default state for the framework
Configuration objects: Define the state of the framework for a particular user
Instance objects: Hold the live or transient state of the framework for a browser window
The definition objects define the initial or default behavior for the framework. The configuration objects allow certain aspects of the framework to remain persistent for a user when the user logs out. Definition and configuration objects are both persistent objects that are supported by the database.
Instance objects are transient objects that manage the live state of the framework in a particular browser window as the user navigates through the application. When a user logs into the application, the instance objects, if available, are loaded from the configuration. This preserves the state of the framework when the user last logged out. If configuration is unavailable for the user, the instance objects are loaded from the default definitions.