Skip to content

Commit 735b23b

Browse files
committed
Simplification
1 parent ff623a0 commit 735b23b

File tree

2 files changed

+12
-18
lines changed

2 files changed

+12
-18
lines changed

src/main/java/org/mybatis/dynamic/sql/select/render/SearchedCaseRenderer.java

Lines changed: 6 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -38,15 +38,12 @@ public SearchedCaseRenderer(SearchedCaseModel searchedCaseModel, RenderingContex
3838
}
3939

4040
public FragmentAndParameters render() {
41-
FragmentAndParameters caseFragment = renderCase();
42-
FragmentAndParameters whenFragment = renderWhenConditions();
43-
Optional<FragmentAndParameters> elseFragment = renderElse();
44-
FragmentAndParameters endFragment = renderEnd();
45-
46-
return elseFragment.map(ef -> Stream.of(caseFragment, whenFragment, ef, endFragment))
47-
.orElseGet(() -> Stream.of(caseFragment, whenFragment, endFragment))
48-
.collect(FragmentCollector.collect())
49-
.toFragmentAndParameters(Collectors.joining(" ")); //$NON-NLS-1$
41+
FragmentCollector fc = new FragmentCollector();
42+
fc.add(renderCase());
43+
fc.add(renderWhenConditions());
44+
renderElse().ifPresent(fc::add);
45+
fc.add(renderEnd());
46+
return fc.toFragmentAndParameters(Collectors.joining(" ")); //$NON-NLS-1$
5047
}
5148

5249
private FragmentAndParameters renderCase() {

src/main/java/org/mybatis/dynamic/sql/select/render/SimpleCaseRenderer.java

Lines changed: 6 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -39,15 +39,12 @@ public SimpleCaseRenderer(SimpleCaseModel<T> simpleCaseModel, RenderingContext r
3939
}
4040

4141
public FragmentAndParameters render() {
42-
FragmentAndParameters caseFragment = renderCase();
43-
FragmentAndParameters whenFragment = renderWhenConditions();
44-
Optional<FragmentAndParameters> elseFragment = renderElse();
45-
FragmentAndParameters endFragment = renderEnd();
46-
47-
return elseFragment.map(ef -> Stream.of(caseFragment, whenFragment, ef, endFragment))
48-
.orElseGet(() -> Stream.of(caseFragment, whenFragment, endFragment))
49-
.collect(FragmentCollector.collect())
50-
.toFragmentAndParameters(Collectors.joining(" ")); //$NON-NLS-1$
42+
FragmentCollector fc = new FragmentCollector();
43+
fc.add(renderCase());
44+
fc.add(renderWhenConditions());
45+
renderElse().ifPresent(fc::add);
46+
fc.add(renderEnd());
47+
return fc.toFragmentAndParameters(Collectors.joining(" ")); //$NON-NLS-1$
5148
}
5249

5350
private FragmentAndParameters renderCase() {

0 commit comments

Comments
 (0)