1 package org
.asamk
.signal
.storage
.profiles
;
3 import com
.fasterxml
.jackson
.annotation
.JsonIgnore
;
4 import com
.fasterxml
.jackson
.annotation
.JsonProperty
;
6 import org
.whispersystems
.signalservice
.api
.profiles
.SignalServiceProfile
;
10 public class SignalProfile
{
13 private final String identityKey
;
16 private final String name
;
18 private final File avatarFile
;
21 private final String unidentifiedAccess
;
24 private final boolean unrestrictedUnidentifiedAccess
;
27 private final Capabilities capabilities
;
29 public SignalProfile(final String identityKey
, final String name
, final File avatarFile
, final String unidentifiedAccess
, final boolean unrestrictedUnidentifiedAccess
, final SignalServiceProfile
.Capabilities capabilities
) {
30 this.identityKey
= identityKey
;
32 this.avatarFile
= avatarFile
;
33 this.unidentifiedAccess
= unidentifiedAccess
;
34 this.unrestrictedUnidentifiedAccess
= unrestrictedUnidentifiedAccess
;
35 this.capabilities
= new Capabilities();
36 this.capabilities
.storage
= capabilities
.isStorage();
37 this.capabilities
.gv1Migration
= capabilities
.isGv1Migration();
38 this.capabilities
.gv2
= capabilities
.isGv2();
41 public SignalProfile(@JsonProperty("identityKey") final String identityKey
, @JsonProperty("name") final String name
, @JsonProperty("unidentifiedAccess") final String unidentifiedAccess
, @JsonProperty("unrestrictedUnidentifiedAccess") final boolean unrestrictedUnidentifiedAccess
, @JsonProperty("capabilities") final Capabilities capabilities
) {
42 this.identityKey
= identityKey
;
44 this.avatarFile
= null;
45 this.unidentifiedAccess
= unidentifiedAccess
;
46 this.unrestrictedUnidentifiedAccess
= unrestrictedUnidentifiedAccess
;
47 this.capabilities
= capabilities
;
50 public String
getIdentityKey() {
54 public String
getName() {
58 public File
getAvatarFile() {
62 public String
getUnidentifiedAccess() {
63 return unidentifiedAccess
;
66 public boolean isUnrestrictedUnidentifiedAccess() {
67 return unrestrictedUnidentifiedAccess
;
70 public Capabilities
getCapabilities() {
75 public String
toString() {
76 return "SignalProfile{" +
77 "identityKey='" + identityKey
+ '\'' +
78 ", name='" + name
+ '\'' +
79 ", avatarFile=" + avatarFile
+
80 ", unidentifiedAccess='" + unidentifiedAccess
+ '\'' +
81 ", unrestrictedUnidentifiedAccess=" + unrestrictedUnidentifiedAccess
+
82 ", capabilities=" + capabilities
+
86 public static class Capabilities
{
95 public boolean storage
;
98 public boolean gv1Migration
;