View Javadoc
1   package net.secodo.jcircuitbreaker.breakstrategy.impl.dsl;
2   
3   import net.secodo.jcircuitbreaker.breaker.execution.ExecutionContext;
4   import net.secodo.jcircuitbreaker.breakstrategy.BreakStrategy;
5   import net.secodo.jcircuitbreaker.task.Task;
6   
7   
8   public class DslOrStrategy<R> implements BreakStrategy<R> {
9     private final BreakStrategy<R> strategyA;
10    private final BreakStrategy<R> strategyB;
11  
12    public DslOrStrategy(BreakStrategy<R> strategyA, BreakStrategy<R> strategyB) {
13      this.strategyA = strategyA;
14      this.strategyB = strategyB;
15    }
16  
17  
18    @Override
19    public boolean shouldBreak(Task<R> task, ExecutionContext<R> executionContext) {
20      return strategyA.shouldBreak(task, executionContext) || strategyB.shouldBreak(task, executionContext);
21    }
22  }