aboutsummaryrefslogtreecommitdiffstats
path: root/app/src/main/java/net/lacolaco/smileessence/entity/SavedSearch.java
diff options
context:
space:
mode:
authorKazuki Yamaguchi <k@rhe.jp>2016-12-07 22:09:43 +0900
committerKazuki Yamaguchi <k@rhe.jp>2016-12-07 22:09:43 +0900
commit35894c897b0c0bfc0432ccc8f9324f92337524b6 (patch)
treeeb2642116fcfa27b4c601a516fb754df6f222e96 /app/src/main/java/net/lacolaco/smileessence/entity/SavedSearch.java
parent47b16cd68f45bf21efe1c25590a7d912d2e68a81 (diff)
parentdd1a0764274ef3c22b3d7e62a28184768755f411 (diff)
downloadSmileEssence-35894c897b0c0bfc0432ccc8f9324f92337524b6.tar.gz
Merge branch 'topic/saved-search-from-twitter'
* topic/saved-search-from-twitter: saved search from twitter
Diffstat (limited to 'app/src/main/java/net/lacolaco/smileessence/entity/SavedSearch.java')
-rw-r--r--app/src/main/java/net/lacolaco/smileessence/entity/SavedSearch.java44
1 files changed, 44 insertions, 0 deletions
diff --git a/app/src/main/java/net/lacolaco/smileessence/entity/SavedSearch.java b/app/src/main/java/net/lacolaco/smileessence/entity/SavedSearch.java
new file mode 100644
index 00000000..0ac26ccc
--- /dev/null
+++ b/app/src/main/java/net/lacolaco/smileessence/entity/SavedSearch.java
@@ -0,0 +1,44 @@
+package net.lacolaco.smileessence.entity;
+
+import java.util.*;
+
+public class SavedSearch implements IdObject {
+ private static Map<Long, SavedSearch> storage = new HashMap<>();
+
+ public synchronized static Collection<SavedSearch> cached() {
+ return storage.values();
+ }
+
+ public synchronized static void replace(List<SavedSearch> list) {
+ storage = new HashMap<>();
+ for (SavedSearch ss : list)
+ storage.put(ss.getId(), ss);
+ }
+
+ public synchronized static SavedSearch fromTwitter(twitter4j.SavedSearch obj) {
+ SavedSearch cached = storage.get(obj.getId());
+
+ /* SavedSearch should be immutable */
+ if (cached == null) {
+ cached = new SavedSearch(obj.getId(), obj.getQuery());
+ }
+ return cached;
+ }
+
+ // インスタンス
+ private long id;
+ private String query;
+
+ private SavedSearch(long id, String query) {
+ this.id = id;
+ this.query = query;
+ }
+
+ public long getId() {
+ return id;
+ }
+
+ public String getQuery() {
+ return query;
+ }
+}