Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Code Block
languagejava
var githubClient = new FeignBuilder()
    .withBaseUrl("https://api.github.com/") [1]
    .withLogbook(...)                       [2]
    .withOAuth2Client(...)                  [3]
    .withBasicAuthentication(...)           [4]
    .withConnectTimeout(...)                [5]
    .withReadTimeout(...)                   [6]
    .withFollowRedirects(...)               [7]
    .withClient(...)                        |8]
    .withContract(...)                      [9]
    .withEncoder(...)                       [10]
    .withDecoder(...)                       [11]
    .withRetryer(...)                       [12]
    .build(GithubClient.class);             [13]
    
...
var repos = githubClient.getRepositories("Sundsvallskommun");
...

[1] Anger bas-URL för REST-klienten som skapas.
[2] Om angiven sätts request- och response-loggning upp.
[3] Om angiven, sätts OAuth2-autentisering upp. Tar in en ClientRegistration, t.ex.:

Code Block
languagejava
    @Bean
    ClientRegistration clientRegistration() {
        return ClientRegistration.withRegistrationId("someId")
            .clientId("someClientId)
            .clientSecret("someClientSecret")
            .tokenUri("https://mytokenuri/token)
            .authorizationGrantType("client_credentials")
            .build();
    }

[4] Om angiven (användarnamn och lösenord) sätts Basic-autentisering upp.
[5] Anger connect timeout. Default-värde är 10 sekunder.
[6] Anger read timeout. Default-värde är 60 sekunder.
[7] Anger om REST-klienten ska följa omdirigeringar. Default-värde är true.
[8]-[12] Kan, om så önskas, användas för att exempelvis använda en alternativ HTTP-klient eller för att konfigurera retry-policy och liknande.
[13] Skapar själva REST-klienten, av given typ.



Alternativ 2 - annoteringar

...