Now, I think that DbHelper is responsible for only database creation, version management, and upgrading.
StatusData
It's used to encapsulate the details for directly accessing the DbHelper and SQLiteDatabase. Therefore, we should not provide any method to get them.
(for version 4-4) Now, method StatusData#getDbHelper is very bad. It's designed just for TimelineActivity#setupList()'s query.We can provide a method of query like SQLiteDatabase but not provide a method to get DbHelper or even SQLiteDatabase.
[ ] we need to check the component design to make sure that wrong interface design doesn't occur.
[x] Actually, we resolve parts of above wrong design for later version which is not successfully commit.
StatusData$DbHelper
Now, I think that DbHelper is responsible for only database creation, version management, and upgrading.
StatusData
It's used to encapsulate the details for directly accessing the DbHelper and SQLiteDatabase. Therefore, we should not provide any method to get them.
(for version 4-4) Now, method StatusData#getDbHelper is very bad. It's designed just for TimelineActivity#setupList()'s query.We can provide a method of query like SQLiteDatabase but not provide a method to get DbHelper or even SQLiteDatabase.