edu.uoc.pfc.commons.xml
Class XMLParser

java.lang.Object
  extended by edu.uoc.pfc.commons.xml.XMLParser

public class XMLParser
extends Object

Classe encarregada d'extreure informació continguda dins d'un document XML i d'oferir funcionalitats per crear nous documents XML a partir de nous valors.

Author:
Rubén Salvador Gareta

Constructor Summary
XMLParser()
          Mètode constructor.
 
Method Summary
 void addAttribute(Element node, String attribute, String value)
          Mètode encarregat d'afegir un atribut a un node.
 void addRootNode(Document doc, Element rootNode)
          Mètode encarregat d'afegir el node arrel al document XML.
 void addSubnode(Element parentNode, Element subNode)
          Mètode encarregat d'afegir un nou subnode a un altre node.
 void addTextContext(Element node, String content)
          Mètode encarregat d'assignar un contingut textual a un node.
 Document createDocument()
          Mètode a través del qual es crea un nou document XML.
 Element createNode(Document doc, String nodeName)
          Mètode encarregat de crear un nou node.
 Document getDocumentFromInputStream(InputStream is)
          Mètode a través del cual s'obtindrà la estructura d'un document XML a partir del Input Stream del document.
 Node getNodeFromExpression(Node node, String xpathExpr)
          Mètode a través del cual s'obtindrà un node concret que acompleixi una expressió XPath a partir del node arrel del qual penja el nodes que es vol obtenir.
 NodeList getNodeListFormExpression(Node node, String xpathExpr)
          Mètode a través del cual s'obtindrà una llista de nodes que acompleixi una expressió XPath a partir del node arrel del qual penja la llista de nodes que es vol obtenir.
 Element getRootNode(Document doc)
          Mètode a través del cual s'obtindrà el node arrel d'un document XML.
 void writeDocument(Document doc, OutputStream os)
          Mètode utilitat per a exportar un document XML a un OuputStream.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

XMLParser

public XMLParser()
          throws ParserConfigurationException
Mètode constructor.

Throws:
ParserConfigurationException
Method Detail

getDocumentFromInputStream

public Document getDocumentFromInputStream(InputStream is)
                                    throws SAXException,
                                           IOException
Mètode a través del cual s'obtindrà la estructura d'un document XML a partir del Input Stream del document.

Parameters:
is - InputStream del document XML.
Returns:
Estructura Document del document XML.
Throws:
IOException
SAXException

getNodeListFormExpression

public NodeList getNodeListFormExpression(Node node,
                                          String xpathExpr)
                                   throws XPathExpressionException
Mètode a través del cual s'obtindrà una llista de nodes que acompleixi una expressió XPath a partir del node arrel del qual penja la llista de nodes que es vol obtenir.

Parameters:
node - Node arrel del qual penja la llista de nodes que volem obtenir.
xpathExpr - Expressió XPath utilitzada per a obtenir la llista de nodes.
Returns:
Estructura NodeList amb la llista de nodes.
Throws:
XPathExpressionException

getNodeFromExpression

public Node getNodeFromExpression(Node node,
                                  String xpathExpr)
                           throws XPathExpressionException
Mètode a través del cual s'obtindrà un node concret que acompleixi una expressió XPath a partir del node arrel del qual penja el nodes que es vol obtenir.

Parameters:
node - Node arrel del qual penja el nodes que es vol obtenir.
xpathExpr - Expressió XPath utilitzada per a obtenir el node.
Returns:
Estructura Node amb el node que volem obtenir.
Throws:
XPathExpressionException

getRootNode

public Element getRootNode(Document doc)
Mètode a través del cual s'obtindrà el node arrel d'un document XML.

Parameters:
doc - Document XML.
Returns:
Node arrel del document XML.

createDocument

public Document createDocument()
Mètode a través del qual es crea un nou document XML.

Returns:
Objecte Document amb la estructura del nou document.

createNode

public Element createNode(Document doc,
                          String nodeName)
Mètode encarregat de crear un nou node.

Parameters:
doc - Estructura del document XML.
nodeName - Nom del node que es vol crear
Returns:
Node creat.

addRootNode

public void addRootNode(Document doc,
                        Element rootNode)
Mètode encarregat d'afegir el node arrel al document XML.

Parameters:
doc - Estructura del document XML a la qual es vol afegir el node arrel.
rootNode - Node arrel del document

addSubnode

public void addSubnode(Element parentNode,
                       Element subNode)
Mètode encarregat d'afegir un nou subnode a un altre node.

Parameters:
parentNode - Node sota el qual es volen afegir nous nodes
subNode - Node que ha de penjar del node pare.

addAttribute

public void addAttribute(Element node,
                         String attribute,
                         String value)
Mètode encarregat d'afegir un atribut a un node.

Parameters:
node - Node al qual es vol afegir un atribut.
attribute - Nom de l'atribut que es vol afegir al node.
value - Valor de l'atribut.

addTextContext

public void addTextContext(Element node,
                           String content)
Mètode encarregat d'assignar un contingut textual a un node.

Parameters:
node - Node al qual es vol assignar un valor textual.
content - Valor textual a afegir al node.

writeDocument

public void writeDocument(Document doc,
                          OutputStream os)
                   throws TransformerException
Mètode utilitat per a exportar un document XML a un OuputStream.

Parameters:
doc - Document XML que es vol exportar a OutputStream
os - OutputStream del fitxer on s'escriurà el document XML.
Throws:
TransformerException