☕ #7DaysOfCode
-
Projeto inspirado no desafio da Alura "7 days of code Java"
-
Foi utilizado o teste grátis da API do iSportsAPI
O programa irá criar um arquivo json com todos os nomes e o logo de times que contiverem o nome que será passado no terminal. Após a consulta com a API, o arquivo com os dados encontrados estará em: src/main/resources
.
Ter uma chave da API e coloca-la como o valor da variável de ambiente PERSONAL_API_KEY
.
Após configurar a variavel de ambiente PERSONAL_API_KEY
, execute o código e digite no terminal o nome do time a ser procurado.
- (linha 16) Primeiramente, a classe
AskTeamToSearch
será responsável por armazenar em memória o nome do time a ser pesquisado. - (linha 17) Este nome, será armazenado na classe
Main
para ser passado á classeRequestData
. - (linha 19) A classe
RequestData
é responsável por fazer a requisição HTTP para a API do iSportsAPI e irá conter a resposta da requisição com as informações de todos os times que contém a palavra passada. - (linha 22) A resposta HTTP retornada da classe
RequestData
será parseada baseado na classeJsonModel
através da classeMyJsonParser
(é uma espécie de "casting" de String para JsonModel). - Em toda instância de
JsonModel
há informações da requisição comocode
que exibe o status da requisição,message
que informará uma mensagem que é correspondente ao status da requisição edata
que contém uma coleção (lista) das informações encontradas (todos os times que contém o nome passado). - (linha 27) A lista de times que o objeto de
JsonModel
possui é escrito em um arquivo json pela classeWriteJson
que faz o tratamento dos dados inserindo no json apenas o nome e logo do time. - O arquivo criado se encontra no diretorio:
src/main/resources
com o nome deteam.json
- se não existir o arquivo neste diretório, o arquivo será criado, se ja houver o arquivo, sera sobrescrito.
- java.net.http para requisições http.
- java.io.FileWriter para criação do arquivo json.
- jackson core para parsear dados.
- JSON Library From Android SDK para estruturar o JSON (pacote org.json incluso).