static Single fromAddress(RecipientAddress address) {
if (address.number().isPresent()) {
return new Number(address.number().get());
- } else if (address.uuid().isPresent()) {
- return new Uuid(address.uuid().get());
+ } else if (address.aci().isPresent()) {
+ return new Uuid(UUID.fromString(address.aci().get()));
+ } else if (address.pni().isPresent()) {
+ return new Pni(address.pni().get());
} else if (address.username().isPresent()) {
return new Username(address.username().get());
}
}
}
+ record Pni(String pni) implements Single {
+
+ @Override
+ public String getIdentifier() {
+ return pni;
+ }
+
+ @Override
+ public RecipientAddress toPartialRecipientAddress() {
+ return new RecipientAddress(null, pni, null, null);
+ }
+ }
+
record Number(String number) implements Single {
@Override
@Override
public RecipientAddress toPartialRecipientAddress() {
- return new RecipientAddress(null, number);
+ return new RecipientAddress(number);
}
}
@Override
public RecipientAddress toPartialRecipientAddress() {
- return new RecipientAddress(null, null, username);
+ return new RecipientAddress(null, null, null, username);
}
}