]>
nmode's Git Repositories - signal-cli/blob - lib/src/main/java/org/asamk/signal/manager/storage/messageCache/CachedMessage.java
c1f310e848cc61d2bc7996185e032870afe4f858
1 package org
.asamk
.signal
.manager
.storage
.messageCache
;
3 import org
.asamk
.signal
.manager
.util
.MessageCacheUtils
;
4 import org
.slf4j
.Logger
;
5 import org
.slf4j
.LoggerFactory
;
6 import org
.whispersystems
.signalservice
.api
.messages
.SignalServiceEnvelope
;
9 import java
.io
.IOException
;
10 import java
.nio
.file
.Files
;
12 public final class CachedMessage
{
14 private final static Logger logger
= LoggerFactory
.getLogger(CachedMessage
.class);
16 private final File file
;
18 CachedMessage(final File file
) {
26 public SignalServiceEnvelope
loadEnvelope() {
28 return MessageCacheUtils
.loadEnvelope(file
);
29 } catch (Exception e
) {
30 logger
.error("Failed to load cached message envelope “{}”: {}", file
, e
.getMessage(), e
);
35 public void delete() {
37 Files
.delete(file
.toPath());
38 } catch (IOException e
) {
39 logger
.warn("Failed to delete cached message file “{}”, ignoring: {}", file
, e
.getMessage());
41 // Delete parent directory, if empty
43 Files
.delete(file
.toPath().getParent());
44 } catch (IOException ignored
) {