anchor.diff:   
    
   == Decorating Feign Interfaces
  +
  +The `Resilience4jFeign.builder` is the main class for creating fault tolerance instances of feign. 
  +It extends the `Feign.builder` and can be configured in the same way with the exception of adding a custom 
  +`InvocationHandlerFactory`. Resilience4jFeign uses its own `InvocationHandlerFactory` to apply the decorators.
  +Decorators can be built using the `FeignDecorators` class. Multiple decorators can be combined  
  +
  +The following example shows how to decorate a feign interface with a RateLimiter and CircuitBreaker:
   ``` java
           public interface MyService {
               @RequestLine("GET /greeting")
  
positive.code: ```        
  
  With `decoratorsA` the RateLimiter will be called before the CircuitBreaker. That means that even if the CircuitBreaker is open, the RateLimiter will still limit the rate of calls.
  `decoratorsB` applies the reserve order. Meaning that once the CircuitBreaker is open, the RateLimiter will no longer be called.
  
  
  == Fallback
  
negative.code:         MyService myService = Resilience4jFeign.builder(decorators).target(MyService.class, "http://localhost:8080/");
  ```
  
  Calling any method of the `MyService` instance will invoke a CircuitBreaker and then a RateLimiter.
  If one of these mechanisms take affect, then the corresponding RuntimeException will be thrown, for example, `CircuitBreakerOpenException` or `RequestNotPermitted` (Hint: These do not extend the `FeignException` class).
  
  The following diagram illustrates how the decorators are stacked:
  image::feign-decorators.png[]
  
  
  