diff --git a/comportamentais/strategy/retorno-boleto-reflection/pom.xml b/comportamentais/strategy/retorno-boleto-reflection/pom.xml index b07e4462..79913d7e 100755 --- a/comportamentais/strategy/retorno-boleto-reflection/pom.xml +++ b/comportamentais/strategy/retorno-boleto-reflection/pom.xml @@ -20,8 +20,8 @@ maven-compiler-plugin 3.8.1 - 11 - 11 + 17 + 17 diff --git a/comportamentais/strategy/retorno-boleto-reflection/src/main/java/com/manoelcampos/retornoboleto/LeituraRetorno.java b/comportamentais/strategy/retorno-boleto-reflection/src/main/java/com/manoelcampos/retornoboleto/LeituraRetorno.java index e7b783d2..4ac2d749 100755 --- a/comportamentais/strategy/retorno-boleto-reflection/src/main/java/com/manoelcampos/retornoboleto/LeituraRetorno.java +++ b/comportamentais/strategy/retorno-boleto-reflection/src/main/java/com/manoelcampos/retornoboleto/LeituraRetorno.java @@ -2,7 +2,6 @@ import java.io.IOException; import java.io.UncheckedIOException; -import java.lang.reflect.Field; import java.net.URI; import java.nio.file.Files; import java.nio.file.Paths; @@ -25,12 +24,12 @@ public interface LeituraRetorno { List> getProcessadoresCampos(); default List lerArquivo(URI caminhoArquivo) { - try (var reader = Files.newBufferedReader(Paths.get(caminhoArquivo))){ - String line; - List boletos = new ArrayList<>(); - while((line = reader.readLine()) != null){ - String[] vetor = line.split(";"); - Boleto boleto = new Boleto(); + try { + var listaLinhas = Files.readAllLines(Paths.get(caminhoArquivo)); + var boletos = new ArrayList(); + for (String linha : listaLinhas) { + String[] vetor = linha.split(";"); + var boleto = new Boleto(); for (int i = 0; i < getProcessadoresCampos().size(); i++) { setCampoBoleto(i, boleto, vetor[i]); } @@ -46,7 +45,7 @@ default List lerArquivo(URI caminhoArquivo) { private void setCampoBoleto(int idxCampo, Boleto boleto, String valor) { ProcessaCampoArquivo processador = getProcessadoresCampos().get(idxCampo); try { - Field field = boleto.getClass().getDeclaredField(processador.getCampo()); + var field = boleto.getClass().getDeclaredField(processador.getCampo()); field.setAccessible(true); field.set(boleto, processador.converter(valor)); } catch (NoSuchFieldException | SecurityException | IllegalAccessException ex) {