mirror of
https://github.com/signalapp/Signal-Android.git
synced 2026-02-20 17:57:29 +00:00
1) In addition to the Recipient interface, there is now RecipientDevice. A Recipient can have multiple corresponding RecipientDevices. All addressing is done to a Recipient, but crypto sessions and transport delivery are done to RecipientDevice. 2) The Push transport handles the discovery and session setup of additional Recipient devices. 3) Some internal rejiggering of Groups.
33 lines
874 B
Java
33 lines
874 B
Java
package org.whispersystems.textsecure.push;
|
|
|
|
import android.content.Context;
|
|
|
|
import org.whispersystems.textsecure.directory.Directory;
|
|
import org.whispersystems.textsecure.storage.RecipientDevice;
|
|
|
|
public class PushAddress extends RecipientDevice {
|
|
|
|
private final String e164number;
|
|
private final String relay;
|
|
|
|
private PushAddress(long recipientId, String e164number, int deviceId, String relay) {
|
|
super(recipientId, deviceId);
|
|
this.e164number = e164number;
|
|
this.relay = relay;
|
|
}
|
|
|
|
public String getNumber() {
|
|
return e164number;
|
|
}
|
|
|
|
public String getRelay() {
|
|
return relay;
|
|
}
|
|
|
|
public static PushAddress create(Context context, long recipientId, String e164number, int deviceId) {
|
|
String relay = Directory.getInstance(context).getRelay(e164number);
|
|
return new PushAddress(recipientId, e164number, deviceId, relay);
|
|
}
|
|
|
|
}
|