Class WebLink

All Implemented Interfaces:
HTMLElement, com.meterware.httpunit.protocol.ParameterCollection, ScriptingEventHandler

public class WebLink extends WebRequestSource
This class represents a link in an HTML page. Users of this class may examine the structure of the link (as a DOM), or create a WebRequest to simulate clicking on the link.
Author:
Russell Gold, <a href="mailto:benoit.xhenseval@avondi.com>Benoit Xhenseval
  • Field Details

    • MATCH_URL_STRING

      public static final HTMLElementPredicate MATCH_URL_STRING
      Predicate to match part or all of a link's URL string.
    • MATCH_TEXT

      public static final HTMLElementPredicate MATCH_TEXT
      Predicate to match a link's text exactly.
    • MATCH_CONTAINED_TEXT

      public static final HTMLElementPredicate MATCH_CONTAINED_TEXT
      Predicate to match part or all of a link's contained text.
    • MATCH_ID

      public static final HTMLElementPredicate MATCH_ID
      Predicate to match a link's ID.
    • MATCH_NAME

      public static final HTMLElementPredicate MATCH_NAME
      Predicate to match a link's name.
  • Method Details

    • getURLString

      public String getURLString()
      Returns the URL referenced by this link. This may be a relative URL. It will not include any fragment identifier.
    • getText

      public String getText()
      Returns the text value of this link.
      Specified by:
      getText in interface HTMLElement
      Overrides:
      getText in class WebRequestSource
      Since:
      1.6
    • asText

      public String asText()
      Deprecated.
      as of 1.6, use #getText instead
      Returns the text value of this link.
    • click

      public WebResponse click() throws IOException, SAXException
      Submits a request as though the user had clicked on this link. Will also fire the 'onClick', 'onMouseDown' and 'onMouseUp' event if defined. Returns the updated contents of the frame containing the link. Note that if the click updates a different frame, that frame will not be returned by this method.
      Throws:
      IOException
      SAXException
    • mouseOver

      public void mouseOver()
      Simulates moving the mouse over the link. Will fire the 'onMouseOver' event if defined.
    • newScriptable

      public ScriptableDelegate newScriptable()
    • getRequest

      public WebRequest getRequest()
      Creates and returns a web request which will simulate clicking on this link.
      Specified by:
      getRequest in class WebRequestSource
    • getParameterNames

      public String[] getParameterNames()
      Returns an array containing the names of any parameters defined as part of this link's URL.
      Specified by:
      getParameterNames in class WebRequestSource
    • getParameterValues

      public String[] getParameterValues(String name)
      Returns the multiple default values of the named parameter.
      Specified by:
      getParameterValues in class WebRequestSource
    • addPresetParameter

      protected void addPresetParameter(String name, String value)
      Description copied from class: WebRequestSource
      Records a parameter defined by including it in the destination URL. The value can be null, if the parameter name was not specified with an equals sign.
      Specified by:
      addPresetParameter in class WebRequestSource
    • getEmptyParameterValue

      protected String getEmptyParameterValue()
      Specified by:
      getEmptyParameterValue in class WebRequestSource
    • setDestination

      protected void setDestination(String destination)
      Overrides:
      setDestination in class WebRequestSource
    • recordParameters

      public void recordParameters(com.meterware.httpunit.protocol.ParameterProcessor processor) throws IOException
      Iterates through the parameters in this holder, recording them in the supplied parameter processor.
      Throws:
      IOException