Coverage Summary for Class: SqlHandler (com.kotlinorm.database)

Class Class, % Method, % Branch, % Line, % Instruction, %
SqlHandler 0% (0/1) 0% (0/10) 0% (0/4) 0% (0/25) 0% (0/332)


 /**
  * Copyright 2022-2025 kronos-orm
  *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
  * You may obtain a copy of the License at
  *
  *     http://www.apache.org/licenses/LICENSE-2.0
  *
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS,
  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
 
 package com.kotlinorm.database
 
 import com.kotlinorm.beans.task.KronosAtomicActionTask
 import com.kotlinorm.beans.task.KronosAtomicBatchTask
 import com.kotlinorm.beans.task.KronosAtomicQueryTask
 import com.kotlinorm.interfaces.KronosDataSourceWrapper
 
 object SqlHandler {
     fun KronosDataSourceWrapper.query(sql: String, paramMap: Map<String, Any?> = emptyMap()): List<Map<String, Any>> {
         return this.forList(KronosAtomicQueryTask(sql, paramMap))
     }
 
     fun KronosDataSourceWrapper.queryMap(sql: String, paramMap: Map<String, Any?> = emptyMap()): Map<String, Any>? {
         return this.forMap(KronosAtomicQueryTask(sql, paramMap))
     }
 
     @Suppress("UNCHECKED_CAST")
     inline fun <reified T> KronosDataSourceWrapper.queryList(
         sql: String,
         paramMap: Map<String, Any?> = emptyMap(),
         isKPojo: Boolean = false,
         superTypes: List<String> = emptyList()
     ): List<T> {
         return this.forList(KronosAtomicQueryTask(sql, paramMap), T::class, isKPojo, superTypes) as List<T>
     }
 
     inline fun <reified T> KronosDataSourceWrapper.queryOne(
         sql: String, paramMap: Map<String, Any?> = emptyMap(),
         isKPojo: Boolean = false,
         superTypes: List<String> = emptyList()
     ): T {
         return this.forObject(KronosAtomicQueryTask(sql, paramMap), T::class, isKPojo, superTypes) as T?
             ?: throw Exception("No result found")
     }
 
     inline fun <reified T> KronosDataSourceWrapper.queryOneOrNull(
         sql: String,
         paramMap: Map<String, Any?> = emptyMap(),
         isKPojo: Boolean = false,
         superTypes: List<String> = emptyList()
     ): T? {
         return this.forObject(KronosAtomicQueryTask(sql, paramMap), T::class, isKPojo, superTypes) as T?
     }
 
     fun KronosDataSourceWrapper.execute(sql: String, paramMap: Map<String, Any?> = emptyMap()): Int {
         return this.update(KronosAtomicActionTask(sql, paramMap))
     }
 
     fun KronosDataSourceWrapper.batchExecute(sql: String, paramMapList: Array<Map<String, Any?>>): IntArray {
         return this.batchUpdate(
             KronosAtomicBatchTask(
                 sql, paramMapList
             )
         )
     }
 }