{"timestamp":"2023-12-11T12:55:43.942+00:00","status":400,"error":"Bad Request","path":"/abrigos/3/pets"}
Codigo:
public class PetService {
private ClientHttpConfiguration client;
public PetService(ClientHttpConfiguration client) {
this.client = client;
}
public void listarPetsDoAbrigo() throws IOException, InterruptedException {
System.out.println("Digite o id ou nome do abrigo:");
String idOuNome = new Scanner(System.in).nextLine();
String uri = "http://localhost:8080/abrigos/" + idOuNome + "/pets";
HttpResponse<String> response = client.dispararRequisicaoGet(uri);
int statusCode = response.statusCode();
if (statusCode == 404 || statusCode == 500) {
System.out.println("ID ou nome não cadastrado!");
}
String responseBody = response.body();
Pet[] pets = new ObjectMapper().readValue(responseBody, Pet[].class);
List<Pet> petList = Arrays.stream(pets).toList();
System.out.println("Pets cadastrados:");
for (Pet pet : petList) {
long id = pet.getId();
String tipo = pet.getTipo();
String nome = pet.getNome();
String raca = pet.getRaca();
int idade = pet.getIdade();
System.out.println(id + " - " + tipo + " - " + nome + " - " + raca + " - " + idade + " ano(s)");
}
}
public void importarPetsDoAbrigo() throws IOException, InterruptedException {
System.out.println("Digite o id ou nome do abrigo:");
String idOuNome = new Scanner(System.in).nextLine();
System.out.println("Digite o nome do arquivo CSV:");
String nomeArquivo = new Scanner(System.in).nextLine();
BufferedReader reader = null;
try {
reader = new BufferedReader(new FileReader(nomeArquivo));
} catch (IOException e) {
System.out.println("Erro ao carregar o arquivo: " + nomeArquivo);
}
String line;
while ((line = reader.readLine()) != null) {
String[] campos = line.split(",");
String tipo = campos[0];
String nome = campos[1];
String raca = campos[2];
int idade = Integer.parseInt(campos[3]);
String cor = campos[4];
Float peso = Float.parseFloat(campos[5]);
var pet = new Pet(tipo, nome, raca, idade, cor, peso);
String uri = "http://localhost:8080/abrigos/" + idOuNome + "/pets";
HttpResponse<String> response = client.dispararRequisicaoPost(uri, pet);
int statusCode = response.statusCode();
String responseBody = response.body();
if (statusCode == 200) {
System.out.println("Pet cadastrado com sucesso: " + nome);
} else if (statusCode == 404) {
System.out.println("Id ou nome do abrigo não encontado!");
break;
} else if (statusCode == 400 || statusCode == 500) {
System.out.println("Erro ao cadastrar o pet: " + nome);
System.out.println(responseBody);
break;
}
}
reader.close();
}
}