This repository was 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.4ktlint
その他
- リファクタリング
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では初期化チェックが不要なため、省いて高速化