Skip to content

Instantly share code, notes, and snippets.

View leandrogilvalle's full-sized avatar

Leandro Gil do Valle leandrogilvalle

  • Sicoob Soluções de Pagamento
  • Brasília/DF-BRT
View GitHub Profile
@rcaneppele
rcaneppele / AutorizadorRequestFilter.java
Created March 11, 2016 21:43
JAX-RS AutorizadorRequestFilter
import java.io.IOException;
import javax.annotation.Priority;
import javax.ws.rs.Priorities;
import javax.ws.rs.container.ContainerRequestContext;
import javax.ws.rs.container.ContainerRequestFilter;
import javax.ws.rs.core.HttpHeaders;
import javax.ws.rs.core.Response;
import javax.ws.rs.core.Response.Status;
import javax.ws.rs.ext.Provider;
@alexandreaquiles
alexandreaquiles / Autorizador.java
Created December 8, 2015 17:23
Autorizador com ContainerRequestFilter do JAX-RS.
package br.com.caelum.payfast.auth;
import java.io.IOException;
import javax.ws.rs.NotAuthorizedException;
import javax.ws.rs.container.ContainerRequestContext;
import javax.ws.rs.container.ContainerRequestFilter;
import javax.ws.rs.ext.Provider;
@Provider
@alexandreaquiles
alexandreaquiles / ClienteRest.java
Last active September 14, 2017 21:30
Exemplo simples de autenticação por token com JAX-RS.
package br.com.caelum.livraria.rest;
import java.io.Serializable;
import javax.ws.rs.client.Client;
import javax.ws.rs.client.ClientBuilder;
import javax.ws.rs.client.Entity;
import javax.ws.rs.core.Response;
import javax.ws.rs.core.Response.Status;

Utilizando Link do JAX-RS 2.0 para HATEOAS

  1. Removida classe Link caseira dos projetos livraria e payfast.

  2. Na classe PagamentoResource do payfast, foi criado o método getTransitions que retorna um array de Link do JAX-RS com as transições possíveis, de acordo com o status do pagamento.

  3. O array de Link é utilizado no método links do ResponseBuilder do JAX-RS:

    Response.ok().entity(pagamento).links(links).build()
  4. Na classe ClienteRest da livraria, foi modificado o código dos métodos criarPagamento e confirmarPagamento para utilizar o Link do JAX-RS.