Move calling management out of service.

This commit is contained in:
Cody Henthorne
2021-03-31 14:30:30 -04:00
committed by Alex Hart
parent d8dead82b6
commit 1dc3cf7824
32 changed files with 1355 additions and 2226 deletions

View File

@@ -1,64 +0,0 @@
package org.thoughtcrime.securesms.ringrtc;
import android.os.Parcel;
import android.os.Parcelable;
import androidx.annotation.NonNull;
import org.signal.ringrtc.CallId;
import org.whispersystems.signalservice.api.messages.calls.IceUpdateMessage;
/**
* Utility class for passing ICE candidate objects via Intents.
*
* Also provides utility methods for converting to/from Signal ICE
* candidate messages.
*/
public class IceCandidateParcel implements Parcelable {
@NonNull private final byte[] iceCandidate;
public IceCandidateParcel(@NonNull byte[] iceCandidate) {
this.iceCandidate = iceCandidate;
}
public IceCandidateParcel(@NonNull IceUpdateMessage iceUpdateMessage) {
this.iceCandidate = iceUpdateMessage.getOpaque();
}
private IceCandidateParcel(@NonNull Parcel in) {
this.iceCandidate = in.createByteArray();
}
public @NonNull byte[] getIceCandidate() {
return iceCandidate;
}
public @NonNull IceUpdateMessage getIceUpdateMessage(@NonNull CallId callId) {
return new IceUpdateMessage(callId.longValue(),
iceCandidate,
null);
}
@Override
public int describeContents() {
return 0;
}
@Override
public void writeToParcel(@NonNull Parcel dest, int flags) {
dest.writeByteArray(iceCandidate);
}
public static final Creator<IceCandidateParcel> CREATOR = new Creator<IceCandidateParcel>() {
@Override
public IceCandidateParcel createFromParcel(@NonNull Parcel in) {
return new IceCandidateParcel(in);
}
@Override
public IceCandidateParcel[] newArray(int size) {
return new IceCandidateParcel[size];
}
};
}

View File

@@ -1,70 +0,0 @@
package org.thoughtcrime.securesms.ringrtc;
import android.os.Parcel;
import android.os.Parcelable;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import org.whispersystems.signalservice.api.messages.calls.TurnServerInfo;
import java.util.ArrayList;
import java.util.List;
/**
* Wrap turn server info so it can be sent via an intent.
*/
public class TurnServerInfoParcel implements Parcelable {
private final String username;
private final String password;
private final List<String> urls;
public TurnServerInfoParcel(@NonNull TurnServerInfo turnServerInfo) {
urls = new ArrayList<>(turnServerInfo.getUrls());
username = turnServerInfo.getUsername();
password = turnServerInfo.getPassword();
}
private TurnServerInfoParcel(@NonNull Parcel in) {
username = in.readString();
password = in.readString();
urls = in.createStringArrayList();
}
public @Nullable String getUsername() {
return username;
}
public @Nullable String getPassword() {
return password;
}
public @NonNull List<String> getUrls() {
return urls;
}
@Override
public void writeToParcel(Parcel dest, int flags) {
dest.writeString(username);
dest.writeString(password);
dest.writeStringList(urls);
}
@Override
public int describeContents() {
return 0;
}
public static final Creator<TurnServerInfoParcel> CREATOR = new Creator<TurnServerInfoParcel>() {
@Override
public TurnServerInfoParcel createFromParcel(Parcel in) {
return new TurnServerInfoParcel(in);
}
@Override
public TurnServerInfoParcel[] newArray(int size) {
return new TurnServerInfoParcel[size];
}
};
}