diff options
author | Kazuki Yamaguchi <k@rhe.jp> | 2017-10-04 21:10:58 +0900 |
---|---|---|
committer | Kazuki Yamaguchi <k@rhe.jp> | 2017-10-04 22:00:52 +0900 |
commit | 986fa8cd8bdf6110d2aa390a9dcafc4ff19ee6dd (patch) | |
tree | e92964cc05dc18021011fbed2f8f249b7f3ed5b6 /app/src/main/java/net/lacolaco/smileessence/entity/DirectMessage.java | |
parent | b471085c2b2d6229bb6fb54a6d444802147a7392 (diff) | |
download | SmileEssence-986fa8cd8bdf6110d2aa390a9dcafc4ff19ee6dd.tar.gz |
worldify (wip)2017-10-04
Diffstat (limited to 'app/src/main/java/net/lacolaco/smileessence/entity/DirectMessage.java')
-rw-r--r-- | app/src/main/java/net/lacolaco/smileessence/entity/DirectMessage.java | 39 |
1 files changed, 14 insertions, 25 deletions
diff --git a/app/src/main/java/net/lacolaco/smileessence/entity/DirectMessage.java b/app/src/main/java/net/lacolaco/smileessence/entity/DirectMessage.java index 67524c36..5b19ee74 100644 --- a/app/src/main/java/net/lacolaco/smileessence/entity/DirectMessage.java +++ b/app/src/main/java/net/lacolaco/smileessence/entity/DirectMessage.java @@ -1,27 +1,26 @@ package net.lacolaco.smileessence.entity; -import com.google.common.cache.Cache; -import com.google.common.cache.CacheBuilder; import net.lacolaco.smileessence.util.ListUtils; -import java.util.ArrayList; import java.util.Date; import java.util.List; +import java.util.Map; +import java.util.concurrent.ConcurrentHashMap; -public class DirectMessage extends EntitySupport { - private static Cache<Long, DirectMessage> storage = CacheBuilder.newBuilder().weakValues().build(); - - public synchronized static DirectMessage fetch(long statusId) { - return storage.getIfPresent(statusId); - } +public class DirectMessage extends EntitySupport implements IdObject { + private static Map<Long, DirectMessage> storage = new ConcurrentHashMap<>(); + private long id; + private User sender; + private User recipient; + private String text; + private Date createdAt; - @Deprecated - public synchronized static List<DirectMessage> cached() { - return new ArrayList<>(storage.asMap().values()); + private DirectMessage(twitter4j.DirectMessage st) { + update(st); } - public synchronized static void remove(long statusId) { - storage.invalidate(statusId); + public synchronized static DirectMessage fetch(long statusId) { + return storage.get(statusId); } public synchronized static DirectMessage fromTwitter(twitter4j.DirectMessage st) { @@ -39,17 +38,6 @@ public class DirectMessage extends EntitySupport { return ListUtils.map(sts, DirectMessage::fromTwitter); } - // インスタンス - private long id; - private User sender; - private User recipient; - private String text; - private Date createdAt; - - private DirectMessage(twitter4j.DirectMessage st) { - update(st); - } - private void update(twitter4j.DirectMessage message) { id = message.getId(); sender = User.fromTwitter(message.getSender()); @@ -60,6 +48,7 @@ public class DirectMessage extends EntitySupport { updateEntities(message); } + @Override public long getId() { return id; } |