Navigation Menu

Skip to content

Instantly share code, notes, and snippets.

@sergiocasero
Created April 25, 2019 09:39
Show Gist options
  • Star 5 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save sergiocasero/aa59f7a369d917e648be01ea3bb69cc2 to your computer and use it in GitHub Desktop.
Save sergiocasero/aa59f7a369d917e648be01ea3bb69cc2 to your computer and use it in GitHub Desktop.
DaoGenerator code template for IntelliJ/AS
package ${PACKAGE_NAME}
#parse("File Header.java")
import androidx.room.Dao
import androidx.room.Insert
import androidx.room.Update
import androidx.room.Query
@Dao
interface ${NAME} {
@Insert
suspend fun insert(${tableName}s: List<${tableClass}>)
@Insert
suspend fun insert($tableName: ${tableClass})
@Query("SELECT * FROM $tableName")
suspend fun getAll(): List<${tableClass}>
@Query("SELECT * FROM $tableName WHERE ${idFieldName} = :id")
suspend fun get(id: ${idFieldType}): ${tableClass}
@Update
suspend fun update(${tableName}: ${tableClass})
@Query("DELETE from ${tableName}")
suspend fun deleteAll()
@Query("DELETE FROM $tableName WHERE ${idFieldName} = :id")
suspend fun delete(id: ${idFieldType}): ${tableClass}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment