Skip to content
This repository was archived by the owner on Jan 20, 2023. It is now read-only.

Commit 87d192e

Browse files
committed
新バケツに合わせて対応
1 parent c5d312c commit 87d192e

File tree

1 file changed

+3
-3
lines changed

1 file changed

+3
-3
lines changed

src/main/kotlin/com/mapk/kmapper/KMapper.kt

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@ class KMapper<T : Any> private constructor(
5757
parameterMap[alias ?: property.name]?.let {
5858
// javaGetterを呼び出す方が高速
5959
javaGetter.isAccessible = true
60-
argumentBucket.setArgument(it.param, javaGetter.invoke(src)?.let { value -> mapObject(it, value) })
60+
argumentBucket.putIfAbsent(it.param, javaGetter.invoke(src)?.let { value -> mapObject(it, value) })
6161
// 終了判定
6262
if (argumentBucket.isInitialized) return
6363
}
@@ -68,7 +68,7 @@ class KMapper<T : Any> private constructor(
6868
src.forEach { (key, value) ->
6969
parameterMap[key]?.let { param ->
7070
// 取得した内容がnullでなければ適切にmapする
71-
argumentBucket.setArgument(param.param, value?.let { mapObject(param, it) })
71+
argumentBucket.putIfAbsent(param.param, value?.let { mapObject(param, it) })
7272
// 終了判定
7373
if (argumentBucket.isInitialized) return
7474
}
@@ -77,7 +77,7 @@ class KMapper<T : Any> private constructor(
7777

7878
private fun bindArguments(argumentBucket: ArgumentBucket, srcPair: Pair<*, *>) {
7979
parameterMap[srcPair.first.toString()]?.let {
80-
argumentBucket.setArgument(it.param, srcPair.second?.let { value -> mapObject(it, value) })
80+
argumentBucket.putIfAbsent(it.param, srcPair.second?.let { value -> mapObject(it, value) })
8181
}
8282
}
8383

0 commit comments

Comments
 (0)