Feign makes writing java http clients easier
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
Adrian Cole 067997912e Introduces feign.@Param to annotate template parameters 10 years ago
..
src Introduces feign.@Param to annotate template parameters 10 years ago
README.md Squashed commit of the following: 11 years ago
build.gradle Removes guava test dependency in favor of AssertJ 10 years ago

README.md

Jackson Codec

This module adds support for encoding and decoding JSON via Jackson.

Add JacksonEncoder and/or JacksonDecoder to your Feign.Builder like so:

GitHub github = Feign.builder()
                     .encoder(new JacksonEncoder())
                     .decoder(new JacksonDecoder())
                     .target(GitHub.class, "https://api.github.com");

If you want to customize the ObjectMapper that is used, provide it to the JacksonEncoder and JacksonDecoder:

ObjectMapper mapper = new ObjectMapper()
        .setSerializationInclusion(JsonInclude.Include.NON_NULL)
        .configure(SerializationFeature.INDENT_OUTPUT, true)
        .configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false);

GitHub github = Feign.builder()
                     .encoder(new JacksonEncoder(mapper))
                     .decoder(new JacksonDecoder(mapper))
                     .target(GitHub.class, "https://api.github.com");

Alternatively, you can add the encoder and decoder to your Dagger object graph using the provided JacksonModule like so:

GitHub github = Feign.create(GitHub.class, "https://api.github.com", new JacksonModule());