Patent ID: 7647564
Filing Date: 2010-01-12
Classification: G06F

Abstract:
1. A method for building a representation of a graphical user interface (GUI), comprising: generating a representation of the GUI from metadata, wherein the representation includes at least one control, wherein the at least one control has an interchangeable persistence mechanism; driving the representation through at least one lifecycle stage by an interchangeable lifecycle component; wherein the metadata can include at least one of: hierarchical relationships among controls, control properties, and control event information; wherein the representation can be driven through the at least one lifecycle stage by an interchangeable lifecycle component; wherein an interface is provided to isolate details of the interchangeable lifecycle component from a control container to allow different lifecycle implementations to be interchangeable, the interchangeable lifecycle component further drives a control tree through different lifecycle stages, the control tree includes portal controls, desktop controls, page controls and portlet controls; wherein the at least one control can advance through the at least one lifecycle stage in parallel with another control; wherein the interchangeable life cycle component runs on at least one processor; and wherein the life cycle stages include an “Init” stage that allows a control to perform initialization, a “Load State” stage that loads previously saved state from a request, a “Create Child Controls” stage that creates any child controls, a “Load” stage that obtains any external resources necessary for processing the request, a “Raise Events” stage that is a two phase stage where controls first indicate they want to raise events and then all controls who indicated this are allowed to raise events, a “Pre-render” stage that is the final stage before the rendering stages, a “Save State” stage in which all controls that want to save their states are given the opportunity to do so, a “Render” stage that is the stage where controls create their GUI representations and control how any children are rendered, a “Unload” stage that allows the control to free resources, and “Dispose” stage that does any final cleanup.