]> nmode's Git Repositories - signal-cli/blob - lib/src/main/java/org/asamk/signal/manager/jobs/RetrieveStickerPackJob.java
Update libsignal-service
[signal-cli] / lib / src / main / java / org / asamk / signal / manager / jobs / RetrieveStickerPackJob.java
1 package org.asamk.signal.manager.jobs;
2
3 import org.asamk.signal.manager.api.StickerPackId;
4 import org.asamk.signal.manager.helper.Context;
5 import org.signal.libsignal.protocol.InvalidMessageException;
6 import org.slf4j.Logger;
7 import org.slf4j.LoggerFactory;
8 import org.whispersystems.signalservice.internal.util.Hex;
9
10 import java.io.IOException;
11
12 public class RetrieveStickerPackJob implements Job {
13
14 private static final Logger logger = LoggerFactory.getLogger(RetrieveStickerPackJob.class);
15
16 private final StickerPackId packId;
17 private final byte[] packKey;
18
19 public RetrieveStickerPackJob(final StickerPackId packId, final byte[] packKey) {
20 this.packId = packId;
21 this.packKey = packKey;
22 }
23
24 @Override
25 public void run(Context context) {
26 logger.trace("Downloading sticker pack {}", packId);
27 try {
28 context.getStickerHelper().retrieveStickerPack(packId, packKey);
29 } catch (IOException e) {
30 logger.warn("Failed to retrieve sticker pack {}: {}",
31 Hex.toStringCondensed(packId.serialize()),
32 e.getMessage());
33 } catch (InvalidMessageException e) {
34 logger.warn("Failed to retrieve sticker pack {}, invalid pack data: {}",
35 Hex.toStringCondensed(packId.serialize()),
36 e.getMessage());
37 }
38 }
39 }