]> nmode's Git Repositories - signal-cli/blob - src/main/java/org/asamk/signal/manager/storage/protocol/IdentityInfo.java
d4af11f28942c1a3db8735a995c31b1b3dddf1d5
[signal-cli] / src / main / java / org / asamk / signal / manager / storage / protocol / IdentityInfo.java
1 package org.asamk.signal.manager.storage.protocol;
2
3 import org.asamk.signal.manager.TrustLevel;
4 import org.whispersystems.libsignal.IdentityKey;
5 import org.whispersystems.signalservice.api.push.SignalServiceAddress;
6
7 import java.util.Date;
8
9 public class IdentityInfo {
10
11 SignalServiceAddress address;
12 IdentityKey identityKey;
13 TrustLevel trustLevel;
14 Date added;
15
16 public IdentityInfo(SignalServiceAddress address, IdentityKey identityKey, TrustLevel trustLevel) {
17 this.address = address;
18 this.identityKey = identityKey;
19 this.trustLevel = trustLevel;
20 this.added = new Date();
21 }
22
23 IdentityInfo(SignalServiceAddress address, IdentityKey identityKey, TrustLevel trustLevel, Date added) {
24 this.address = address;
25 this.identityKey = identityKey;
26 this.trustLevel = trustLevel;
27 this.added = added;
28 }
29
30 public SignalServiceAddress getAddress() {
31 return address;
32 }
33
34 public void setAddress(final SignalServiceAddress address) {
35 this.address = address;
36 }
37
38 boolean isTrusted() {
39 return trustLevel == TrustLevel.TRUSTED_UNVERIFIED || trustLevel == TrustLevel.TRUSTED_VERIFIED;
40 }
41
42 public IdentityKey getIdentityKey() {
43 return this.identityKey;
44 }
45
46 public TrustLevel getTrustLevel() {
47 return this.trustLevel;
48 }
49
50 public Date getDateAdded() {
51 return this.added;
52 }
53
54 public byte[] getFingerprint() {
55 return identityKey.getPublicKey().serialize();
56 }
57 }