Package com.meterware.httpunit
Class WebTable
java.lang.Object
com.meterware.httpunit.WebTable
- All Implemented Interfaces:
HTMLElement
,ScriptingEventHandler
This class represents a table in an HTML page.
- Author:
- Russell Gold, Benoit Xhenseval
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final HTMLElementPredicate
Predicate to match the complete text of a table's first non-blank cell.static final HTMLElementPredicate
Predicate to match a prefix of a table's first non-blank cell.static final HTMLElementPredicate
Predicate to match a table's ID.static final HTMLElementPredicate
Predicate to match a table's summary attribute. -
Method Summary
Modifier and TypeMethodDescriptionString[][]
asText()
Returns a rendering of this table with all cells converted to text.boolean
Deprecated.since 1.7 - use doEventScript insteadboolean
doEventScript
(String eventScript) optional do the event if it's definedgetAttribute
(String name) get the Attribute with the given name - by delegating to NodeUtilsprotected String
getAttribute
(String name, String defaultValue) getCellAsText
(int row, int column) Returns the contents of the specified table cell as text.Returns the class associated with this element.int
Returns the number of columns in the table.getID()
Returns the ID associated with this element.getName()
Returns the name associated with this element.getNode()
Returns the DOM node underlying this element.Returns the scriptable delegate which can provide the scriptable delegate for this element.int
Returns the number of rows in the table.TableRow[]
getRows()
Returns an array of rows for this table.Returns a scriptable object which can act as a proxy for this control.Returns the summary attribute associated with this table.getTableCell
(int row, int column) Returns the contents of the specified table cell as text.Returns the contents of the specified table cell with a given IDReturns the tag name of this node.getText()
Returns the text value of this block.getTitle()
Returns the title associated with this element.boolean
handleEvent
(String eventName) handle the event with the given name by getting the attribute and then executing the eventScript for itboolean
isSupportedAttribute
(String name) Returns true if this element may have an attribute with the specified name.Creates and returns a scriptable object for this control.void
Removes all rows and all columns from this table which have no visible text in them.void
removeAttribute
(String name) remove the Attribute with the given name - by delegating to NodeUtilsvoid
setAttribute
(String name, Object value) set the Attribute with the given name - by delegating to NodeUtilsprotected void
supportAttribute
(String name) toString()
-
Field Details
-
MATCH_FIRST_NONBLANK_CELL
Predicate to match the complete text of a table's first non-blank cell. -
MATCH_FIRST_NONBLANK_CELL_PREFIX
Predicate to match a prefix of a table's first non-blank cell. -
MATCH_SUMMARY
Predicate to match a table's summary attribute. -
MATCH_ID
Predicate to match a table's ID.
-
-
Method Details
-
getRowCount
public int getRowCount()Returns the number of rows in the table. -
getColumnCount
public int getColumnCount()Returns the number of columns in the table. -
getCellAsText
Returns the contents of the specified table cell as text. The row and column numbers are zero-based.- Throws:
IndexOutOfBoundsException
- if the specified cell numbers are not valid
-
getTableCell
Returns the contents of the specified table cell as text. The row and column numbers are zero-based.- Throws:
IndexOutOfBoundsException
- if the specified cell numbers are not valid
-
getTableCellWithID
Returns the contents of the specified table cell with a given ID- Returns:
- TableCell with given ID or null if ID is not found.
-
purgeEmptyCells
public void purgeEmptyCells()Removes all rows and all columns from this table which have no visible text in them. patch [ 1117822 ] Patch for purgeEmptyCells() problem by Glen Stampoultzis -
asText
Returns a rendering of this table with all cells converted to text. -
getSummary
Returns the summary attribute associated with this table. -
toString
-
newScriptable
Creates and returns a scriptable object for this control. Subclasses should override this if they use a different implementation of Scriptable.- Specified by:
newScriptable
in interfaceHTMLElement
-
getParentDelegate
Description copied from interface:HTMLElement
Returns the scriptable delegate which can provide the scriptable delegate for this element. -
getRows
Returns an array of rows for this table. -
getID
Description copied from interface:HTMLElement
Returns the ID associated with this element. IDs are unique throughout the HTML document.- Specified by:
getID
in interfaceHTMLElement
-
getClassName
Description copied from interface:HTMLElement
Returns the class associated with this element.- Specified by:
getClassName
in interfaceHTMLElement
-
getTitle
Description copied from interface:HTMLElement
Returns the title associated with this element.- Specified by:
getTitle
in interfaceHTMLElement
-
getName
Description copied from interface:HTMLElement
Returns the name associated with this element.- Specified by:
getName
in interfaceHTMLElement
-
getScriptingHandler
Returns a scriptable object which can act as a proxy for this control.- Specified by:
getScriptingHandler
in interfaceHTMLElement
-
doEvent
Deprecated.since 1.7 - use doEventScript insteadhandle the event that has the given script attached by compiling the eventScript as a function and executing it- Specified by:
doEvent
in interfaceScriptingEventHandler
- Parameters:
eventScript
- - the script to use- Returns:
- true if the script is empty or the result of the script
-
doEventScript
optional do the event if it's defined- Specified by:
doEventScript
in interfaceScriptingEventHandler
- Returns:
- true if the script is empty or the result of the script
-
handleEvent
Description copied from interface:ScriptingEventHandler
handle the event with the given name by getting the attribute and then executing the eventScript for it- Specified by:
handleEvent
in interfaceScriptingEventHandler
- Returns:
- the result of doEventScript
-
getText
Returns the text value of this block.- Specified by:
getText
in interfaceHTMLElement
-
getTagName
Description copied from interface:HTMLElement
Returns the tag name of this node.- Specified by:
getTagName
in interfaceHTMLElement
-
getAttribute
get the Attribute with the given name - by delegating to NodeUtils- Specified by:
getAttribute
in interfaceHTMLElement
- Parameters:
name
- - the name of the attribute to get- Returns:
- the attribute
-
setAttribute
set the Attribute with the given name - by delegating to NodeUtils- Specified by:
setAttribute
in interfaceHTMLElement
- Parameters:
name
- - the name of the attribute to setvalue
- - the value to set
-
removeAttribute
remove the Attribute with the given name - by delegating to NodeUtils- Specified by:
removeAttribute
in interfaceHTMLElement
- Parameters:
name
- - the name of the attribute to remove
-
isSupportedAttribute
Description copied from interface:HTMLElement
Returns true if this element may have an attribute with the specified name.- Specified by:
isSupportedAttribute
in interfaceHTMLElement
-
getAttribute
-
getNode
Description copied from interface:HTMLElement
Returns the DOM node underlying this element.- Specified by:
getNode
in interfaceHTMLElement
-
supportAttribute
-