Class BasicLink

All Implemented Interfaces:
Cloneable, Constants, CommonAccessibilityHolder, StructureTreeElementHolder

public class BasicLink extends InlineLevel implements StructureTreeElementHolder
Class modelling the fo:basic-link object. This class contains the logic to determine the link represented by this FO, and whether that link is external (uses a URI) or internal (an id reference).
  • Constructor Details

    • BasicLink

      public BasicLink(FONode parent)
      Construct a BasicLink instance with the given FONode as its parent.
      Parameters:
      parent - FONode that is the parent of this object
  • Method Details

    • bind

      public void bind(PropertyList pList) throws FOPException
      Bind property values from the property list to the FO node. Must be overridden in all FObj subclasses that have properties applying to it.
      Overrides:
      bind in class InlineLevel
      Parameters:
      pList - the PropertyList where the properties can be found.
      Throws:
      FOPException - if there is a problem binding the values
    • startOfNode

      public void startOfNode() throws FOPException
      Called after processNode() is called. Subclasses can do additional processing.
      Overrides:
      startOfNode in class FObj
      Throws:
      FOPException - FOP Exception
    • endOfNode

      public void endOfNode() throws FOPException
      Primarily used for making final content model validation checks and/or informing the FOEventHandler that the end of this FO has been reached. The default implementation simply calls FONode.finalizeNode(), without sending any event to the FOEventHandler.

      Note: the recommended way to override this method in subclasses is

      super.endOfNode(); // invoke finalizeNode()

      getFOEventHandler().endXXX(); // send endOfNode() notification

      Overrides:
      endOfNode in class FObjMixed
      Throws:
      FOPException - FOP Exception
    • validateChildNode

      protected void validateChildNode(Locator loc, String nsURI, String localName) throws ValidationException
      Checks to make sure, during SAX processing of input document, that the incoming node is valid for this (parent) node (e.g., checking to see that fo:table is not an immediate child of fo:root) called from FOTreeBuilder.startElement(String, String, String, Attributes) before constructing the child FObj.
      Overrides:
      validateChildNode in class FONode
      Parameters:
      loc - location in the FO source file
      nsURI - namespace of incoming node
      localName - name of the incoming node (without namespace prefix)
      Throws:
      ValidationException - if incoming node not valid for parent
    • getAlignmentAdjust

      public Length getAlignmentAdjust()
      Returns:
      the "alignment-adjust" property
    • getAlignmentBaseline

      public int getAlignmentBaseline()
      Returns:
      the "alignment-baseline" property
    • getBaselineShift

      public Length getBaselineShift()
      Returns:
      the "baseline-shift" property
    • getDominantBaseline

      public int getDominantBaseline()
      Returns:
      the "dominant-baseline" property
    • setStructureTreeElement

      public void setStructureTreeElement(StructureTreeElement structureTreeElement)
      Description copied from class: FONode
      Sets the structure tree element.
      Overrides:
      setStructureTreeElement in class FONode
      Parameters:
      structureTreeElement - set.
    • getStructureTreeElement

      public StructureTreeElement getStructureTreeElement()
      Description copied from class: FONode
      Returns the structure tree element associated to this object.
      Specified by:
      getStructureTreeElement in interface StructureTreeElementHolder
      Overrides:
      getStructureTreeElement in class FONode
      Returns:
      the structure tree element
    • getInternalDestination

      public String getInternalDestination()
      Get the value of the internal-destination property.
      Returns:
      the "internal-destination" property
    • getExternalDestination

      public String getExternalDestination()
      Get the value of the external-destination property.
      Returns:
      the "external-destination" property
    • hasInternalDestination

      public boolean hasInternalDestination()
      Convenience method to check if this instance has an internal destination.
      Returns:
      true if this basic link has an internal destination; false otherwise
    • hasExternalDestination

      public boolean hasExternalDestination()
      Convenience method to check if this instance has an external destination
      Returns:
      true if this basic link has an external destination; false otherwise
    • getShowDestination

      public int getShowDestination()
      Get the value of the show-destination property.
      Returns:
      the "show-destination" property
    • getLocalName

      public String getLocalName()
      Returns the local name (i.e. without namespace prefix) of the node
      Specified by:
      getLocalName in class FONode
      Returns:
      the local name of this node
    • getNameId

      public int getNameId()
      Returns the Constants class integer value of this node
      Overrides:
      getNameId in class FONode
      Returns:
      Constants.FO_BASIC_LINK
    • getAltText

      public String getAltText()