KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > apache > taglibs > standard > tag > common > xml > IfTag


1 /*
2  * Copyright 1999-2004 The Apache Software Foundation.
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  * http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */

16
17 package org.apache.taglibs.standard.tag.common.xml;
18
19 import javax.servlet.jsp.JspTagException JavaDoc;
20 import javax.servlet.jsp.jstl.core.ConditionalTagSupport;
21
22 /**
23  * <p>Tag handler for &lt;if&gt; in JSTL's XML library.</p>
24  *
25  * @author Shawn Bayern
26  */

27
28 public class IfTag extends ConditionalTagSupport {
29
30     //*********************************************************************
31
// Constructor and lifecycle management
32

33     // initialize inherited and local state
34
public IfTag() {
35         super();
36         init();
37     }
38
39     // Releases any resources we may have (or inherit)
40
public void release() {
41         super.release();
42         init();
43     }
44
45
46     //*********************************************************************
47
// Supplied conditional logic
48

49     protected boolean condition() throws JspTagException JavaDoc {
50         XPathUtil xu = new XPathUtil(pageContext);
51         return (xu.booleanValueOf(XPathUtil.getContext(this), select));
52     }
53
54
55     //*********************************************************************
56
// Private state
57

58     private String JavaDoc select; // the value of the 'test' attribute
59

60
61     //*********************************************************************
62
// Attribute accessors
63

64     public void setSelect(String JavaDoc select) {
65         this.select = select;
66     }
67
68
69     //*********************************************************************
70
// Private utility methods
71

72     // resets internal state
73
private void init() {
74         select = null;
75     }
76 }
77
Popular Tags