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
+
+ 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) {