package br.gov.servicos.foundation;
import lombok.NoArgsConstructor;
import lombok.SneakyThrows;
import org.springframework.core.io.Resource;
import java.io.BufferedReader;
import java.io.InputStream;
import java.io.InputStreamReader;
import static java.nio.charset.Charset.defaultCharset;
import static java.util.stream.Collectors.joining;
import static lombok.AccessLevel.PRIVATE;
@NoArgsConstructor(access = PRIVATE)
public class IO {
@SneakyThrows
public static String read(Resource resource) {
return read(resource.getInputStream());
}
@SneakyThrows
public static String read(InputStream stream) {
try (BufferedReader reader = bufferedReader(stream)) {
return reader.lines().collect(joining("\n"));
}
}
@SneakyThrows
public static BufferedReader bufferedReader(InputStream stream) {
return new BufferedReader(new InputStreamReader(stream, defaultCharset()));
}
}