1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 package org.mybatis.dynamic.sql.select.caseexpression;
17
18 import java.util.ArrayList;
19 import java.util.List;
20 import java.util.stream.Stream;
21
22 import org.mybatis.dynamic.sql.BasicColumn;
23 import org.mybatis.dynamic.sql.RenderableCondition;
24
25 public class ConditionBasedWhenCondition<T> extends SimpleCaseWhenCondition<T> {
26 private final List<RenderableCondition<T>> conditions = new ArrayList<>();
27
28 public ConditionBasedWhenCondition(List<RenderableCondition<T>> conditions, BasicColumn thenValue) {
29 super(thenValue);
30 this.conditions.addAll(conditions);
31 }
32
33 public Stream<RenderableCondition<T>> conditions() {
34 return conditions.stream();
35 }
36
37 @Override
38 public <R> R accept(SimpleCaseWhenConditionVisitor<T, R> visitor) {
39 return visitor.visit(this);
40 }
41 }