Class XmlTemplate

java.lang.Object
org.rrd4j.core.XmlTemplate
Direct Known Subclasses:
RrdDefTemplate

public abstract class XmlTemplate
extends Object
Class used as a base class for various XML template related classes. Class provides methods for XML source parsing and XML tree traversing. XML source may have unlimited number of placeholders (variables) in the format ${variable_name}. Methods are provided to specify variable values at runtime. Note that this class has limited functionality: XML source gets parsed, and variable values are collected. You have to extend this class to do something more useful.
  • Field Details

  • Constructor Details

  • Method Details

    • clearValues

      public void clearValues()
      Removes all placeholder-value mappings.
    • setVariable

      public void setVariable​(String name, String value)
      Sets value for a single XML template variable. Variable name should be specified without leading '${' and ending '}' placeholder markers. For example, for a placeholder ${start}, specify start for the name parameter.
      Parameters:
      name - variable name
      value - value to be set in the XML template
    • setVariable

      public void setVariable​(String name, int value)
      Sets value for a single XML template variable. Variable name should be specified without leading '${' and ending '}' placeholder markers. For example, for a placeholder ${start}, specify start for the name parameter.
      Parameters:
      name - variable name
      value - value to be set in the XML template
    • setVariable

      public void setVariable​(String name, long value)
      Sets value for a single XML template variable. Variable name should be specified without leading '${' and ending '}' placeholder markers. For example, for a placeholder ${start}, specify start for the name parameter.
      Parameters:
      name - variable name
      value - value to be set in the XML template
    • setVariable

      public void setVariable​(String name, double value)
      Sets value for a single XML template variable. Variable name should be specified without leading '${' and ending '}' placeholder markers. For example, for a placeholder ${start}, specify start for the name parameter.
      Parameters:
      name - variable name
      value - value to be set in the XML template
    • setVariable

      public void setVariable​(String name, Color value)
      Sets value for a single XML template variable. Variable name should be specified without leading '${' and ending '}' placeholder markers. For example, for a placeholder ${start}, specify start for the name parameter.
      Parameters:
      name - variable name
      value - value to be set in the XML template
    • setVariable

      public void setVariable​(String name, Date value)
      Sets value for a single XML template variable. Variable name should be specified without leading '${' and ending '}' placeholder markers. For example, for a placeholder ${start}, specify start for the name parameter.
      Parameters:
      name - variable name
      value - value to be set in the XML template
    • setVariable

      public void setVariable​(String name, Calendar value)
      Sets value for a single XML template variable. Variable name should be specified without leading '${' and ending '}' placeholder markers. For example, for a placeholder ${start}, specify start for the name parameter.
      Parameters:
      name - variable name
      value - value to be set in the XML template
    • setVariable

      public void setVariable​(String name, boolean value)
      Sets value for a single XML template variable. Variable name should be specified without leading '${' and ending '}' placeholder markers. For example, for a placeholder ${start}, specify start for the name parameter.
      Parameters:
      name - variable name
      value - value to be set in the XML template
    • hasVariables

      public boolean hasVariables()
      Searches the XML template to see if there are variables in there that will need to be set.
      Returns:
      True if variables were detected, false if not.
    • getVariables

      public String[] getVariables()
      Returns the list of variables that should be set in this template.
      Returns:
      List of variable names as an array of strings.
    • getChildNodes

      protected static Node[] getChildNodes​(Node parentNode, String childName)

      getChildNodes.

      Parameters:
      parentNode - a Node object.
      childName - a String object.
      Returns:
      an array of Node objects.
    • getChildNodes

      protected static Node[] getChildNodes​(Node parentNode)

      getChildNodes.

      Parameters:
      parentNode - a Node object.
      Returns:
      an array of Node objects.
    • getFirstChildNode

      protected static Node getFirstChildNode​(Node parentNode, String childName)

      getFirstChildNode.

      Parameters:
      parentNode - a Node object.
      childName - a String object.
      Returns:
      a Node object.
    • hasChildNode

      protected boolean hasChildNode​(Node parentNode, String childName)

      hasChildNode.

      Parameters:
      parentNode - a Node object.
      childName - a String object.
      Returns:
      a boolean.
    • getChildValue

      protected String getChildValue​(Node parentNode, String childName)

      getChildValue.

      Parameters:
      parentNode - a Node object.
      childName - a String object.
      Returns:
      a String object.
    • getChildValue

      protected String getChildValue​(Node parentNode, String childName, boolean trim)

      getChildValue.

      Parameters:
      parentNode - a Node object.
      childName - a String object.
      trim - a boolean.
      Returns:
      a String object.
    • getValue

      protected String getValue​(Node parentNode)

      getValue.

      Parameters:
      parentNode - a Node object.
      Returns:
      a String object.
    • getValue

      protected String getValue​(Node parentNode, boolean trim)

      getValue.

      Parameters:
      parentNode - a Node object.
      trim - a boolean.
      Returns:
      a String object.
    • getChildValueAsInt

      protected int getChildValueAsInt​(Node parentNode, String childName)
      getChildValueAsInt.
      Parameters:
      parentNode - a Node object.
      childName - a String object.
      Returns:
      a int.
    • getValueAsInt

      protected int getValueAsInt​(Node parentNode)
      getValueAsInt.
      Parameters:
      parentNode - a Node object.
      Returns:
      a int.
    • getChildValueAsLong

      protected long getChildValueAsLong​(Node parentNode, String childName)
      getChildValueAsLong.
      Parameters:
      parentNode - a Node object.
      childName - a String object.
      Returns:
      a long.
    • getValueAsLong

      protected long getValueAsLong​(Node parentNode)
      getValueAsLong.
      Parameters:
      parentNode - a Node object.
      Returns:
      a long.
    • getChildValueAsDouble

      protected double getChildValueAsDouble​(Node parentNode, String childName)
      getChildValueAsDouble.
      Parameters:
      parentNode - a Node object.
      childName - a String object.
      Returns:
      a double.
    • getValueAsDouble

      protected double getValueAsDouble​(Node parentNode)
      getValueAsDouble.
      Parameters:
      parentNode - a Node object.
      Returns:
      a double.
    • getChildValueAsBoolean

      protected boolean getChildValueAsBoolean​(Node parentNode, String childName)
      getChildValueAsBoolean.
      Parameters:
      parentNode - a Node object.
      childName - a String object.
      Returns:
      a boolean.
    • getValueAsBoolean

      protected boolean getValueAsBoolean​(Node parentNode)
      getValueAsBoolean.
      Parameters:
      parentNode - a Node object.
      Returns:
      a boolean.
    • getValueAsColor

      protected Paint getValueAsColor​(Node parentNode)
      getValueAsColor.
      Parameters:
      parentNode - a Node object.
      Returns:
      a Paint object.
    • isEmptyNode

      protected boolean isEmptyNode​(Node node)
      isEmptyNode.
      Parameters:
      node - a Node object.
      Returns:
      a boolean.
    • validateTagsOnlyOnce

      protected void validateTagsOnlyOnce​(Node parentNode, String[] allowedChildNames)
      validateTagsOnlyOnce.
      Parameters:
      parentNode - a Node object.
      allowedChildNames - an array of String objects.