summaryrefslogtreecommitdiffstats
path: root/app/src/main/java/fr/gouv/etalab/mastodon/sqlite/SearchDAO.java
diff options
context:
space:
mode:
Diffstat (limited to 'app/src/main/java/fr/gouv/etalab/mastodon/sqlite/SearchDAO.java')
-rw-r--r--app/src/main/java/fr/gouv/etalab/mastodon/sqlite/SearchDAO.java39
1 files changed, 39 insertions, 0 deletions
diff --git a/app/src/main/java/fr/gouv/etalab/mastodon/sqlite/SearchDAO.java b/app/src/main/java/fr/gouv/etalab/mastodon/sqlite/SearchDAO.java
index f0c20f9a1..0bf333b5a 100644
--- a/app/src/main/java/fr/gouv/etalab/mastodon/sqlite/SearchDAO.java
+++ b/app/src/main/java/fr/gouv/etalab/mastodon/sqlite/SearchDAO.java
@@ -23,6 +23,8 @@ import android.database.sqlite.SQLiteDatabase;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
+
+import fr.gouv.etalab.mastodon.client.Entities.TagTimeline;
import fr.gouv.etalab.mastodon.helper.Helper;
@@ -136,4 +138,41 @@ public class SearchDAO {
//Search list is returned
return searches;
}
+
+
+ /**
+ * Returns TagTimeline information by its keyword in db
+ * @return info List<TagTimeline>
+ */
+ public List<TagTimeline> getTimelineInfo(String keyword){
+ try {
+ Cursor c = db.query(Sqlite.TABLE_SEARCH, null, Sqlite.COL_KEYWORDS + " = \"" + keyword + "\" AND " + Sqlite.COL_USER_ID + " = \"" + userId+ "\"", null, null, null, null, null);
+ return cursorToTagTimelineSearch(c);
+ } catch (Exception e) {
+ return null;
+ }
+ }
+
+ /***
+ * Method to hydrate stored search from database
+ * @param c Cursor
+ * @return List<String>
+ */
+ private List<TagTimeline> cursorToTagTimelineSearch(Cursor c){
+ //No element found
+ if (c.getCount() == 0)
+ return null;
+ List<TagTimeline> searches = new ArrayList<>();
+ while (c.moveToNext() ) {
+ TagTimeline tagTimeline = new TagTimeline();
+ tagTimeline.setName(c.getString(c.getColumnIndex(Sqlite.COL_KEYWORDS)));
+ tagTimeline.setART(c.getInt(c.getColumnIndex(Sqlite.COL_IS_ART))==1);
+ tagTimeline.setNSFW(c.getInt(c.getColumnIndex(Sqlite.COL_IS_NSFW))==1);
+ searches.add(tagTimeline);
+ }
+ //Close the cursor
+ c.close();
+ //Search list is returned
+ return searches;
+ }
}