KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > com > sun > enterprise > tools > guiframework > view > DescriptorCCPageTitle


1 /*
2  * The contents of this file are subject to the terms
3  * of the Common Development and Distribution License
4  * (the License). You may not use this file except in
5  * compliance with the License.
6  *
7  * You can obtain a copy of the license at
8  * https://glassfish.dev.java.net/public/CDDLv1.0.html or
9  * glassfish/bootstrap/legal/CDDLv1.0.txt.
10  * See the License for the specific language governing
11  * permissions and limitations under the License.
12  *
13  * When distributing Covered Code, include this CDDL
14  * Header Notice in each file and include the License file
15  * at glassfish/bootstrap/legal/CDDLv1.0.txt.
16  * If applicable, add the following below the CDDL Header,
17  * with the fields enclosed by brackets [] replaced by
18  * you own identifying information:
19  * "Portions Copyrighted [year] [name of copyright owner]"
20  *
21  * Copyright 2006 Sun Microsystems, Inc. All rights reserved.
22  */

23
24 package com.sun.enterprise.tools.guiframework.view;
25
26 import com.iplanet.jato.NavigationException;
27 import com.iplanet.jato.RequestContext;
28 import com.iplanet.jato.model.ModelControlException;
29 import com.iplanet.jato.view.ContainerView;
30 import com.iplanet.jato.view.View;
31 import com.iplanet.jato.view.event.ChildDisplayEvent;
32 import com.iplanet.jato.view.event.ChildContentDisplayEvent;
33 import com.iplanet.jato.view.event.DisplayEvent;
34
35 import com.sun.enterprise.tools.guiframework.exception.ChildNotRegisteredException;
36 import com.sun.enterprise.tools.guiframework.view.descriptors.ViewDescriptor;
37
38 import com.sun.web.ui.model.CCPageTitleModel;
39 import com.sun.web.ui.view.pagetitle.CCPageTitle;
40
41
42 public class DescriptorCCPageTitle extends CCPageTitle implements DescriptorContainerView {
43
44     /**
45      * Constructor
46      */

47     public DescriptorCCPageTitle(RequestContext ctx, ContainerView container, String JavaDoc pageName,
48         ViewDescriptor desc, CCPageTitleModel model)
49     {
50     super(container, model, pageName);
51     setRequestContext(ctx);
52     setContainerView(this);
53     setViewDescriptor(desc);
54     registerViewDescriptorChildren();
55     }
56
57
58     /**
59      * This method retrieves this View ViewDescriptor.
60      *
61      * @return This View's ViewDescriptor.
62      */

63     public ViewDescriptor getViewDescriptor() {
64     return _viewDesc;
65     }
66
67
68     /**
69      * This method sets the ViewDescriptor for this View.
70      */

71     protected void setViewDescriptor(ViewDescriptor desc) {
72     _viewDesc = desc;
73     }
74
75
76     /**
77      * This method registerd the Descriptor children.
78      */

79     public void registerViewDescriptorChildren() {
80     DescriptorViewHelper.registerViewDescriptorChildren(getViewDescriptor(), this);
81     }
82
83
84     /**
85      * This method is defined in ContainerView, but it is important to
86      * to override this.
87      *
88      * This method should delegate to the helper createChild method to use the
89      * descriptor information
90      */

91     public View createChild(String JavaDoc name) {
92         // Try to create the Child via a child descriptor
93
View child = null;
94     try {
95         child = DescriptorViewHelper.createChild(this, name);
96     } catch (ChildNotRegisteredException ex) {
97         // Some children have built-in support via the super class
98
child = super.createChild(name);
99     }
100
101     // return the child
102
return child;
103     }
104
105
106     /**
107      *
108      */

109     public RequestContext getRequestContext() {
110     return _reqCtx;
111     }
112
113
114     /**
115      *
116      */

117     public void setRequestContext(RequestContext context) {
118     _reqCtx = context;
119     }
120
121
122     public void forwardTo(RequestContext requestContext) throws NavigationException {
123     getParentViewBean().forwardTo(requestContext);
124     }
125
126
127
128     ////////////////////////////////////////////////////////////
129
// Event Methods //
130
////////////////////////////////////////////////////////////
131

132     /**
133      * This method dispatches BeginDisplay events to each registered
134      * BeginDisplay event handler according the the ViewDescriptor.
135      * This method is defined in ContainerView, but it is important to
136      * to override this.
137      *
138      * @param event The DisplayEvent, created internally by JATO
139      */

140     public void beginDisplay(DisplayEvent event) throws ModelControlException {
141     DescriptorViewHelper.beginDisplay(this, event);
142     super.beginDisplay(event);
143     }
144
145
146     public boolean beginChildDisplay(ChildDisplayEvent event) throws ModelControlException {
147         return DescriptorViewHelper.beginChildDisplay(this, event);
148     }
149
150
151     public String JavaDoc endChildDisplay(ChildContentDisplayEvent event) throws ModelControlException {
152     return DescriptorViewHelper.endChildDisplay(this, event);
153     }
154
155
156     public void endDisplay(DisplayEvent event) {
157     DescriptorViewHelper.endDisplay(this, event);
158     super.endDisplay(event);
159     }
160
161
162     private RequestContext _reqCtx = null;
163     private ViewDescriptor _viewDesc = null;
164 }
165
Popular Tags