tecgraf.javautils.xml.conversion
Interface XMLConversionInterface

All Known Implementing Classes:
AbstractXMLConversion

public interface XMLConversionInterface

Interface que define os serviços básicos de uma conversão XML. Uma conversão deve ser capaz de processar um arquivo XML validado por um DTD específico e gerar conteúdo validado por outro DTD.

O DTD de origem ou de destino de uma conversão pode ser null, indicando neste caso que o documento de origem ou de destino não possui a declaração DOCTYPE.

OBS.: embora seja válido que o DTD de destino seja null, esta é uma situação pouco comum (provavelmente inválida), e deve ser aplicada com cuidado.

Conversões XML são usadas tipicamente quando o DTD usado por uma aplicação foi alterado e a aplicação deve ser capaz de ler arquivos gerados para versões anteriores do DTD.

See Also:
XMLConverter

Method Summary
 boolean canConvertFrom(String dtd)
          Indica se o conversor trata arquivos correspondentes a um DTD específico.
 boolean canConvertFrom(XMLConversionInterface conversion)
          Indica se a conversão é capaz de processar arquivos gerados por outra conversão.
 ConversionDocument convert()
          Executa a conversão.
 ConversionDocument convert(ConversionDocument doc)
          Converte um documento.
 ConversionDocument convert(File file, boolean validate)
          Converte um documento representado por um arquivo.
 ConversionDocument convert(XMLConversionInterface previousConversion)
          Converte a saída de uma outra conversão (para ser usado em pipelines).
 boolean convertsTo(String dtd)
          Indica se o resultado da conversão corresponde a um DTD.
 ConversionDocument getDocument()
           
 String getTargetDTD()
          Indica que tipos de arquivo este conversor gera.
 void setDocument(ConversionDocument doc)
          Define o documento a ser convertido.
 void writeXML(File file)
          Escreve o documento em um arquivo.
 void writeXML(OutputStream outStream)
          Escreve o documento em um OutputStream.
 void writeXML(String fileName)
          Escreve o documento em um arquivo.
 void writeXML(Writer writer)
          Escreve o documento em um Writer.
 

Method Detail

writeXML

void writeXML(OutputStream outStream)
              throws XMLConversionException
Escreve o documento em um OutputStream. O documento não necessariamente foi convertido.

Parameters:
outStream - - stream de saída
Throws:
XMLConversionException - se a entrada não foi definida

writeXML

void writeXML(Writer writer)
              throws XMLConversionException
Escreve o documento em um Writer. O documento não necessariamente foi convertido.

Parameters:
writer - - Writer de saída
Throws:
XMLConversionException - se a entrada não foi definida

writeXML

void writeXML(String fileName)
              throws XMLConversionException
Escreve o documento em um arquivo. O documento não necessariamente foi convertido.

Parameters:
fileName - - nome do arquivo de saída
Throws:
XMLConversionException - se o arquivo é inválido, se a entrada não foi definida ou se houve algum problema na gravação

writeXML

void writeXML(File file)
              throws XMLConversionException
Escreve o documento em um arquivo. O documento não necessariamente foi convertido.

Parameters:
file - - arquivo de saída
Throws:
XMLConversionException - se o arquivo é inválido, se a entrada não foi definida ou se houve algum problema na gravação

canConvertFrom

boolean canConvertFrom(String dtd)
Indica se o conversor trata arquivos correspondentes a um DTD específico. DTDs nulos (correspondentes a documentos sem a declaração DOCTYPE) são aceitos.

Parameters:
dtd - - DTD a ser comparado com o tratado pelo conversor. Pode ser nulo, sugerindo que o documento de origem não possui a declaração DOCTYPE
Returns:
flag indicando se o conversor trata arquivos associados ao DTD especificado

canConvertFrom

boolean canConvertFrom(XMLConversionInterface conversion)
Indica se a conversão é capaz de processar arquivos gerados por outra conversão. Usado para validar o encadeamento de conversões.

Parameters:
conversion - - conversão anterior
Returns:
flag indiciando se o encadeamento de conversões é possível

convertsTo

boolean convertsTo(String dtd)
Indica se o resultado da conversão corresponde a um DTD.

Parameters:
dtd - - o DTD a ser comparado
Returns:
flag indicando se o DTD em questão corresponde à saída da conversão

getTargetDTD

String getTargetDTD()
Indica que tipos de arquivo este conversor gera.

Returns:
o DTD associado à saída gerada por este conversor

convert

ConversionDocument convert(ConversionDocument doc)
                           throws XMLConversionException
Converte um documento.

Parameters:
doc - - documento a ser convertido
Returns:
documento convertido
Throws:
XMLConversionException - se:
  • tipo do documento (DTD) é incompatível
  • houve algum erro de I/O
  • houve algum erro no processamento do documento

convert

ConversionDocument convert(File file,
                           boolean validate)
                           throws XMLConversionException
Converte um documento representado por um arquivo.

Parameters:
file - - arquivo com o conteúdo a ser convertido
validate - - indica se o documento deve ser validado pelo seu DTD
Returns:
documento convertido
Throws:
XMLConversionException - se:
  • tipo do documento (DTD) é incompatível
  • houve algum erro de I/O
  • houve algum erro no processamento do documento

convert

ConversionDocument convert(XMLConversionInterface previousConversion)
                           throws XMLConversionException
Converte a saída de uma outra conversão (para ser usado em pipelines).

Parameters:
previousConversion - - conversão recém-aplicada
Returns:
documento convertido
Throws:
XMLConversionException - se:
  • tipo do documento (DTD) é incompatível
  • houve algum erro de I/O
  • houve algum erro no processamento do documento

convert

ConversionDocument convert()
                           throws XMLConversionException
Executa a conversão.

IMPORTANTE: a implementação deste método deve se certificar de que o estado do conversor está coerente (p.ex. a entrada de dados foi definida).

Returns:
documento convertido
Throws:
XMLConversionException - se:
  • tipo do documento (DTD) é incompatível
  • houve algum erro de I/O
  • houve algum erro no processamento do documento
  • a entrada não foi definida

getDocument

ConversionDocument getDocument()
Returns:
documento a ser convertido

setDocument

void setDocument(ConversionDocument doc)
Define o documento a ser convertido.

Parameters:
doc - documento a ser convertido


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