Configuring Siebel Open UI > Architecture of Siebel Open UI > Life Cycle of User Interface Elements >
Summary of Physical Renderer Methods
The physical renderer includes the following methods. It uses these methods in the following sequence:
- ShowUI. Renders the container for the metadata, data, and physical event bindings. For example, when Siebel Open UI renders a list applet as a grid, ShowUI renders the third-party grid control that it uses for the applet.
- BindEvents. Sets up the user interface binding of physical events to the physical user interface, represented as HTML elements. It captures the user actions and then translates these actions to logical events in the physical renderer before Siebel Open UI sends them to the presentation model for processing.
- BindData. Downloads the metadata and data from the Siebel Server to the client proxy, and then binds this data to the physical user interface. The list columns that a list applet uses is an example of metadata, and the record set that this list applet uses is an example of data.
- GetPM. Calls a method that the presentation model contains. It is recommended that you only use GetPM to call the following presentation model methods:
- EndLife. Ends the life of the physical renderer.
About Dependency Injection
Dependency injection is a software technique that Siebel Open UI uses to create a dependency between a presentation model and a physical renderer. If Siebel Open UI modifies a method or property in the presentation model, then it also modifies a method or property in the physical renderer. It allows Siebel Open UI to implement logic at run time rather than during a compile. The dependency injection methods that Siebel Open UI uses allows you to use an injected dependency chain, which is a series of two more dependency injections. You can modify Siebel Open UI to make this chaining dependent on conditions that Siebel Open UI modifies at run time. Siebel Open UI can use all the methods that the Init method references in Summary of Presentation Model Methods for dependency injection. For an example that uses dependency injection, see Customizing the Physical Renderer to Refresh the Recycle Bin.