Class LocationAttributes

java.lang.Object
org.apache.struts2.util.location.LocationAttributes

public class LocationAttributes extends Object

A class to handle location information stored in attributes. These attributes are typically setup using LocationAttributes.Pipe which augments the SAX stream with additional attributes, e.g.:

 <root xmlns:loc="http://struts.apache.org/xwork/location"
       loc:src="file://path/to/file.xml"
       loc:line="1" loc:column="1">
   <foo loc:src="file://path/to/file.xml" loc:line="2" loc:column="3"/>
 </root>
 
Since:
2.1.8
See Also:
  • Field Details

  • Method Details

    • addLocationAttributes

      public static Attributes addLocationAttributes(Locator locator, Attributes attrs)
      Add location attributes to a set of SAX attributes.
      Parameters:
      locator - the Locator (can be null)
      attrs - the Attributes where locator information should be added
      Returns:
      Location enabled Attributes.
    • getLocation

      public static Location getLocation(Attributes attrs, String description)
      Returns the Location of an element (SAX flavor).
      Parameters:
      attrs - the element's attributes that hold the location information
      description - a description for the location (can be null)
      Returns:
      a Location object
    • getLocationString

      public static String getLocationString(Attributes attrs)
      Returns the location of an element (SAX flavor). If the location is to be kept into an object built from this element, consider using getLocation(Attributes, String) and the Locatable interface.
      Parameters:
      attrs - the element's attributes that hold the location information
      Returns:
      a location string as defined by Location.
    • getURI

      public static String getURI(Attributes attrs)
      Returns the URI of an element (SAX flavor)
      Parameters:
      attrs - the element's attributes that hold the location information
      Returns:
      the element's URI or "[unknown location]" if attrs has no location information.
    • getLine

      public static int getLine(Attributes attrs)
      Returns the line number of an element (SAX flavor)
      Parameters:
      attrs - the element's attributes that hold the location information
      Returns:
      the element's line number or -1 if attrs has no location information.
    • getColumn

      public static int getColumn(Attributes attrs)
      Returns the column number of an element (SAX flavor)
      Parameters:
      attrs - the element's attributes that hold the location information
      Returns:
      the element's column number or -1 if attrs has no location information.
    • getLocation

      public static Location getLocation(Element elem, String description)
      Returns the Location of an element (DOM flavor).
      Parameters:
      elem - the element that holds the location information
      description - a description for the location (if null, the element's name is used)
      Returns:
      a Location object
    • getLocation

      public static Location getLocation(Element elem)
      Same as getLocation(elem, null).
      Parameters:
      elem - the element that holds the location information
      Returns:
      a Location object
    • getLocationString

      public static String getLocationString(Element elem)
      Returns the location of an element that has been processed by this pipe (DOM flavor). If the location is to be kept into an object built from this element, consider using getLocation(Element) and the Locatable interface.
      Parameters:
      elem - the element that holds the location information
      Returns:
      a location string as defined by Location.
    • getURI

      public static String getURI(Element elem)
      Returns the URI of an element (DOM flavor)
      Parameters:
      elem - the element that holds the location information
      Returns:
      the element's URI or "[unknown location]" if elem has no location information.
    • getLine

      public static int getLine(Element elem)
      Returns the line number of an element (DOM flavor)
      Parameters:
      elem - the element that holds the location information
      Returns:
      the element's line number or -1 if elem has no location information.
    • getColumn

      public static int getColumn(Element elem)
      Returns the column number of an element (DOM flavor)
      Parameters:
      elem - the element that holds the location information
      Returns:
      the element's column number or -1 if elem has no location information.
    • remove

      public static void remove(Element elem, boolean recurse)
      Remove the location attributes from a DOM element.
      Parameters:
      elem - the element to remove the location attributes from.
      recurse - if true, also remove location attributes on descendant elements.