Skip to content

Commit 1cc137f

Browse files
committed
Removing more useless indirection
1 parent 1e7d50d commit 1cc137f

10 files changed

+12
-80
lines changed

src/main/java/org/mybatis/dynamic/sql/insert/render/AbstractMultiRowValuePhraseVisitor.java

Lines changed: 1 addition & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -15,8 +15,6 @@
1515
*/
1616
package org.mybatis.dynamic.sql.insert.render;
1717

18-
import java.util.function.Function;
19-
2018
import org.mybatis.dynamic.sql.SqlColumn;
2119
import org.mybatis.dynamic.sql.render.RenderingStrategy;
2220
import org.mybatis.dynamic.sql.util.ConstantMapping;
@@ -59,13 +57,9 @@ public FieldAndValue visit(StringConstantMapping mapping) {
5957
@Override
6058
public FieldAndValue visit(PropertyMapping mapping) {
6159
return FieldAndValue.withFieldName(mapping.columnName())
62-
.withValuePhrase(mapping.mapColumn(toJdbcPlaceholder(mapping.property())))
60+
.withValuePhrase(mapping.mapColumn(c -> calculateJdbcPlaceholder(c, mapping.property())))
6361
.build();
6462
}
6563

66-
private Function<SqlColumn<?>, String> toJdbcPlaceholder(String parameterName) {
67-
return column -> calculateJdbcPlaceholder(column, parameterName);
68-
}
69-
7064
abstract String calculateJdbcPlaceholder(SqlColumn<?> column, String parameterName);
7165
}

src/main/java/org/mybatis/dynamic/sql/insert/render/BatchInsertRenderer.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ private BatchInsertRenderer(Builder<T> builder) {
3737
public BatchInsert<T> render() {
3838
BatchValuePhraseVisitor visitor = new BatchValuePhraseVisitor(renderingStrategy, "record"); //$NON-NLS-1$)
3939
List<FieldAndValue> fieldsAndValues = model
40-
.mapColumnMappings(MultiRowRenderingUtilities.toFieldAndValue(visitor))
40+
.mapColumnMappings(m -> m.accept(visitor))
4141
.collect(Collectors.toList());
4242

4343
return BatchInsert.withRecords(model.records())

src/main/java/org/mybatis/dynamic/sql/insert/render/GeneralInsertRenderer.java

Lines changed: 1 addition & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -22,12 +22,10 @@
2222
import java.util.Map;
2323
import java.util.Objects;
2424
import java.util.Optional;
25-
import java.util.function.Function;
2625
import java.util.stream.Collectors;
2726

2827
import org.mybatis.dynamic.sql.insert.GeneralInsertModel;
2928
import org.mybatis.dynamic.sql.render.RenderingStrategy;
30-
import org.mybatis.dynamic.sql.util.AbstractColumnMapping;
3129

3230
public class GeneralInsertRenderer {
3331

@@ -41,7 +39,7 @@ private GeneralInsertRenderer(Builder builder) {
4139

4240
public GeneralInsertStatementProvider render() {
4341
GeneralInsertValuePhraseVisitor visitor = new GeneralInsertValuePhraseVisitor(renderingStrategy);
44-
List<Optional<FieldAndValueAndParameters>> fieldsAndValues = model.mapColumnMappings(toFieldAndValue(visitor))
42+
List<Optional<FieldAndValueAndParameters>> fieldsAndValues = model.mapColumnMappings(m -> m.accept(visitor))
4543
.collect(Collectors.toList());
4644

4745
return DefaultGeneralInsertStatementProvider.withInsertStatement(calculateInsertStatement(fieldsAndValues))
@@ -56,16 +54,6 @@ private String calculateInsertStatement(List<Optional<FieldAndValueAndParameters
5654
+ spaceBefore(calculateValuesPhrase(fieldsAndValues));
5755
}
5856

59-
private Function<AbstractColumnMapping, Optional<FieldAndValueAndParameters>> toFieldAndValue(
60-
GeneralInsertValuePhraseVisitor visitor) {
61-
return insertMapping -> toFieldAndValue(visitor, insertMapping);
62-
}
63-
64-
private Optional<FieldAndValueAndParameters> toFieldAndValue(GeneralInsertValuePhraseVisitor visitor,
65-
AbstractColumnMapping insertMapping) {
66-
return insertMapping.accept(visitor);
67-
}
68-
6957
private String calculateColumnsPhrase(List<Optional<FieldAndValueAndParameters>> fieldsAndValues) {
7058
return fieldsAndValues.stream()
7159
.filter(Optional::isPresent)

src/main/java/org/mybatis/dynamic/sql/insert/render/GeneralInsertValuePhraseVisitor.java

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,6 @@
1717

1818
import java.util.Optional;
1919
import java.util.concurrent.atomic.AtomicInteger;
20-
import java.util.function.Function;
2120

2221
import org.mybatis.dynamic.sql.SqlColumn;
2322
import org.mybatis.dynamic.sql.render.RenderingStrategy;
@@ -77,18 +76,14 @@ private Optional<FieldAndValueAndParameters> buildValueFragment(AbstractColumnMa
7776
private Optional<FieldAndValueAndParameters> buildFragment(AbstractColumnMapping mapping, Object value) {
7877
String mapKey = RenderingStrategy.formatParameterMapKey(sequence);
7978

80-
String jdbcPlaceholder = mapping.mapColumn(toJdbcPlaceholder(mapKey));
79+
String jdbcPlaceholder = mapping.mapColumn(c -> calculateJdbcPlaceholder(c, mapKey));
8180

8281
return FieldAndValueAndParameters.withFieldName(mapping.columnName())
8382
.withValuePhrase(jdbcPlaceholder)
8483
.withParameter(mapKey, value)
8584
.buildOptional();
8685
}
8786

88-
private Function<SqlColumn<?>, String> toJdbcPlaceholder(String parameterName) {
89-
return column -> calculateJdbcPlaceholder(column, parameterName);
90-
}
91-
9287
private String calculateJdbcPlaceholder(SqlColumn<?> column, String parameterName) {
9388
return column.renderingStrategy().orElse(renderingStrategy)
9489
.getFormattedJdbcPlaceholder(column, RenderingStrategy.DEFAULT_PARAMETER_PREFIX, parameterName);

src/main/java/org/mybatis/dynamic/sql/insert/render/InsertRenderer.java

Lines changed: 1 addition & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -20,12 +20,10 @@
2020
import java.util.List;
2121
import java.util.Objects;
2222
import java.util.Optional;
23-
import java.util.function.Function;
2423
import java.util.stream.Collectors;
2524

2625
import org.mybatis.dynamic.sql.insert.InsertModel;
2726
import org.mybatis.dynamic.sql.render.RenderingStrategy;
28-
import org.mybatis.dynamic.sql.util.AbstractColumnMapping;
2927

3028
public class InsertRenderer<T> {
3129

@@ -40,7 +38,7 @@ private InsertRenderer(Builder<T> builder) {
4038
public InsertStatementProvider<T> render() {
4139
ValuePhraseVisitor visitor = new ValuePhraseVisitor(renderingStrategy);
4240

43-
List<Optional<FieldAndValue>> fieldsAndValues = model.mapColumnMappings(toFieldAndValue(visitor))
41+
List<Optional<FieldAndValue>> fieldsAndValues = model.mapColumnMappings(m -> m.accept(visitor))
4442
.collect(Collectors.toList());
4543

4644
return DefaultInsertStatementProvider.withRecord(model.record())
@@ -71,14 +69,6 @@ private String calculateValuesPhrase(List<Optional<FieldAndValue>> fieldsAndValu
7169
.collect(Collectors.joining(", ", "values (", ")")); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
7270
}
7371

74-
private Function<AbstractColumnMapping, Optional<FieldAndValue>> toFieldAndValue(ValuePhraseVisitor visitor) {
75-
return insertMapping -> toFieldAndValue(visitor, insertMapping);
76-
}
77-
78-
private Optional<FieldAndValue> toFieldAndValue(ValuePhraseVisitor visitor, AbstractColumnMapping insertMapping) {
79-
return insertMapping.accept(visitor);
80-
}
81-
8272
public static <T> Builder<T> withInsertModel(InsertModel<T> model) {
8373
return new Builder<T>().withInsertModel(model);
8474
}

src/main/java/org/mybatis/dynamic/sql/insert/render/MultiRowInsertRenderer.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ public MultiRowInsertStatementProvider<T> render() {
3939
MultiRowValuePhraseVisitor visitor =
4040
new MultiRowValuePhraseVisitor(renderingStrategy, "records[%s]"); //$NON-NLS-1$
4141
List<FieldAndValue> fieldsAndValues = model
42-
.mapColumnMappings(MultiRowRenderingUtilities.toFieldAndValue(visitor))
42+
.mapColumnMappings(m -> m.accept(visitor))
4343
.collect(Collectors.toList());
4444

4545
return new DefaultMultiRowInsertStatementProvider.Builder<T>().withRecords(model.records())

src/main/java/org/mybatis/dynamic/sql/insert/render/MultiRowRenderingUtilities.java

Lines changed: 0 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -16,25 +16,12 @@
1616
package org.mybatis.dynamic.sql.insert.render;
1717

1818
import java.util.List;
19-
import java.util.function.Function;
2019
import java.util.stream.Collectors;
2120

22-
import org.mybatis.dynamic.sql.util.AbstractColumnMapping;
23-
2421
public class MultiRowRenderingUtilities {
2522

2623
private MultiRowRenderingUtilities() {}
2724

28-
public static Function<AbstractColumnMapping, FieldAndValue> toFieldAndValue(
29-
AbstractMultiRowValuePhraseVisitor visitor) {
30-
return insertMapping -> MultiRowRenderingUtilities.toFieldAndValue(visitor, insertMapping);
31-
}
32-
33-
public static FieldAndValue toFieldAndValue(AbstractMultiRowValuePhraseVisitor visitor,
34-
AbstractColumnMapping insertMapping) {
35-
return insertMapping.accept(visitor);
36-
}
37-
3825
public static String calculateColumnsPhrase(List<FieldAndValue> fieldsAndValues) {
3926
return fieldsAndValues.stream()
4027
.map(FieldAndValue::fieldName)

src/main/java/org/mybatis/dynamic/sql/insert/render/ValuePhraseVisitor.java

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,6 @@
1616
package org.mybatis.dynamic.sql.insert.render;
1717

1818
import java.util.Optional;
19-
import java.util.function.Function;
2019

2120
import org.mybatis.dynamic.sql.SqlColumn;
2221
import org.mybatis.dynamic.sql.render.RenderingStrategy;
@@ -59,7 +58,7 @@ public Optional<FieldAndValue> visit(StringConstantMapping mapping) {
5958
@Override
6059
public Optional<FieldAndValue> visit(PropertyMapping mapping) {
6160
return FieldAndValue.withFieldName(mapping.columnName())
62-
.withValuePhrase(mapping.mapColumn(toJdbcPlaceholder(mapping.property())))
61+
.withValuePhrase(mapping.mapColumn(c -> calculateJdbcPlaceholder(c, mapping.property())))
6362
.buildOptional();
6463
}
6564

@@ -72,10 +71,6 @@ public Optional<FieldAndValue> visit(PropertyWhenPresentMapping mapping) {
7271
}
7372
}
7473

75-
private Function<SqlColumn<?>, String> toJdbcPlaceholder(String parameterName) {
76-
return column -> calculateJdbcPlaceholder(column, parameterName);
77-
}
78-
7974
private String calculateJdbcPlaceholder(SqlColumn<?> column, String parameterName) {
8075
return column.renderingStrategy().orElse(renderingStrategy)
8176
.getFormattedJdbcPlaceholder(column, "record", parameterName); //$NON-NLS-1$

src/main/java/org/mybatis/dynamic/sql/update/render/SetPhraseVisitor.java

Lines changed: 4 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,6 @@
1818
import java.util.Objects;
1919
import java.util.Optional;
2020
import java.util.concurrent.atomic.AtomicInteger;
21-
import java.util.function.Function;
2221

2322
import org.mybatis.dynamic.sql.SqlColumn;
2423
import org.mybatis.dynamic.sql.render.RenderingStrategy;
@@ -88,7 +87,7 @@ public Optional<FragmentAndParameters> visit(SelectMapping mapping) {
8887
.build()
8988
.render();
9089

91-
String fragment = mapping.mapColumn(SqlColumn::name)
90+
String fragment = mapping.columnName()
9291
+ " = (" //$NON-NLS-1$
9392
+ selectStatement.getSelectStatement()
9493
+ ")"; //$NON-NLS-1$
@@ -100,7 +99,7 @@ public Optional<FragmentAndParameters> visit(SelectMapping mapping) {
10099

101100
@Override
102101
public Optional<FragmentAndParameters> visit(ColumnToColumnMapping mapping) {
103-
String setPhrase = mapping.mapColumn(SqlColumn::name)
102+
String setPhrase = mapping.columnName()
104103
+ " = " //$NON-NLS-1$
105104
+ mapping.rightColumn().renderWithTableAlias(TableAliasCalculator.empty());
106105

@@ -111,8 +110,8 @@ public Optional<FragmentAndParameters> visit(ColumnToColumnMapping mapping) {
111110
private <T> Optional<FragmentAndParameters> buildFragment(AbstractColumnMapping mapping, T value) {
112111
String mapKey = RenderingStrategy.formatParameterMapKey(sequence);
113112

114-
String jdbcPlaceholder = mapping.mapColumn(toJdbcPlaceholder(mapKey));
115-
String setPhrase = mapping.mapColumn(SqlColumn::name)
113+
String jdbcPlaceholder = mapping.mapColumn(c -> calculateJdbcPlaceholder(c, mapKey));
114+
String setPhrase = mapping.columnName()
116115
+ " = " //$NON-NLS-1$
117116
+ jdbcPlaceholder;
118117

@@ -121,10 +120,6 @@ private <T> Optional<FragmentAndParameters> buildFragment(AbstractColumnMapping
121120
.buildOptional();
122121
}
123122

124-
private Function<SqlColumn<?>, String> toJdbcPlaceholder(String parameterName) {
125-
return column -> calculateJdbcPlaceholder(column, parameterName);
126-
}
127-
128123
private String calculateJdbcPlaceholder(SqlColumn<?> column, String parameterName) {
129124
return column.renderingStrategy().orElse(renderingStrategy)
130125
.getFormattedJdbcPlaceholder(column, RenderingStrategy.DEFAULT_PARAMETER_PREFIX, parameterName);

src/main/java/org/mybatis/dynamic/sql/update/render/UpdateRenderer.java

Lines changed: 1 addition & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -23,13 +23,11 @@
2323
import java.util.Objects;
2424
import java.util.Optional;
2525
import java.util.concurrent.atomic.AtomicInteger;
26-
import java.util.function.Function;
2726
import java.util.stream.Collectors;
2827

2928
import org.mybatis.dynamic.sql.render.RenderingStrategy;
3029
import org.mybatis.dynamic.sql.render.TableAliasCalculator;
3130
import org.mybatis.dynamic.sql.update.UpdateModel;
32-
import org.mybatis.dynamic.sql.util.AbstractColumnMapping;
3331
import org.mybatis.dynamic.sql.util.FragmentAndParameters;
3432
import org.mybatis.dynamic.sql.where.WhereModel;
3533
import org.mybatis.dynamic.sql.where.render.WhereClauseProvider;
@@ -49,7 +47,7 @@ public UpdateStatementProvider render() {
4947
SetPhraseVisitor visitor = new SetPhraseVisitor(sequence, renderingStrategy);
5048

5149
List<Optional<FragmentAndParameters>> fragmentsAndParameters =
52-
updateModel.mapColumnMappings(toFragmentAndParameters(visitor))
50+
updateModel.mapColumnMappings(m -> m.accept(visitor))
5351
.collect(Collectors.toList());
5452

5553
return updateModel.whereModel()
@@ -111,16 +109,6 @@ private Optional<WhereClauseProvider> renderWhereClause(WhereModel whereModel) {
111109
.render();
112110
}
113111

114-
private Function<AbstractColumnMapping, Optional<FragmentAndParameters>> toFragmentAndParameters(
115-
SetPhraseVisitor visitor) {
116-
return updateMapping -> toFragmentAndParameters(visitor, updateMapping);
117-
}
118-
119-
private Optional<FragmentAndParameters> toFragmentAndParameters(SetPhraseVisitor visitor,
120-
AbstractColumnMapping updateMapping) {
121-
return updateMapping.accept(visitor);
122-
}
123-
124112
public static Builder withUpdateModel(UpdateModel updateModel) {
125113
return new Builder().withUpdateModel(updateModel);
126114
}

0 commit comments

Comments
 (0)