tecgraf.javautils.xml
Class XMLReader

java.lang.Object
  extended by tecgraf.javautils.xml.XMLReader
All Implemented Interfaces:
Closeable

public class XMLReader
extends Object
implements Closeable

Leitor de documentos XML.

Author:
André Oliveira da Costa

Field Summary
static String DEFAULT_ENCODING
          Encoding default usado na leitura do documento.
 
Constructor Summary
XMLReader(Reader reader, Class<? extends XMLElementInterface> cls, boolean validate)
          Cria um leitor que mapeia todas as tags para um único tipo de objeto XML.
XMLReader(Reader reader, Map<String,Class<? extends XMLElementInterface>> tagToObjMap, boolean validate)
          Cria um leitor que usa um mapa para criar os objetos.
XMLReader(Reader reader, XMLElementFactoryInterface factory, boolean validate)
          Cria um leitor que usa uma fábrica para criar objetos XML a partir das tags.
XMLReader(Reader reader, XMLHandlerInterface handler, boolean validate)
          Cria um leitor que usa um handler para criar objetos XML a partir das tags.
XMLReader(Reader reader, XMLHandlerInterface handler, boolean validate, Object appContext)
          Cria um leitor que usa um handler para criar objetos XML a partir das tags.
 
Method Summary
 void close()
          Fecha o Reader usado para leitura do XML.
 Object getAppRootObject()
          Retorna o objeto da aplicação associado à raiz do documento XML.
 String getDTD()
          Retorna o DTD assoacido ao documento.
 String getEncoding()
          Retorna o encoding associado ao documento.
 XMLElementFactoryInterface getXmlFactory()
          Deprecated. use o método getXMLFactory()
 XMLElementFactoryInterface getXMLFactory()
          Retorna a fábrica de elementos XML usada pelo reader.
 String getXmlFilePath()
          Deprecated. use getXMLFilePath()
 String getXMLFilePath()
          Retorna o path para o arquivo XML.
 XMLElementInterface getXMLRootObject()
          Retorna o objeto XML associado à raiz do documento XML.
 void read()
          Processa o arquivo XML associado ao documento.
 void setEncoding(String encoding)
          Define o encoding a ser usado na leitura do documento.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

DEFAULT_ENCODING

public static final String DEFAULT_ENCODING
Encoding default usado na leitura do documento. FIXME pegar de alguma propriedade, ou talvez assumir UTF-8

See Also:
Constant Field Values
Constructor Detail

XMLReader

public XMLReader(Reader reader,
                 Map<String,Class<? extends XMLElementInterface>> tagToObjMap,
                 boolean validate)
Cria um leitor que usa um mapa para criar os objetos.

Parameters:
reader - reader para leitura do XML
tagToObjMap - mapa relacionando tags a objetos XML
validate - true para validar o documento com relação ao DTD

XMLReader

public XMLReader(Reader reader,
                 Class<? extends XMLElementInterface> cls,
                 boolean validate)
Cria um leitor que mapeia todas as tags para um único tipo de objeto XML.

Parameters:
reader - reader para leitura do XML
cls - classe do objeto XML para o qual todas as tags serão mapeadas
validate - true para validar o documento com relação ao DTD

XMLReader

public XMLReader(Reader reader,
                 XMLElementFactoryInterface factory,
                 boolean validate)
Cria um leitor que usa uma fábrica para criar objetos XML a partir das tags.

Parameters:
reader - reader para leitura do XML
factory - fábrica para criar objetos XML a partir das tags
validate - true para validar o documento com relação ao DTD

XMLReader

public XMLReader(Reader reader,
                 XMLHandlerInterface handler,
                 boolean validate)
Cria um leitor que usa um handler para criar objetos XML a partir das tags.

Parameters:
reader - reader para leitura do XML
handler - handler de eventos da aplicação
validate - true para validar o documento com relação ao DTD

XMLReader

public XMLReader(Reader reader,
                 XMLHandlerInterface handler,
                 boolean validate,
                 Object appContext)
Cria um leitor que usa um handler para criar objetos XML a partir das tags.

Parameters:
reader - reader para leitura do XML
handler - handler de eventos da aplicação
validate - true para validar o documento com relação ao DTD
appContext - contexto da aplicação. Este objeto pode ser acessado por todos os elementos XML durante seu processamento, de forma a permitir acesso a informações da aplicação
Method Detail

read

public final void read()
                throws IOException
Processa o arquivo XML associado ao documento.

Throws:
IOException - se houve algum erro de I/O
IllegalStateException - se o arquivo já foi processado

getEncoding

public final String getEncoding()
Retorna o encoding associado ao documento.

Returns:
encoding associado ao documento

getXmlFactory

@Deprecated
public final XMLElementFactoryInterface getXmlFactory()
Deprecated. use o método getXMLFactory()

Retorna a fábrica de elementos XML usada pelo reader.

Returns:
o objeto que implementa XMLElementFactoryInterface

getXMLFactory

public final XMLElementFactoryInterface getXMLFactory()
Retorna a fábrica de elementos XML usada pelo reader.

Returns:
o objeto que implementa XMLElementFactoryInterface

setEncoding

public final void setEncoding(String encoding)
Define o encoding a ser usado na leitura do documento.

Parameters:
encoding - - novo encoding

getDTD

public final String getDTD()
Retorna o DTD assoacido ao documento.

Returns:
DTD associado ao documento.

getXMLRootObject

public final XMLElementInterface getXMLRootObject()
Retorna o objeto XML associado à raiz do documento XML.

Returns:
objeto associado à raiz do documento XML

getAppRootObject

public final Object getAppRootObject()
Retorna o objeto da aplicação associado à raiz do documento XML. Cabe à aplicação garantir que o elemento XML correspondente à raiz retorne um objeto do tipo correto.

Returns:
objeto da aplicação associado à raiz do documento XML

getXmlFilePath

@Deprecated
public final String getXmlFilePath()
Deprecated. use getXMLFilePath()

Retorna o path para o arquivo XML. Pode ser nulo.

Returns:
o path para o arquivo XML (nulo quando o XML for lido a partir de um InputStream)

getXMLFilePath

public final String getXMLFilePath()
Retorna o path para o arquivo XML. Pode ser nulo.

Returns:
o path para o arquivo XML (nulo quando o XML for lido a partir de um InputStream)

close

public void close()
           throws IOException
Fecha o Reader usado para leitura do XML.

IMPORTANTE: este método só deve ser executado após o término da leitura

Specified by:
close in interface Closeable
Throws:
IOException - se houve algum erro de I/O


Copyright © 2014 Tecgraf/PUC-Rio. All rights reserved.