# Class BlockElement

java.lang.Object
com.meterware.httpunit.ParsedHTML
com.meterware.httpunit.BlockElement

All Implemented Interfaces:
  `HTMLElement, HTMLSegment, ScriptingEventHandler`

Direct Known Subclasses:
  `TableCell, TextBlock`

public abstract class BlockElement extends ParsedHTML implements HTMLSegment, HTMLElement
Represents a block-level element such as a paragraph or table cell, which can contain other elements.

Since:
  1.6
Author:
  Russell Gold

## Constructor Summary

Constructors
Modifier
Constructor
Description
`protected`
`BlockElement(WebResponse response, FrameSelector frame, URL baseURL, String baseTarget, Node rootNode, String characterSet)`

## Method Summary

Modifier and Type
Method
Description
`boolean`
`doEvent(String eventScript)`
Deprecated.
since 1.7 - use doEventScript instead
`boolean`
`doEventScript(String eventScript)`
optional do the event if it's defined
`boolean`
`equals(Object obj)`
`String`
`getAttribute(String name)`
get the attribute with the given name
`protected int`
`getAttributeValue(Node node, String attributeName, int defaultValue)`
`String`
`getClassName()`
Returns the class attribute associated with this element.
`Node`
`getDOM()`
Returns a copy of the domain object model associated with this HTML segment.
`String`
`getID()`
Returns the ID associated with this element.
`String`
`getName()`
Returns the name associated with this element.
`Node`
`getNode()`
Returns the DOM node underlying this element.
`ScriptableDelegate`
`getParentDelegate()`
Returns the scriptable delegate which can provide the scriptable delegate for this element.
`ScriptingHandler`
`getScriptingHandler()`
Returns the delegate which supports scripting this element.
`String`
`getTagName()`
Returns the tag for this block.
`String`
`getText()`
Returns the text value of this block.
`String`
`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 it
`int`
`hashCode()`
`boolean`
`isSupportedAttribute(String name)`
Returns true if this element may have an attribute with the specified name.
`ScriptableDelegate`
`newScriptable()`
`void`
`removeAttribute(String name)`
remove the attribute with the given name
`void`
`setAttribute(String name, Object value)`
set the attribute with the given name to the given value

### Methods inherited from class ParsedHTML

`getApplets, getElementNames, getElementsWithAttribute, getElementsWithName, getElementWithID, getFirstMatchingForm, getFirstMatchingLink, getFirstMatchingTable, getFirstMatchingTextBlock, getForms, getFormWithID, getFormWithName, getFrames, getImages, getImageWithAltText, getImageWithName, getImageWithSource, getLinks, getLinkWith, getLinkWithID, getLinkWithImageText, getLinkWithName, getMatchingForms, getMatchingLinks, getMatchingTables, getNextTextBlock, getTables, getTableStartingWith, getTableStartingWithPrefix, getTableWithID, getTableWithSummary, getTextBlocks, isWebLink, toString`

### Methods inherited from class Object

`clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

### Methods inherited from interface HTMLSegment

`getApplets, getElementNames, getElementsWithAttribute, getElementsWithName, getElementWithID, getFirstMatchingForm, getFirstMatchingLink, getFirstMatchingTable, getForms, getFormWithID, getFormWithName, getImages, getImageWithAltText, getImageWithName, getImageWithSource, getLinks, getLinkWith, getLinkWithImageText, getMatchingForms, getMatchingLinks, getMatchingTables, getTables, getTableStartingWith, getTableStartingWithPrefix, getTableWithID, getTableWithSummary, getTextBlocks`

## Constructor Details

### BlockElement

protected BlockElement(WebResponse response, FrameSelector frame, URL baseURL, String baseTarget, Node rootNode, String characterSet)

## Method Details

### getText

public String getText()
Returns the text value of this block.

Specified by:
  `getText` in interface `HTMLElement`

### getTagName

public String getTagName()
Returns the tag for this block.

Specified by:
  `getTagName` in interface `HTMLElement`

### getDOM

public Node getDOM()
Returns a copy of the domain object model associated with this HTML segment.

Overrides:
  `getDOM` in class `ParsedHTML`

### getID

public String getID()
Returns the ID associated with this element. IDs are unique throughout the HTML document.

Specified by:
  `getID` in interface `HTMLElement`

### getClassName

public String getClassName()
Returns the class attribute associated with this element.

Specified by:
  `getClassName` in interface `HTMLElement`

### getName

public String getName()
Returns the name associated with this element.

Specified by:
  `getName` in interface `HTMLElement`

### getTitle

public String getTitle()
Returns the title associated with this element.

Specified by:
  `getTitle` in interface `HTMLElement`

### getScriptingHandler

public ScriptingHandler getScriptingHandler()
Returns the delegate which supports scripting this element.

Specified by:
  `getScriptingHandler` in interface `HTMLElement`

### doEvent

public boolean doEvent(String eventScript)
Deprecated.
since 1.7 - use doEventScript instead
handle the event that has the given script attached by compiling the eventScript as a function and executing it

Specified by:
  `doEvent` in interface `ScriptingEventHandler`
Parameters:
  `eventScript` - - the script to use
Returns:
  true if the script is empty or the result of the script

### doEventScript

public boolean doEventScript(String eventScript)
optional do the event if it's defined

Specified by:
  `doEventScript` in interface `ScriptingEventHandler`
Parameters:
  `eventScript` - - the script to work on
Returns:
  true if the event script was handled

### handleEvent

public boolean handleEvent(String eventName)
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 interface `ScriptingEventHandler`
Parameters:
  `eventName` -
Returns:
  the result of doEventScript

### getParentDelegate

public ScriptableDelegate getParentDelegate()
Description copied from interface: `HTMLElement`
Returns the scriptable delegate which can provide the scriptable delegate for this element.

Specified by:
  `getParentDelegate` in interface `HTMLElement`

### newScriptable

public ScriptableDelegate newScriptable()

Specified by:
  `newScriptable` in interface `HTMLElement`

### getAttribute

public String getAttribute(String name)
get the attribute with the given name

Specified by:
  `getAttribute` in interface `HTMLElement`
Parameters:
  `name` - - the name of the attribute to get

### setAttribute

public void setAttribute(String name, Object value)
set the attribute with the given name to the given value

Specified by:
  `setAttribute` in interface `HTMLElement`
Parameters:
  `name` - - the name of the attribute to set
  `value` - - the value to use

### removeAttribute

public void removeAttribute(String name)
remove the attribute with the given name

Specified by:
  `removeAttribute` in interface `HTMLElement`
Parameters:
  `name` - - the name of the attribute

### isSupportedAttribute

public boolean isSupportedAttribute(String name)
Returns true if this element may have an attribute with the specified name.

Specified by:
  `isSupportedAttribute` in interface `HTMLElement`

### getNode

public Node getNode()
Description copied from interface: `HTMLElement`
Returns the DOM node underlying this element.

Specified by:
  `getNode` in interface `HTMLElement`

### equals

public boolean equals(Object obj)

Overrides:
  `equals` in class `Object`

### hashCode

public int hashCode()

Overrides:
  `hashCode` in class `Object`

### getAttributeValue

protected int getAttributeValue(Node node, String attributeName, int defaultValue)