package Ġcom . example . architect ures ample . module Ċ Ċ import Ġandroid . content . Context Ċ import Ġandroid . util . Log Ċ import Ġandroidx . room . Room Ċ import Ġcom . example . architect ures ample . database . Persistence Storage Ċ import Ġcom . example . architect ures ample . database . Profile Dao Ċ import Ġdagger . Module Ċ import Ġdagger . Provides Ċ Ċ @ Module Ċ class ĠRoom Module Ġ{ ĊĊĠĠĠ Ġ@ Provides ĊĠĠĠ Ġfun Ġroom Database ( context : ĠContext ): ĠPersistence Storage Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġdb Name Ġ= Ġ" Room Database " ĊĊĠĠĠĠĠĠĠ Ġval Ġdb Ġ= ĠRoom . database Builder ( context , ĠPersistence Storage :: class . java , Ġdb Name ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. fallback To Dest ruct ive Migration () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. build () ĊĊĠĠĠĠĠĠĠ Ġif Ġ(! db . isOpen ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠLog . e (" Room Module ", Ġ" cannot Ġopen ĠDB Ġ- Ġyou Ġforgot Ġto Ġchange Ġthe Ġversion ") ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġreturn Ġdb ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Provides ĊĠĠĠ Ġfun Ġprofile Dao ( my Database : ĠPersistence Storage ): ĠProfile Dao Ġ= Ġmy Database . profile Dao () Ċ }