public record Contact(
String givenName,
String familyName,
+ String nickName,
String color,
int messageExpirationTime,
+ long muteUntil,
+ boolean hideStory,
boolean isBlocked,
boolean isArchived,
boolean isProfileSharingEnabled,
- boolean isHidden
+ boolean isHidden,
+ Long unregisteredTimestamp
) {
private Contact(final Builder builder) {
this(builder.givenName,
builder.familyName,
+ builder.nickName,
builder.color,
builder.messageExpirationTime,
+ builder.muteUntil,
+ builder.hideStory,
builder.isBlocked,
builder.isArchived,
builder.isProfileSharingEnabled,
- builder.isHidden);
+ builder.isHidden,
+ builder.unregisteredTimestamp);
}
public static Builder newBuilder() {
Builder builder = new Builder();
builder.givenName = copy.givenName();
builder.familyName = copy.familyName();
+ builder.nickName = copy.nickName();
builder.color = copy.color();
builder.messageExpirationTime = copy.messageExpirationTime();
+ 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;
}
private String givenName;
private String familyName;
+ private String nickName;
private String color;
private int messageExpirationTime;
+ private long muteUntil;
+ private boolean hideStory;
private boolean isBlocked;
private boolean isArchived;
private boolean isProfileSharingEnabled;
private boolean isHidden;
+ private Long unregisteredTimestamp;
private Builder() {
}
return this;
}
+ public Builder withNickName(final String val) {
+ nickName = val;
+ return this;
+ }
+
public Builder withColor(final String val) {
color = val;
return this;
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;
return this;
}
+ public Builder withUnregisteredTimestamp(final Long val) {
+ unregisteredTimestamp = val;
+ return this;
+ }
+
public Contact build() {
return new Contact(this);
}