|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object org.pentaho.di.core.xml.XMLHandler
public class XMLHandler
This class contains a number of (static final) methods to facilitate the retrieval of information from XML Node(s).
Constructor Summary | |
---|---|
XMLHandler()
|
Method Summary | |
---|---|
static String |
addTagValue(KettleAttributeInterface tag,
boolean bool)
Build an XML string (including a carriage return) for a certain tag boolean value |
static String |
addTagValue(KettleAttributeInterface tag,
int i)
Build an XML string (with carriage return) for a certain tag integer value |
static String |
addTagValue(KettleAttributeInterface tag,
String val)
Build an XML string (including a carriage return) for a certain tag String value |
static String |
addTagValue(String tag,
BigDecimal val)
Build an XML string (including a carriage return) for a certain tag BigDecimal value |
static String |
addTagValue(String tag,
BigDecimal val,
boolean cr)
Build an XML string (including a carriage return) for a certain tag BigDecimal value |
static String |
addTagValue(String tag,
boolean bool)
Build an XML string (including a carriage return) for a certain tag boolean value |
static String |
addTagValue(String tag,
boolean bool,
boolean cr)
Build an XML string for a certain tag boolean value |
static String |
addTagValue(String tag,
byte[] val)
Build an XML string (including a carriage return) for a certain tag binary (byte[]) value |
static String |
addTagValue(String tag,
byte[] val,
boolean cr)
Build an XML string (including a carriage return) for a certain tag binary (byte[]) value |
static String |
addTagValue(String tag,
Date date)
Build an XML string (with carriage return) for a certain tag Date value |
static String |
addTagValue(String tag,
Date date,
boolean cr)
Build an XML string for a certain tag Date value |
static String |
addTagValue(String tag,
double d)
Build an XML string (with carriage return) for a certain tag double value |
static String |
addTagValue(String tag,
double d,
boolean cr)
Build an XML string for a certain tag double value |
static String |
addTagValue(String tag,
int i)
Build an XML string (with carriage return) for a certain tag integer value |
static String |
addTagValue(String tag,
int i,
boolean cr)
Build an XML string for a certain tag integer value |
static String |
addTagValue(String tag,
long l)
Build an XML string for a certain tag long integer value |
static String |
addTagValue(String tag,
long l,
boolean cr)
Build an XML string for a certain tag long integer value |
static String |
addTagValue(String tag,
String val)
Build an XML string (including a carriage return) for a certain tag String value |
static String |
addTagValue(String tag,
String val,
boolean cr,
String... attributes)
Build an XML string for a certain tag String value |
static void |
appendReplacedChars(StringBuffer value,
String string)
Take the characters from string val and append them to the value stringbuffer In case a character is not allowed in XML, we convert it to an XML code |
static String |
buildCDATA(String string)
|
static String |
closeTag(String tag)
|
static int |
countNodes(Node n,
String tag)
Count nodes with a certain tag |
static String |
date2string(Date date)
|
static String[] |
getNodeAttributes(Node node)
Get all the attributes in a certain node (on the root level) |
static String[] |
getNodeElements(Node node)
|
static List<Node> |
getNodes(Node n,
String tag)
Get nodes with a certain tag one level down |
static String |
getNodeValue(Node n)
Find the value entry in a node |
static Node |
getNodeWithAttributeValue(Node n,
String tag,
String attributeName,
String attributeValue)
Get node child with a certain subtag set to a certain value |
static Node |
getNodeWithTagValue(Node n,
String tag,
String subtag,
String subtagvalue,
int nr)
Get node child with a certain subtag set to a certain value |
static String |
getString()
|
static Node |
getSubNode(Node n,
String tag)
Search for a subnode in the node with a certain tag. |
static Node |
getSubNode(Node n,
String tag,
String subtag)
Search a node for a child of child |
static Node |
getSubNodeByNr(Node n,
String tag,
int nr)
Get a subnode in a node by nr. This method uses caching and assumes you loop over subnodes in sequential order (nr is increasing by 1 each call) |
static Node |
getSubNodeByNr(Node n,
String tag,
int nr,
boolean useCache)
Get a subnode in a node by nr. It optially allows you to use caching. Caching assumes that you loop over subnodes in sequential order (nr is increasing by 1 each call) |
static String |
getTagAttribute(Node node,
String attribute)
|
static String |
getTagValue(Node n,
KettleAttributeInterface code)
Get the value of a tag in a node |
static String |
getTagValue(Node n,
String tag)
Get the value of a tag in a node |
static String |
getTagValue(Node n,
String tag,
String subtag)
Search a node for a certain tag, in that subnode search for a certain subtag. |
static String |
getTagValueWithAttribute(Node n,
String tag,
String attribute)
Get the value of a tag in a node |
static String |
getXMLHeader()
The header string to specify encoding in UTF-8 for XML files |
static String |
getXMLHeader(String encoding)
The header string to specify encoding in an XML file |
static Document |
loadXMLFile(File resource)
|
static Document |
loadXMLFile(org.apache.commons.vfs.FileObject fileObject)
Load a file into an XML document |
static Document |
loadXMLFile(org.apache.commons.vfs.FileObject fileObject,
String systemID,
boolean ignoreEntities,
boolean namespaceAware)
Load a file into an XML document |
static Document |
loadXMLFile(InputStream inputStream)
Read in an XML file from the passed input stream and return an XML document |
static Document |
loadXMLFile(InputStream inputStream,
String systemID,
boolean ignoreEntities,
boolean namespaceAware)
Load a file into an XML document |
static Document |
loadXMLFile(String filename)
Load a file into an XML document |
static Document |
loadXMLFile(URL resource)
Load a file into an XML document |
static Document |
loadXMLString(String string)
Calls loadXMLString with deferNodeExpansion = TRUE |
static Document |
loadXMLString(String string,
Boolean namespaceAware,
Boolean deferNodeExpansion)
Load a String into an XML document |
static String |
openTag(String tag)
|
static byte[] |
stringToBinary(String string)
Convert a XML encoded binary string back to binary format |
static Date |
stringToDate(String dateString)
|
Methods inherited from class java.lang.Object |
---|
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public XMLHandler()
Method Detail |
---|
public static final String getXMLHeader()
public static final String getXMLHeader(String encoding)
encoding
- The desired encoding to use in the XML file
public static final String getTagValue(Node n, KettleAttributeInterface code)
n
- The node to look intag
- The tag to look for
public static final String getTagValue(Node n, String tag)
n
- The node to look intag
- The tag to look for
public static final String getTagValueWithAttribute(Node n, String tag, String attribute)
n
- The node to look intag
- The tag to look for
public static final String getTagValue(Node n, String tag, String subtag)
n
- The node to look intag
- The tag to look forsubtag
- The subtag to look for
public static final int countNodes(Node n, String tag)
n
- The node to look intag
- The tags to count
public static final List<Node> getNodes(Node n, String tag)
n
- The node to look intag
- The tags to count
public static final Node getNodeWithTagValue(Node n, String tag, String subtag, String subtagvalue, int nr)
n
- The node to search intag
- The tag to look forsubtag
- The subtag to look forsubtagvalue
- The value the subtag should havenr
- The nr of occurance of the value
public static final Node getNodeWithAttributeValue(Node n, String tag, String attributeName, String attributeValue)
n
- The node to search intag
- The tag to look forsubtag
- The subtag to look forsubtagvalue
- The value the subtag should havecopyNr
- The nr of occurance of the value
public static final Node getSubNode(Node n, String tag)
n
- The node to look intag
- The tag to look for
public static final Node getSubNode(Node n, String tag, String subtag)
n
- The node to look intag
- The tag to look for in the nodesubtag
- The tag to look for in the children of the node
public static final Node getSubNodeByNr(Node n, String tag, int nr)
n
- The node to look intag
- The tag to countnr
- The position in the node
public static final Node getSubNodeByNr(Node n, String tag, int nr, boolean useCache)
n
- The node to look intag
- The tag to countnr
- The position in the nodeuseCache
- set this to false if you don't want to use caching. For example in cases where you want to loop over subnodes of a certain tag in reverse or random order.
public static final String getNodeValue(Node n)
n
- The node
public static final String getTagAttribute(Node node, String attribute)
public static final Document loadXMLFile(String filename) throws KettleXMLException
filename
- The filename to load into a document
KettleXMLException
public static final Document loadXMLFile(org.apache.commons.vfs.FileObject fileObject) throws KettleXMLException
filename
- The filename to load into a document
KettleXMLException
public static final Document loadXMLFile(org.apache.commons.vfs.FileObject fileObject, String systemID, boolean ignoreEntities, boolean namespaceAware) throws KettleXMLException
filename
- The filename to load into a documentsystemId
- Provide a base for resolving relative URIs.ignoreEntities
- Ignores external entities and returns an empty dummy.namespaceAware
- support XML namespaces.
KettleXMLException
public static final Document loadXMLFile(InputStream inputStream) throws KettleXMLException
inputStream
- The filename input stream to read the document from
KettleXMLException
public static final Document loadXMLFile(InputStream inputStream, String systemID, boolean ignoreEntities, boolean namespaceAware) throws KettleXMLException
inputStream
- The stream to load a document fromsystemId
- Provide a base for resolving relative URIs.ignoreEntities
- Ignores external entities and returns an empty dummy.namespaceAware
- support XML namespaces.
KettleXMLException
public static final Document loadXMLFile(File resource) throws KettleXMLException
KettleXMLException
public static final Document loadXMLFile(URL resource) throws KettleXMLException
file
- The file to load into a document
KettleXMLException
public static final Document loadXMLString(String string) throws KettleXMLException
string
-
KettleXMLException
public static final Document loadXMLString(String string, Boolean namespaceAware, Boolean deferNodeExpansion) throws KettleXMLException
string
- The XML text to load into a documentBoolean
- true to defer node expansion, false to not defer.
KettleXMLException
public static final String getString()
public static final String addTagValue(String tag, String val, boolean cr, String... attributes)
tag
- The XML tagval
- The String value of the tagcr
- true if a carriage return is desired after the ending tag.
public static void appendReplacedChars(StringBuffer value, String string)
value
- the stringbuffer to append tostring
- the string to "encode"public static final String addTagValue(KettleAttributeInterface tag, String val)
tag
- The XML tagval
- The String value of the tag
public static final String addTagValue(String tag, String val)
tag
- The XML tagval
- The String value of the tag
public static final String addTagValue(KettleAttributeInterface tag, boolean bool)
tag
- The XML tagbool
- The boolean value of the tag
public static final String addTagValue(String tag, boolean bool)
tag
- The XML tagbool
- The boolean value of the tag
public static final String addTagValue(String tag, boolean bool, boolean cr)
tag
- The XML tagbool
- The boolean value of the tagcr
- true if a carriage return is desired after the ending tag.
public static final String addTagValue(String tag, long l)
tag
- The XML tagl
- The long integer value of the tag
public static final String addTagValue(String tag, long l, boolean cr)
tag
- The XML tagl
- The long integer value of the tagcr
- true if a carriage return is desired after the ending tag.
public static final String addTagValue(KettleAttributeInterface tag, int i)
tag
- The XML tagi
- The integer value of the tag
public static final String addTagValue(String tag, int i)
tag
- The XML tagi
- The integer value of the tag
public static final String addTagValue(String tag, int i, boolean cr)
tag
- The XML tagi
- The integer value of the tagcr
- true if a carriage return is desired after the ending tag.
public static final String addTagValue(String tag, double d)
tag
- The XML tagd
- The double value of the tag
public static final String addTagValue(String tag, double d, boolean cr)
tag
- The XML tagd
- The double value of the tagcr
- true if a carriage return is desired after the ending tag.
public static final String addTagValue(String tag, Date date)
tag
- The XML tagdate
- The Date value of the tag
public static final String addTagValue(String tag, Date date, boolean cr)
tag
- The XML tagdate
- The Date value of the tagcr
- true if a carriage return is desired after the ending tag.
public static final String addTagValue(String tag, BigDecimal val)
tag
- The XML tagval
- The BigDecimal value of the tag
public static final String addTagValue(String tag, BigDecimal val, boolean cr)
tag
- The XML tagval
- The BigDecimal value of the tag
public static final String addTagValue(String tag, byte[] val) throws IOException
tag
- The XML tagval
- The binary value of the tag
IOException
- in case there is an Base64 or GZip encoding problempublic static final String addTagValue(String tag, byte[] val, boolean cr) throws IOException
tag
- The XML tagval
- The binary value of the tag
IOException
- in case there is an Base64 or GZip encoding problempublic static String[] getNodeAttributes(Node node)
node
- The node to examine
public static String[] getNodeElements(Node node)
public static Date stringToDate(String dateString)
public static String date2string(Date date)
public static byte[] stringToBinary(String string) throws KettleException
string
- the (Byte64/GZip) encoded string
KettleException
- In case there is a decoding errorpublic static String buildCDATA(String string)
public static final String openTag(String tag)
public static final String closeTag(String tag)
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |