Class TagData

  • All Implemented Interfaces:
    Cloneable

    public class TagData
    extends Object
    implements Cloneable
    The (translation-time only) attribute/value information for a tag instance.

    TagData is only used as an argument to the isValid, validate, and getVariableInfo methods of TagExtraInfo, which are invoked at translation time.

    • Field Detail

      • REQUEST_TIME_VALUE

        public static final Object REQUEST_TIME_VALUE
        Distinguished value for an attribute to indicate its value is a request-time expression (which is not yet available because TagData instances are used at translation-time).
    • Constructor Detail

      • TagData

        public TagData​(Object[][] atts)
        Constructor for TagData.

        A typical constructor may be

         static final Object[][] att = { { "connection", "conn0" }, { "id", "query0" } };
         static final TagData td = new TagData(att);
         
        All values must be Strings except for those holding the distinguished object REQUEST_TIME_VALUE.
        Parameters:
        atts - the static attribute and values. May be null.
      • TagData

        public TagData​(Hashtable<String,​Object> attrs)
        Constructor for a TagData. If you already have the attributes in a hashtable, use this constructor.
        Parameters:
        attrs - A hashtable to get the values from.
    • Method Detail

      • getId

        public String getId()
        The value of the tag's id attribute.
        Returns:
        the value of the tag's id attribute, or null if no such attribute was specified.
      • getAttribute

        public Object getAttribute​(String attName)
        The value of the attribute. If a static value is specified for an attribute that accepts a request-time attribute expression then that static value is returned, even if the value is provided in the body of a <jsp:attribute> action. The distinguished object REQUEST_TIME_VALUE is only returned if the value is specified as a request-time attribute expression or via the <jsp:attribute> action with a body that contains dynamic content (scriptlets, scripting expressions, EL expressions, standard actions, or custom actions). Returns null if the attribute is not set.
        Parameters:
        attName - the name of the attribute
        Returns:
        the attribute's value
      • setAttribute

        public void setAttribute​(String attName,
                                 Object value)
        Set the value of an attribute.
        Parameters:
        attName - the name of the attribute
        value - the value.
      • getAttributeString

        public String getAttributeString​(String attName)
        Get the value for a given attribute.
        Parameters:
        attName - the name of the attribute
        Returns:
        the attribute value string
        Throws:
        ClassCastException - if attribute value is not a String
      • getAttributes

        public Enumeration<String> getAttributes()
        Enumerates the attributes.
        Returns:
        An enumeration of the attributes in a TagData