package cn.flightfeather.thirdapp.common.database
|
|
import cn.flightfeather.thirdapp.CommonApplication
|
import com.ping.greendao.gen.DaoSession
|
import io.reactivex.Observable
|
|
/**
|
* @author riku
|
* Date: 2019/5/16
|
*/
|
class DbFactory private constructor(application: CommonApplication){
|
|
companion object {
|
|
@Volatile
|
private lateinit var daoSession: DaoSession
|
|
//数据库初始化
|
@JvmStatic
|
@Synchronized
|
fun init(application: CommonApplication) {
|
daoSession = application.daoSession
|
}
|
|
//获取数据库操作对象daoSession
|
fun getGreenDaoObservable(): Observable<DaoSession> {
|
return Observable.create { emitter ->
|
daoSession.let {
|
emitter.onNext(it)
|
emitter.onComplete()
|
}
|
}
|
}
|
|
fun getInstance(): DaoSession {
|
return daoSession
|
}
|
}
|
}
|