// HTMLParser Library $Name: v1_6_20060319 $ - A java-based parser for HTML // http://sourceforge.org/projects/htmlparser // Copyright (C) 2004 Somik Raha // // Revision Control Information // // $Source: /cvsroot/htmlparser/htmlparser/src/org/htmlparser/tags/OptionTag.java,v $ // $Author: derrickoswald $ // $Date: 2005/04/10 23:20:45 $ // $Revision: 1.37 $ // // This library is free software; you can redistribute it and/or // modify it under the terms of the GNU Lesser General Public // License as published by the Free Software Foundation; either // version 2.1 of the License, or (at your option) any later version. // // This library is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU // Lesser General Public License for more details. // // You should have received a copy of the GNU Lesser General Public // License along with this library; if not, write to the Free Software // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA // package org.htmlparser.tags; /** * An option tag within a form. */ public class OptionTag extends CompositeTag { /** * The set of names handled by this tag. */ private static final String[] mIds = new String[] {"OPTION"}; /** * The set of tag names that indicate the end of this tag. */ private static final String[] mEnders = new String[] {"INPUT", "TEXTAREA", "SELECT", "OPTION"}; /** * The set of end tag names that indicate the end of this tag. */ private static final String[] mEndTagEnders = new String[] {"SELECT", "FORM", "BODY", "HTML"}; /** * Create a new option tag. */ public OptionTag () { } /** * Return the set of names handled by this tag. * @return The names to be matched that create tags of this type. */ public String[] getIds () { return (mIds); } /** * Return the set of tag names that cause this tag to finish. * @return The names of following tags that stop further scanning. */ public String[] getEnders () { return (mEnders); } /** * Return the set of end tag names that cause this tag to finish. * @return The names of following end tags that stop further scanning. */ public String[] getEndTagEnders () { return (mEndTagEnders); } /** * Get the <code>VALUE</code> attribute, if any. * @return The value of the <code>VALUE</code> attribute, * or <code>null</code> if the attribute doesn't exist. */ public String getValue () { return (getAttribute ("VALUE")); } /** * Set the value of the value attribute. * @param value The new value of the <code>VALUE</code> attribute. */ public void setValue (String value) { this.setAttribute("VALUE",value); } /** * Get the text of this option. * @return The textual contents of this <code>OPTION</code> tag. */ public String getOptionText() { return toPlainTextString(); } /** * Return a string representation of this node suitable for debugging. * @return The value and text of this tag in a string. */ public String toString() { String output = "OPTION VALUE: " + getValue() + " TEXT: " + getOptionText()+"\n"; return output; } }