Produtos-api-client - Biblioteca de consumo de uma API Rest básica de produtos disponibilizada em outro repositório.

Overview

produtos-api-client

Biblioteca de consumo de uma API Rest básica de produtos disponibilizada no repositório: clique aqui para acessar

Com essa biblioteca, estou consumindo os dados do endpoint que recupera uma lista com todos os produtos cadastrados no banco de dados (que está alocado na nuvem do Azure) e carrega um cachê singleton local, fazendo assim com que não tenha necessidade de sempre que precisar de uma informação do produto, faça a requisição novamente no endpoint. Vale ressaltar que o processo ocorre de maneira automática com um periodo de tempo em segundos, passado como parâmetro na instância do objeto ClientConfig.

Para utilizar a biblioteca, é necessário criar uma instancia para a configuração da conexão:

private static ClientConfig createConfig() {
        return ClientConfig.Builder.create()
                .withUrl("http://localhost:8080/produtos")
                .withPeriodo(500L)
                .withTimeout(10000)
                .build();
    }

A seguir, criamos o nosso serviço que cuidará de iniciar todo o sistema e carregar o cache com os produtos vindos da API:

private static ProdutoService createService(ClientConfig config) {
        ProdutoService produtoService = new ProdutoServiceImpl(config);
        produtoService.start();
        return produtoService;
    }

Feito isso, a biblioteca poderá ser utilizada na sua aplicação. Exemplo feito em uma classe main App.java disponibilizada na biblioteca também:

public static void main(String[] args) throws TimeoutException {
        ClientConfig config = createConfig();
        ProdutoService produtoService = createService(config);

        if (produtoService.untilLoaded()) {
            System.out.println(produtoService.containProduct("hokage"));
        }
    }

OBS: O método containProduct(String name) foi desenvolvido para fins de demonstração, qualquer implementação de métodos mais conveninentes para o seu contexto também seriam válidos na classe de serviço.

You might also like...

russian "paid" client leak

rip-nclient russian scam paid client with broken autodupe and zero protection whatsoever should be certified rat free™ client is fucking terrible rega

Aug 20, 2022

This client is still in development - Xena is a 1.12.2 Minecraft Utility Mod designed for Anarchy servers such as 2b2t/9b9t/5b5t etc, Devs are not responsible for improper usage.

Xena-client This client is still in development - Xena is a 1.12.2 Minecraft Utility Mod designed for Anarchy servers such as 2b2t/9b9t/5b5t etc, Devs

Oct 18, 2021

AltiriaSmsJavaClient, the official Java client of Altiria

¡Atención! Este proyecto aún se encuentra en desarrollo. Pronto se publicará la versión final para su uso. Altiria, cliente SMS Java Altiria SMS Java

Dec 5, 2022

1.8 PVP Hacked Client

danny-125 Peroxide Lite This is not the full version of Peroxide, join our discord to get Peroxide+ Discord Join our discord: https://discord.gg/vJfuC

Nov 30, 2022

Konas Client de-obfuscated and manually remaped by Gopro336, Perry, and other based people

Konas-Deobf-Remap This project doesent really have a purpose anymore now that the real source code has leaked (this is a higher version tho) Deobfusca

Dec 13, 2022

Koios Java Client Library is based on Koios Elastic Query Layer for Cardano Node by Cardano Community Guild Operators

Koios Java Client What is Koios? Koios Java Client Library is based on Koios Elastic Query Layer for Cardano Node by Cardano Community Guild Operators

Dec 4, 2022

A simple, opensource, work in progress Tablist API.

A simple, opensource, work in progress Tablist API.

Tab API is an opensource tablist API made for the Spigot API. Support We currently support the following NMS versions, v1_16_R3, v1_15_R1, v1_14_R1, v

Dec 15, 2022

GithubReleases4J - GitHub Releases for Java , based on GitHub RESTful API .

GithubReleases4J - GitHub Releases for Java , based on GitHub RESTful API .

Jun 27, 2022

Esse repositório disponibiliza uma versão zero de uma API de cadastro de usuários (Users) a ser melhorada com desafios ☕️ 🇧🇷

java-training-api Esse repositório disponibiliza uma versão zero de uma API de cadastro de usuários (Users) na pasta SRC a ser melhorada. DESAFIOS Os

Dec 22, 2022

Biblioteca completa para ajudar em seus projetos.

MattLib Uma biblioteca completa para seus projetos, com funções que abrangem desde de banco de dados como MySQL, SQLite, PostgreSQL, MariaDB a verific

Sep 7, 2022

Repositório referente ao código de uma classe data, com testes JUNIT, classe de exceção própria e classe aplicação para demonstrar as diversas funcionalidades da classe data

Exercicio-Data Repositório referente ao código de uma classe data, com testes JUNIT, classe de exceção própria e classe aplicação para demonstrar as d

May 4, 2021

Este repositório é uma coleção de soluções comentadas dos desafios encontrados no tópico Problem Solving do site HackerRank.

Soluções HackerRank - Problem Solving Este repositório é uma coleção de soluções Java comentadas dos desafios encontrados no tópico Problem Solving do

Apr 14, 2022

Uma API REST com funcionalidades de CRUD que simula um sistema de leilão 💰.

Uma API REST com funcionalidades de CRUD que simula um sistema de leilão 💰.

Leilão API REST Essa aplicação foi feita para ajudar aqueles que ainda estão com alguma dúvida, sobre o funcionamento de um API REST em Spring. Já que

Feb 23, 2022

Desafio Alura Challenge para backend. Criando uma API REST de controle de orçamento utilizando JAVA.

Desafio Alura Challenge para backend. Criando uma API REST de controle de orçamento utilizando JAVA.

Jun 16, 2022

DIO - desafio de desenvolver uma API Rest de consulta de cidades do Brasil com dados comparativos.

Fora utilizado o mesmo readme do criador do projeto Professor Responsavel UTILIZE ALGUMA DISTRIBUIÇÃO LINUX PARA EVITAR DORES DE CABEÇA Cities API Req

Oct 22, 2021

API Gestor é uma API que permite a comunicação com um Banco de Dados educacionais sobre a educação brasileira.

API Gestor O projeto API Gestor é uma API que permite a comunicação de outras aplicações com os dados educacionais armazenados em um banco de dados, c

Apr 13, 2022

Automation Tests (REST-API with REST-ASSURED examples)

Automation Tests (REST-API with REST-ASSURED examples) Technology Stack IDEA Java Junit5 Gradle Selenide Allure Jenkins Rest-Assured See details: src/

Apr 11, 2022

Dio-api-1 - Repositório com os artefatos da mentoria de API

dio-api-1 Repositório com os artefatos da mentoria de API Reference Documentation For further reference, please consider the following sections: Offic

Feb 25, 2022
Owner
null
Asynchronous Http and WebSocket Client library for Java

Async Http Client Follow @AsyncHttpClient on Twitter. The AsyncHttpClient (AHC) library allows Java applications to easily execute HTTP requests and a

AsyncHttpClient 6k Jan 8, 2023
Google HTTP Client Library for Java

Google HTTP Client Library for Java Description Written by Google, the Google HTTP Client Library for Java is a flexible, efficient, and powerful Java

Google APIs 1.3k Jan 4, 2023
Client-side response routing for Spring

Riptide: A next generation HTTP client Riptide noun, /ˈrɪp.taɪd/: strong flow of water away from the shore Riptide is a library that implements client

Zalando SE 235 Jan 3, 2023
Unirest in Java: Simplified, lightweight HTTP client library.

Unirest for Java Install With Maven: <!-- Pull in as a traditional dependency --> <dependency> <groupId>com.konghq</groupId> <artifactId>unire

Kong 2.4k Jan 5, 2023
Square’s meticulous HTTP client for the JVM, Android, and GraalVM.

OkHttp See the project website for documentation and APIs. HTTP is the way modern applications network. It’s how we exchange data & media. Doing HTTP

Square 43.4k Jan 5, 2023
http-kit is a minimalist, event-driven, high-performance Clojure HTTP server/client library with WebSocket and asynchronous support

HTTP Kit A simple, high-performance event-driven HTTP client+server for Clojure CHANGELOG | API | current Break Version: [http-kit "2.5.3"] ; Publish

HTTP Client/Server for Clojure 2.3k Dec 31, 2022
Unirest in Java: Simplified, lightweight HTTP client library.

Unirest for Java Install With Maven: <!-- Pull in as a traditional dependency --> <dependency> <groupId>com.konghq</groupId> <artifactId>unire

Kong 2.4k Jan 5, 2023
A high-level and lightweight HTTP client framework for Java. it makes sending HTTP requests in Java easier.

A high-level and lightweight HTTP client framework for Java. it makes sending HTTP requests in Java easier.

dromara 1.2k Jan 8, 2023
A small client useful for a variety of tasks ranging from raiding to duping.

CornClient A small utility mod for Minecraft useful for a variety of tasks ranging from raiding to duping. Support You can open an issue for help or f

Arilius Collection 115 Jan 4, 2022
skid client 1.12.2

Outrage best skid client Build / Contribute Download intellij idea Import gradle project Run genIntellijRuns Open runClient configuration, and add -Df

null 7 Dec 2, 2022