Package systextil.rpt
Class RptProcess
java.lang.Object
systextil.rpt.RptProcess
Cria um processo genérico de geração de RPT. Genérico porque expõe a entrada
padrão, de modo que possa ser executado sem ser a partir de um arquivo de dados.
Após construir um RptProcess
, é preciso alimentar o writer
com os dados, se não tiver sido fornecido um arquivo de dados de entrada.
Ao concluir, executar close()
. O retorno é o endereço completo do arquivo de saída
(outputFile
).
- Author:
- sergio
-
Field Summary
FieldsModifier and TypeFieldDescriptionfinal PrintWriter
Entrada padrão do processo de RPT, disponível somente quando não é informado um arquivo de entrada de dados, isto é,inputFile
é nulo. -
Constructor Summary
ConstructorsConstructorDescriptionRptProcess
(File outputFile, File rptScriptFile, File inputFile) Constrói um processo RPT informando todos os argumentos.RptProcess
(File outputFile, Reader rptScriptReader, File inputFile) Constrói um processo RPT informando todos os argumentos. -
Method Summary
Modifier and TypeMethodDescriptionclose()
Encerra o processo e fecha owriter
.static void
Conveniência para executar RPT a partir da linha de comando.static Path
toTempFile
(Reader in) Grava o conteúdo do Reader em um arquivo temporário aleatório, na codificação do Windows.void
Conveniência que escreve as linhas na entrada padrão deste processo.void
Conveniência que escreve um texto na entrada padrão deste processo.
-
Field Details
-
writer
Entrada padrão do processo de RPT, disponível somente quando não é informado um arquivo de entrada de dados, isto é,inputFile
é nulo. Neste caso, os dados de pipeline devem ser escritos nestePrintWriter
para serem processados, diretamente ou usando os métodoswrite
deste processo. Ao fechar estePrintWriter
a execução do processo será finalizada, mas é recomendado usar o métodoclose()
deste processo, porque faz algumas validações a mais e retorna o arquivo que foi gerado.
-
-
Constructor Details
-
RptProcess
public RptProcess(File outputFile, File rptScriptFile, File inputFile) throws RptInvalidLayout, RptException Constrói um processo RPT informando todos os argumentos.- Parameters:
outputFile
- o caminho completo do arquivo a ser gerado. Se for nulo, será gerado um arquivo temporário comFile.createTempFile()
que será excluído ao encerrar a JVM.rptScriptFile
- o caminho completo do script RPT a ser executadoinputFile
- o caminho completo do arquivo de dados de entrada. Se for nulo, será preciso alimentar a entrada de dados padrão.- Throws:
RptInvalidLayout
- se o script RPT (leiaute) informado for inválidoRptException
- se houver qualquer problema ao iniciar o processo RPT
-
RptProcess
Constrói um processo RPT informando todos os argumentos.- Parameters:
outputFile
- o caminho completo do arquivo a ser gerado. Se for nulo, será gerado um arquivo temporário comFile.createTempFile()
que será excluído ao encerrar a JVM.rptScriptReader
- o conteúdo do arquivo de leiaute a ser usado, o qual será processado a partir de um arquivo temporário.inputFile
- o caminho completo do arquivo de dados de entrada. Se for nulo, será preciso alimentar a entrada de dados padrão.- Throws:
RptException
- se houver qualquer problema ao iniciar o processo RPT
-
-
Method Details
-
toTempFile
Grava o conteúdo do Reader em um arquivo temporário aleatório, na codificação do Windows.Ao terminar, fecha os streams, tanto o de leitura quanto o de escrita.
- Parameters:
in
- o reader contendo o leiaute- Returns:
- o arquivo temporário que foi gerado
- Throws:
RptException
- se algo der errado
-
close
Encerra o processo e fecha owriter
.- Returns:
- o endereço completo do arquivo gerado. Pode ser nulo se tiver sido informado nulo, usando assim a saída padrão do processo.
- Throws:
RptException
- se o resultado não for bem sucedido ou gerar arquivo vazio
-
write
Conveniência que escreve as linhas na entrada padrão deste processo. Não fecha a entrada padrão, permitindo que se escrevam mais dados se quiser. Usa internamente umBufferedReader
para fazer a leitura.- Parameters:
reader
- o leitor de linhas que serão enviadas para a entrada padrão do processo
-
write
Conveniência que escreve um texto na entrada padrão deste processo. Não fecha a entrada padrão, permitindo que se escrevam mais dados se quiser.- Parameters:
string
- o texto que será enviado para a entrada padrão do processo
-
main
Conveniência para executar RPT a partir da linha de comando.- Parameters:
args
- arquivo de saída, arquivo RPT e arquivo de dados TXT- Throws:
RptException
- se houver problema
-