javax.faces.webapp.FacetTag Maven / Gradle / Ivy
Show all versions of jakarta.faces Show documentation
/*
* Copyright (c) 1997, 2018 Oracle and/or its affiliates. All rights reserved.
*
* This program and the accompanying materials are made available under the
* terms of the Eclipse Public License v. 2.0, which is available at
* http://www.eclipse.org/legal/epl-2.0.
*
* This Source Code may also be made available under the following Secondary
* Licenses when the conditions for such availability set forth in the
* Eclipse Public License v. 2.0 are satisfied: GNU General Public License,
* version 2 with the GNU Classpath Exception, which is available at
* https://www.gnu.org/software/classpath/license.html.
*
* SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
*/
package javax.faces.webapp;
import javax.servlet.jsp.JspException;
import javax.servlet.jsp.tagext.TagSupport;
/**
* FacetTag is the Jakarta Server Pages mechanism for denoting a
* {@link javax.faces.component.UIComponent} is to be added as a
* facet
to the component associated with its parent.
*
* A FacetTag must have one and only one
* child. This child must be a {@link UIComponentTag} instance representing
* a single {@link javax.faces.component.UIComponent} instance.
*/
public class FacetTag extends TagSupport {
// -------------------------------------------------------------- Properties
private static final long serialVersionUID = 5019035861261307895L;
/**
* The name of this facet. This will be used as the facet name for
* our UIComponentTag
child in our UIComponentTag
* parent's facet list.
*/
private String name = null;
/**
* Return the name to be assigned to this facet.
*
* @return the name
*/
public String getName() {
return (name);
}
/**
* Set the name to be assigned to this facet.
*
* @param name The new facet name
*/
public void setName(String name) {
this.name = name;
}
// ------------------------------------------------------------- Tag Methods
/**
* Release any resources allocated by this tag instance.
*/
@Override
public void release() {
super.release();
this.name = null;
}
/**
*
Return EVAL_BODY_INCLUDE
to cause nested body
* content to be evaluated.
*/
@Override
public int doStartTag() throws JspException {
return (EVAL_BODY_INCLUDE);
}
}