The way to deal with rate limits is very similar in every provider. One just 
needs to read from the response how much to wait until new requests can be 
made, and wait accordingly.

This change generalises the digitalocean2 rate limit handler so it can be 
reused and configured by all providers. Once this is merged, a PR with an 
implementation for Azure ARM will be opened to the jclouds-labs repo.

/cc @andreaturli 
You can view, comment on, or merge this pull request online at:

  https://github.com/jclouds/jclouds/pull/1023

-- Commit Summary --

  * Move digital ocean rate limit handler to core to make it reusable

-- File Changes --

    M core/src/main/java/org/jclouds/Constants.java (8)
    R core/src/main/java/org/jclouds/http/handlers/RateLimitRetryHandler.java 
(63)
    R 
core/src/test/java/org/jclouds/http/handlers/RateLimitRetryHandlerTest.java (33)
    D 
providers/digitalocean2/src/main/java/org/jclouds/digitalocean2/config/DigitalOcean2Properties.java
 (33)
    M 
providers/digitalocean2/src/main/java/org/jclouds/digitalocean2/config/DigitalOcean2RateLimitModule.java
 (4)
    M 
providers/digitalocean2/src/main/java/org/jclouds/digitalocean2/exceptions/DigitalOcean2RateLimitExceededException.java
 (2)
    A 
providers/digitalocean2/src/main/java/org/jclouds/digitalocean2/handlers/DigitalOcean2RateLimitRetryHandler.java
 (45)
    M 
providers/digitalocean2/src/test/java/org/jclouds/digitalocean2/exceptions/RateLimitExceptionMockTest.java
 (2)

-- Patch Links --

https://github.com/jclouds/jclouds/pull/1023.patch
https://github.com/jclouds/jclouds/pull/1023.diff

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds/pull/1023

Reply via email to