FreeRDP
Loading...
Searching...
No Matches
BookmarkDao.java
1/* Bookmark data access object */
2
3package com.freerdp.freerdpcore.data;
4
5import androidx.lifecycle.LiveData;
6import androidx.room.Dao;
7import androidx.room.Delete;
8import androidx.room.Insert;
9import androidx.room.OnConflictStrategy;
10import androidx.room.Query;
11import androidx.room.Update;
12
13import java.util.List;
14
15@Dao
16public interface BookmarkDao {
17 @Query("SELECT * FROM bookmarks ORDER BY label COLLATE NOCASE ASC")
18 LiveData<List<BookmarkEntity>> getAllLiveData();
19
20 @Query("SELECT * FROM bookmarks ORDER BY label COLLATE NOCASE ASC")
21 List<BookmarkEntity> getAll();
22
23 @Query("SELECT * FROM bookmarks WHERE id = :id") BookmarkEntity getById(long id);
24
25 @Query("SELECT * FROM bookmarks WHERE label LIKE :query OR hostname LIKE :query "
26 + "ORDER BY label COLLATE NOCASE ASC")
27 List<BookmarkEntity>
28 search(String query);
29
30 @Query("SELECT * FROM bookmarks WHERE label LIKE :query OR hostname LIKE :query "
31 + "ORDER BY label COLLATE NOCASE ASC")
32 LiveData<List<BookmarkEntity>>
33 searchLive(String query);
34
35 @Insert(onConflict = OnConflictStrategy.ABORT) long insert(BookmarkEntity entity);
36
37 @Update void update(BookmarkEntity entity);
38
39 @Delete void delete(BookmarkEntity entity);
40
41 @Query("DELETE FROM bookmarks WHERE id = :id") void deleteById(long id);
42}