Segunda atividade:
package br.com.alura.desafioPratico03.principal;
import br.com.alura.desafioPratico03.exececao.SenhaInvalidaException;
import br.com.alura.desafioPratico03.modelo.Usuario;
import java.util.Scanner;
public class PrincipalComUsuarios {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
System.out.print("Digite o nome do usuário: ");
String nome = in.nextLine();
String senha = "";
Usuario usuario = null;
try {
System.out.print("Digite sua senha: ");
senha = in.nextLine();
usuario = new Usuario(nome, senha);
} catch (SenhaInvalidaException e) {
System.out.println("Aconteceu um erro");
System.out.println(e.getMensagem());
}
System.out.println();
if (usuario != null) {
try {
System.out.println("Confirme a sua senha: ");
String confirmacaoDeSenha = in.nextLine();
System.out.println(usuario.ConferirSenha(confirmacaoDeSenha));
} catch (SenhaInvalidaException e) {
System.out.println("Aconteceu um erro");
System.out.println(e.getMensagem());
} finally {
System.out.println("Operação concluída");
}
}
}
}
package br.com.alura.desafioPratico03.exececao;
public class SenhaInvalidaException extends RuntimeException {
private String mensagem;
public SenhaInvalidaException(String message) {
this.mensagem = message;
}
public String getMensagem() {
return this.mensagem;
}
}
package br.com.alura.desafioPratico03.modelo;
import br.com.alura.desafioPratico03.exececao.SenhaInvalidaException;
public class Usuario {
private String usuario;
private String senha;
public Usuario(String usuario, String senha) {
this.usuario = usuario;
if (senha.length() > 8) {
throw new SenhaInvalidaException("A senha não pode ter mais de 8 caracteres");
}
this.senha = senha;
}
public String ConferirSenha(String senha) {
if (!this.senha.equals(senha)) {
throw new SenhaInvalidaException("Senha incorreta");
} else {
return "Senha confirmada";
}
}
}
Terceira atividade:
package br.com.alura.desafioPratico03.principal;
import br.com.alura.desafioPratico03.exececao.ErroConsultaGitHubException;
import java.io.IOException;
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
import java.util.Scanner;
public class PrincipalBuscaComGit {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
try {
System.out.print("Digite o seu nome: ");
String nome = in.nextLine();
HttpClient client = HttpClient.newHttpClient();
HttpRequest request = HttpRequest.newBuilder()
.uri(URI.create("https://api.github.com/users/" + nome))
.build();
HttpResponse<String> response = client.send(request, HttpResponse.BodyHandlers.ofString());
if (response.statusCode() == 404) {
throw new ErroConsultaGitHubException("Usuário não encontrado!");
} else {
System.out.println(response.body());
}
} catch (ErroConsultaGitHubException e) {
System.out.println(e.getMensagem());
} catch (IOException | InterruptedException e) {
System.out.println("Erro na requisição: " + e.getMessage());
}
finally {
System.out.println("Operação concluída");
}
}
}
package br.com.alura.desafioPratico03.exececao;
public class ErroConsultaGitHubException extends RuntimeException {
private String mensagem;
public ErroConsultaGitHubException(String message) {
this.mensagem = message;
}
public String getMensagem() {
return mensagem;
}
}