]> nmode's Git Repositories - signal-cli/blobdiff - lib/src/main/java/org/asamk/signal/manager/api/Contact.java
Fix creating builder from contact
[signal-cli] / lib / src / main / java / org / asamk / signal / manager / api / Contact.java
index e6dd5f930b026c74e33a54d9b1f4ea920e8f26cd..3eef0117023ce8e2ca8ecff8075bb26a9544ea37 100644 (file)
@@ -5,21 +5,39 @@ import org.whispersystems.signalservice.internal.util.Util;
 public record Contact(
         String givenName,
         String familyName,
+        String nickName,
+        String nickNameGivenName,
+        String nickNameFamilyName,
+        String note,
         String color,
         int messageExpirationTime,
+        int messageExpirationTimeVersion,
+        long muteUntil,
+        boolean hideStory,
         boolean isBlocked,
         boolean isArchived,
-        boolean isProfileSharingEnabled
+        boolean isProfileSharingEnabled,
+        boolean isHidden,
+        Long unregisteredTimestamp
 ) {
 
     private Contact(final Builder builder) {
         this(builder.givenName,
                 builder.familyName,
+                builder.nickName,
+                builder.nickNameGivenName,
+                builder.nickNameFamilyName,
+                builder.note,
                 builder.color,
                 builder.messageExpirationTime,
-                builder.blocked,
-                builder.archived,
-                builder.profileSharingEnabled);
+                builder.messageExpirationTimeVersion,
+                builder.muteUntil,
+                builder.hideStory,
+                builder.isBlocked,
+                builder.isArchived,
+                builder.isProfileSharingEnabled,
+                builder.isHidden,
+                builder.unregisteredTimestamp);
     }
 
     public static Builder newBuilder() {
@@ -30,11 +48,20 @@ public record Contact(
         Builder builder = new Builder();
         builder.givenName = copy.givenName();
         builder.familyName = copy.familyName();
+        builder.nickName = copy.nickName();
+        builder.nickNameGivenName = copy.nickNameGivenName();
+        builder.nickNameFamilyName = copy.nickNameFamilyName();
+        builder.note = copy.note();
         builder.color = copy.color();
         builder.messageExpirationTime = copy.messageExpirationTime();
-        builder.blocked = copy.isBlocked();
-        builder.archived = copy.isArchived();
-        builder.profileSharingEnabled = copy.isProfileSharingEnabled();
+        builder.messageExpirationTimeVersion = copy.messageExpirationTimeVersion();
+        builder.muteUntil = copy.muteUntil();
+        builder.hideStory = copy.hideStory();
+        builder.isBlocked = copy.isBlocked();
+        builder.isArchived = copy.isArchived();
+        builder.isProfileSharingEnabled = copy.isProfileSharingEnabled();
+        builder.isHidden = copy.isHidden();
+        builder.unregisteredTimestamp = copy.unregisteredTimestamp();
         return builder;
     }
 
@@ -57,15 +84,28 @@ public record Contact(
 
         private String givenName;
         private String familyName;
+        private String nickName;
+        private String nickNameGivenName;
+        private String nickNameFamilyName;
+        private String note;
         private String color;
         private int messageExpirationTime;
-        private boolean blocked;
-        private boolean archived;
-        private boolean profileSharingEnabled;
+        private int messageExpirationTimeVersion = 1;
+        private long muteUntil;
+        private boolean hideStory;
+        private boolean isBlocked;
+        private boolean isArchived;
+        private boolean isProfileSharingEnabled;
+        private boolean isHidden;
+        private Long unregisteredTimestamp;
 
         private Builder() {
         }
 
+        public static Builder newBuilder() {
+            return new Builder();
+        }
+
         public Builder withGivenName(final String val) {
             givenName = val;
             return this;
@@ -76,6 +116,26 @@ public record Contact(
             return this;
         }
 
+        public Builder withNickName(final String val) {
+            nickName = val;
+            return this;
+        }
+
+        public Builder withNickNameGivenName(final String val) {
+            nickNameGivenName = val;
+            return this;
+        }
+
+        public Builder withNickNameFamilyName(final String val) {
+            nickNameFamilyName = val;
+            return this;
+        }
+
+        public Builder withNote(final String val) {
+            note = val;
+            return this;
+        }
+
         public Builder withColor(final String val) {
             color = val;
             return this;
@@ -86,18 +146,43 @@ public record Contact(
             return this;
         }
 
-        public Builder withBlocked(final boolean val) {
-            blocked = val;
+        public Builder withMessageExpirationTimeVersion(final int val) {
+            messageExpirationTimeVersion = val;
+            return this;
+        }
+
+        public Builder withMuteUntil(final long val) {
+            muteUntil = val;
+            return this;
+        }
+
+        public Builder withHideStory(final boolean val) {
+            hideStory = val;
+            return this;
+        }
+
+        public Builder withIsBlocked(final boolean val) {
+            isBlocked = val;
+            return this;
+        }
+
+        public Builder withIsArchived(final boolean val) {
+            isArchived = val;
+            return this;
+        }
+
+        public Builder withIsProfileSharingEnabled(final boolean val) {
+            isProfileSharingEnabled = val;
             return this;
         }
 
-        public Builder withArchived(final boolean val) {
-            archived = val;
+        public Builder withIsHidden(final boolean val) {
+            isHidden = val;
             return this;
         }
 
-        public Builder withProfileSharingEnabled(final boolean val) {
-            profileSharingEnabled = val;
+        public Builder withUnregisteredTimestamp(final Long val) {
+            unregisteredTimestamp = val;
             return this;
         }