Guava

Guava é um framework muito conhecido pelos desenvolvedores Java, que fornece vários objetos e utilitários para diversas necessidades. O java-restify fornece suporte para uso de alguns objetos do Guava como retorno de método.

Instalação

O suporte para o Guava está na dependência java-restify-guava. Uma vez presente no classpath, os handlers serão automaticamente registrados.

Maven

<dependency>
  <groupId>com.github.ljtfreitas</groupId>
  <artifactId>java-restify-guava</artifactId>
  <version>{version}</version>
</dependency>

Gradle

dependencies {
  compile("com.github.ljtfreitas:java-restify-guava:{version}")
}

Utilização

Tipos suportados

  • Optional

  • ListenableFuture (assíncrono)

ListenableFuture é um objeto que permite o registro de callbacks para processamentos assíncronos. Métodos com esse tipo de retorno serão executados em uma thread separada automaticamente.

Outra opção é, ao invés de lidar com o retorno do método, utilizar um argumento do tipo FutureCallback, que deve estar anotado com @CallbackParameter:

  • ListenableFutureTask (assíncrono)

ListenableFutureTask é equivalente ao ListenableFuture, mas com uma API baseada no FutureTask do Java.

Configuração

No caso dos tipos assíncronos, a configuração padrão utiliza um cached thread pool isolado dos demais handlers assíncronos do java-restify. Caso você precise de customizações, desligue a descoberta automática de handlers e registre-os manualmente:

Last updated

Was this helpful?