This repository has been archived by the owner on Jan 20, 2023. It is now read-only.
Releases: ProjectMapK/KRowMapper
Releases · ProjectMapK/KRowMapper
Add ConversionService support.
Update Kotlin.
Update libs.
Kotlin 1.4.21
へアップデート
Update libs.
内容
Kotlin 1.4.10
にアップデートShared
のアップデート取り込み- 呼び出し対象がコンストラクタかつ引数が完全に初期化されていて、かつ条件に合致する場合、
Java
のコンストラクタ/メソッドを直接呼び出すことでオーバーヘッドを低減- コンストラクタの場合
- クラスからコンパニオンオブジェクトに定義したメソッドを取得した(= インスタンス有りで初期化した)場合
- 呼び出し対象がコンストラクタかつ引数が完全に初期化されていて、かつ条件に合致する場合、
Update libs and formatting.
ライブラリアップデート
Kotlin 1.4
ktlint
その他
- リファクタリング
Fix deserializer's nullability.
破壊的変更
ResultSet
からの取得結果がnull
の場合変換処理を動かさないように修正を行った。
また、この変更によって変換処理は値がnull
では発生しなくなるため、AbstractKColumnDeserializer
のdeserialize
関数のパラメータをnon-null
要求に修正した。
その他
- カバレッジ向上のため、多少のテスト追加
- 破壊的変更に伴うテスト修正
- READMEの修正
Add dummy constructor and update libs.
ダミーコンストラクタの追加
KClass
をターゲットとした初期化時に以下のように記述できるようにした。
// これまでの書き方
val mapper: KRowMapper<Dst> = KRowMapper(Dst::class) { fieldName: String ->
/* フィールド名の変換処理 */
}
// ダミーコンストラクタを用いた書き方
val mapper: KRowMapper<Dst> = KRowMapper<Dst> { fieldName: String ->
/* フィールド名の変換処理 */
}
その他
- 内部で利用しているライブラリのアップデート
- カバレッジ計測等の追加
Fixing generics and keeping up with Shared updates.
ジェネリクスの整理
ParameterForMap
にジェネリクスを補った。
また、abstract
プロパティのclazz: Class<*>
の利用方法に混乱が見られたため、abstract
プロパティとしては削除した。
Sharedのアップデート取り込み
Shared
のアップデートを取り込み処理効率を向上した。
parameterNameConverterの取り扱いの修正
parameterNameConverter
をnullable
に、またデフォルト引数をnull
に修正した。
Update shared.
Sharedのアップデートを取り込み、処理効率を向上。
Improved processing efficiency.
BoundKMapper
では初期化チェックが不要なため、省いて高速化