package Ġme . s aket . press . shared . db Ċ Ċ import Ġcom . bad oo . reak t ive . scheduler . computation Scheduler Ċ import Ġcom . bad oo . reak t ive . scheduler . io Scheduler Ċ import Ġcom . squareup . sql de light . Enum Column Adapter Ċ import Ġcom . squareup . sql de light . db . Sql Driver Ċ import Ġme . s aket . press . Press Database Ċ import Ġme . s aket . press . data . shared . Note Ċ import Ġorg . k oin . core . qual ifier . named Ċ import Ġorg . k oin . dsl . module Ċ Ċ internal Ġclass ĠShared Database Component Ġ{ ĊĠ Ġval Ġmodule Ġ= Ġmodule Ġ{ ĊĠĠĠ Ġsingle Ġ{ Ġget < Sql Driver >(). create Press Database () Ġ} ĊĠĠĠ Ġsingle Ġ{ Ġget < Press Database >(). note Queries Ġ} ĊĠĠĠ Ġsingle ( named (" io ")) Ġ{ Ġio Scheduler Ġ} ĊĠĠĠ Ġsingle ( named (" computation ")) Ġ{ Ġcomputation Scheduler Ġ} ĊĠ Ġ} Ċ } Ċ Ċ internal Ġfun ĠSql Driver . create Press Database (): ĠPress Database Ġ{ ĊĠ Ġreturn ĠPress Database ( ĊĠĠĠĠĠ Ġdriver Ġ= Ġthis , ĊĠĠĠĠĠ Ġnote Adapter Ġ= ĠNote . Adapter ( ĊĠĠĠĠĠĠĠĠĠ Ġid Adapter Ġ= ĠNote Id . Sql Adapter , ĊĠĠĠĠĠĠĠĠĠ ĠcreatedAt Adapter Ġ= ĠDateTime Adapter , ĊĠĠĠĠĠĠĠĠĠ ĠupdatedAt Adapter Ġ= ĠDateTime Adapter , ĊĠĠĠĠĠĠĠĠĠ Ġsync State Adapter Ġ= ĠEnum Column Adapter () ĊĠĠĠĠĠ Ġ) ĊĠ Ġ) Ċ } Ċ