Skip to content

Commit 7f6dee4

Browse files
committed
Use a lazy property to make the contract clearer
Previously this exposed a setter for the property directly.
1 parent 4b34297 commit 7f6dee4

File tree

1 file changed

+3
-2
lines changed

1 file changed

+3
-2
lines changed

src/main/kotlin/org/mybatis/dynamic/sql/util/kotlin/JoinCollector.kt

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -22,12 +22,13 @@ import org.mybatis.dynamic.sql.select.join.JoinCriterion
2222
typealias JoinReceiver = JoinCollector.() -> JoinCollector
2323

2424
class JoinCollector {
25-
lateinit var onJoinCriterion: JoinCriterion
25+
val onJoinCriterion: JoinCriterion by lazy { internalOnCriterion }
2626
val andJoinCriteria = mutableListOf<JoinCriterion>()
27+
private lateinit var internalOnCriterion: JoinCriterion
2728

2829
fun on(column: BasicColumn, condition: JoinCondition) =
2930
apply {
30-
onJoinCriterion = JoinCriterion.Builder()
31+
internalOnCriterion = JoinCriterion.Builder()
3132
.withConnector("on")
3233
.withJoinColumn(column)
3334
.withJoinCondition(condition)

0 commit comments

Comments
 (0)