Class BaseFrameElement

All Implemented Interfaces:
Serializable, Cloneable, Element, Node
Direct Known Subclasses:
HtmlFrame, HtmlInlineFrame

public abstract class BaseFrameElement extends HtmlElement
Base class for frame and iframe.
See Also:
  • Constructor Details

    • BaseFrameElement

      protected BaseFrameElement(String qualifiedName, SgmlPage page, Map<String,DomAttr> attributes)
      Creates an instance of BaseFrame.
      Parameters:
      qualifiedName - the qualified name of the element type to instantiate
      page - the HtmlPage that contains this element
      attributes - the initial attributes
  • Method Details

    • loadInnerPage

      public void loadInnerPage() throws FailingHttpStatusCodeException
      INTERNAL API - SUBJECT TO CHANGE AT ANY TIME - USE AT YOUR OWN RISK.
      Called after the node for the frame or iframe has been added to the containing page. The node needs to be added first to allow JavaScript in the frame to see the frame in the parent.
      Throws:
      FailingHttpStatusCodeException - if the server returns a failing status code AND the property WebClientOptions.setThrowExceptionOnFailingStatusCode(boolean) is set to true
    • getLongDescAttribute

      public final String getLongDescAttribute()
      Returns the value of the attribute longdesc. Refer to the HTML 4.01 documentation for details on the use of this attribute.
      Returns:
      the value of the attribute longdesc or an empty string if that attribute isn't defined
    • getNameAttribute

      public final String getNameAttribute()
      Returns the value of the attribute name. Refer to the HTML 4.01 documentation for details on the use of this attribute.
      Returns:
      the value of the attribute name or an empty string if that attribute isn't defined
    • setNameAttribute

      public final void setNameAttribute(String name)
      Sets the value of the name attribute.
      Parameters:
      name - the new window name
    • getSrcAttribute

      public final String getSrcAttribute()
      Returns the value of the attribute src. Refer to the HTML 4.01 documentation for details on the use of this attribute.
      Returns:
      the value of the attribute src or an empty string if that attribute isn't defined
    • getFrameBorderAttribute

      public final String getFrameBorderAttribute()
      Returns the value of the attribute frameborder. Refer to the HTML 4.01 documentation for details on the use of this attribute.
      Returns:
      the value of the attribute frameborder or an empty string if that attribute isn't defined
    • getMarginWidthAttribute

      public final String getMarginWidthAttribute()
      Returns the value of the attribute marginwidth. Refer to the HTML 4.01 documentation for details on the use of this attribute.
      Returns:
      the value of the attribute marginwidth or an empty string if that attribute isn't defined
    • getMarginHeightAttribute

      public final String getMarginHeightAttribute()
      Returns the value of the attribute marginheight. Refer to the HTML 4.01 documentation for details on the use of this attribute.
      Returns:
      the value of the attribute marginheight or an empty string if that attribute isn't defined
    • getNoResizeAttribute

      public final String getNoResizeAttribute()
      Returns the value of the attribute noresize. Refer to the HTML 4.01 documentation for details on the use of this attribute.
      Returns:
      the value of the attribute noresize or an empty string if that attribute isn't defined
    • getScrollingAttribute

      public final String getScrollingAttribute()
      Returns the value of the attribute scrolling. Refer to the HTML 4.01 documentation for details on the use of this attribute.
      Returns:
      the value of the attribute scrolling or an empty string if that attribute isn't defined
    • getOnLoadAttribute

      public final String getOnLoadAttribute()
      Returns the value of the attribute onload. This attribute is not actually supported by the HTML specification however it is supported by the popular browsers.
      Returns:
      the value of the attribute onload or an empty string if that attribute isn't defined
    • getEnclosedPage

      public Page getEnclosedPage()
      Returns the currently loaded page in the enclosed window. This is a facility method for getEnclosedWindow().getEnclosedPage().
      Returns:
      the currently loaded page in the enclosed window, or null if no page has been loaded
      See Also:
    • getEnclosedWindow

      public FrameWindow getEnclosedWindow()
      Gets the window enclosed in this frame.
      Returns:
      the window enclosed in this frame
    • setSrcAttribute

      public final void setSrcAttribute(String attribute)
      Sets the value of the src attribute. Also loads the frame with the specified URL, if possible.
      Parameters:
      attribute - the new value of the src attribute
    • setAttributeNS

      protected void setAttributeNS(String namespaceURI, String qualifiedName, String attributeValue, boolean notifyAttributeChangeListeners, boolean notifyMutationObserver)
      Sets the value of the attribute specified by namespace and qualified name.
      Overrides:
      setAttributeNS in class HtmlElement
      Parameters:
      namespaceURI - the URI that identifies an XML namespace
      qualifiedName - the qualified name (prefix:local) of the attribute
      attributeValue - the value of the attribute
      notifyAttributeChangeListeners - to notify the associated HtmlAttributeChangeListeners
      notifyMutationObserver - to notify MutationObservers or not
    • setAttributeNode

      public Attr setAttributeNode(Attr attribute)
      Sets the specified attribute. This method may be overridden by subclasses which are interested in specific attribute value changes, but such methods must invoke super.setAttributeNode(), and should consider the value of the cloning parameter when deciding whether or not to execute custom logic.
      Specified by:
      setAttributeNode in interface Element
      Overrides:
      setAttributeNode in class HtmlElement
      Parameters:
      attribute - the attribute to set
      Returns:
    • cloneNode

      public DomNode cloneNode(boolean deep)
      Creates a new WebWindow for the new clone.
      Specified by:
      cloneNode in interface Node
      Overrides:
      cloneNode in class HtmlElement
    • onAddedToPage

      protected void onAddedToPage()
      Description copied from class: DomNode
      Lifecycle method invoked whenever a node is added to a page. Intended to be overridden by nodes which need to perform custom logic when they are added to a page. This method is recursive, so if you override it, please be sure to call super.onAddedToPage().
      Overrides:
      onAddedToPage in class DomNode
    • remove

      public void remove()
      Description copied from class: DomNode
      Removes this node from all relationships with other nodes.
      Overrides:
      remove in class DomNode
    • removeAttribute

      public final void removeAttribute(String attributeName)
      Description copied from class: HtmlElement
      Removes an attribute specified by name from this element.
      Specified by:
      removeAttribute in interface Element
      Overrides:
      removeAttribute in class HtmlElement
      Parameters:
      attributeName - the attribute attributeName