+ .storeContact(recipientId,
+ builder.withMessageExpirationTime(messageExpirationTimer)
+ .withMessageExpirationTimeVersion(version)
+ .build());
+ }
+
+ public void setExpirationTimer(
+ RecipientId recipientId, int messageExpirationTimer, int messageExpirationTimerVersion
+ ) {
+ var contact = account.getContactStore().getContact(recipientId);
+ if (contact != null && (
+ contact.messageExpirationTime() == messageExpirationTimer
+ || contact.messageExpirationTimeVersion() >= messageExpirationTimerVersion
+ )) {
+ return;
+ }
+ final var builder = contact == null ? Contact.newBuilder() : Contact.newBuilder(contact);
+ account.getContactStore()
+ .storeContact(recipientId,
+ builder.withMessageExpirationTime(messageExpirationTimer)
+ .withMessageExpirationTimeVersion(messageExpirationTimerVersion)
+ .build());