/* * Licensed to the Apache Software Foundation (ASF) under one or more * contributor license agreements. See the NOTICE file distributed with * this work for additional information regarding copyright ownership. * The ASF licenses this file to You under the Apache License, Version 2.0 * (the "License"); you may not use this file except in compliance with * the License. You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package javax.servlet.jsp.tagext; /** * Variable information for a tag in a Tag Library; * This class is instantiated from the Tag Library Descriptor file (TLD) * and is available only at translation time. * * This object should be immutable. * * This information is only available in JSP 1.2 format TLDs or above. */ public class TagVariableInfo { /** * Constructor for TagVariableInfo. * * @param nameGiven value of <name-given> * @param nameFromAttribute value of <name-from-attribute> * @param className value of <variable-class> * @param declare value of <declare> * @param scope value of <scope> */ public TagVariableInfo( String nameGiven, String nameFromAttribute, String className, boolean declare, int scope) { this.nameGiven = nameGiven; this.nameFromAttribute = nameFromAttribute; this.className = className; this.declare = declare; this.scope = scope; } /** * The body of the <name-given> element. * * @return The variable name as a constant */ public String getNameGiven() { return nameGiven; } /** * The body of the <name-from-attribute> element. * This is the name of an attribute whose (translation-time) * value will give the name of the variable. One of * <name-given> or <name-from-attribute> is required. * * @return The attribute whose value defines the variable name */ public String getNameFromAttribute() { return nameFromAttribute; } /** * The body of the <variable-class> element. * * @return The name of the class of the variable or * 'java.lang.String' if not defined in the TLD. */ public String getClassName() { return className; } /** * The body of the <declare> element. * * @return Whether the variable is to be declared or not. * If not defined in the TLD, 'true' will be returned. */ public boolean getDeclare() { return declare; } /** * The body of the <scope> element. * * @return The scope to give the variable. NESTED * scope will be returned if not defined in * the TLD. */ public int getScope() { return scope; } /* * private fields */ private String nameGiven; // <name-given> private String nameFromAttribute; // <name-from-attribute> private String className; // <class> private boolean declare; // <declare> private int scope; // <scope> }