Skip to content

Instantly share code, notes, and snippets.

value = value;
mValue = value;
this.value = value;
//setup
// dir for script to work in
String DIR = "/your/project/dir";
// character that have to occur before target variable
List<Character> charactersBeforeVariable = Arrays.asList(
' ',
'(',
'.',
'!',
private fun onGetItems() = database.itemDao().getAllItems()
.observeOn(AndroidSchedulers.mainThread())
.subscribe(view::showData, {
throwable ->
view.showLoadingDataError(throwable.localizedMessage)
})
@TKolbusz
TKolbusz / ItemsDatabase.kt
Last active June 14, 2017 21:12
Controlling database flow using Room and RxJava2
@Database(entities = arrayOf(Item::class), version = 1)
abstract class ItemsDatabase : RoomDatabase() {
abstract fun itemDao(): ItemDao
}
@TKolbusz
TKolbusz / ItemDao.kt
Last active June 15, 2017 13:51
Controlling database flow using Room and RxJava2
@Dao
interface ItemDao {
@Query("SELECT name, place, description, date_added_ms FROM items")
fun getAllItems(): Flowable<List<Item>>
@Query("SELECT name FROM items WHERE place = :arg0")
fun getItemsAt(place: String): Flowable<List<Item>>
@Insert(onConflict = OnConflictStrategy.REPLACE)
fun insertItem(item: Item)
@TKolbusz
TKolbusz / Item.kt
Created June 14, 2017 12:56
Controlling database flow using Room and RxJava2
@Entity(tableName = "items")
data class Item(
@PrimaryKey
@ColumnInfo(name = "name") var name: String = "",
@ColumnInfo(name = "place") var place: String = "",
@ColumnInfo(name = "quantity") var quantity: String = "",
@ColumnInfo(name = "description") var description: String = "",
@ColumnInfo(name = "tags") var tags: String = "",
@ColumnInfo(name = "date_added_ms") var dateMS: Long = Calendar.getInstance().timeInMillis
)
@TKolbusz
TKolbusz / build.gradle
Last active June 16, 2017 08:30
Controlling database flow using Room and RxJava2
apply plugin: ‘kotlin-kapt’
android {
---
}
dependencies {
// RxKotlin and RxAndroid
compile "io.reactivex.rxjava2:rxkotlin:2.0.0"
compile "io.reactivex.rxjava2:rxandroid:2.0.1"
@TKolbusz
TKolbusz / ApplicationComponent.kt
Last active June 14, 2017 21:30
Controlling database flow using Room and RxJava2
val database = Room.databaseBuilder(applicationContext, ItemsDatabase::class.java, "cleverDatabaseName").build()