diff options
3 files changed, 21 insertions, 12 deletions
diff --git a/src/com/android/services/telephony/PstnConnectionService.java b/src/com/android/services/telephony/PstnConnectionService.java index a654c69ed..00ed25536 100644 --- a/src/com/android/services/telephony/PstnConnectionService.java +++ b/src/com/android/services/telephony/PstnConnectionService.java @@ -54,7 +54,7 @@ public final class PstnConnectionService extends TelephonyConnectionService { @Override public void onCreateConnections( final ConnectionRequest request, - final Response<ConnectionRequest, Connection> response) { + final OutgoingCallResponse<Connection> response) { if (!canCall(request.getHandle())) { Log.d(this, "Cannot place the call with %s", this.getClass().getSimpleName()); diff --git a/src/com/android/services/telephony/SipConnectionService.java b/src/com/android/services/telephony/SipConnectionService.java index 3faf78792..465dba1b1 100644 --- a/src/com/android/services/telephony/SipConnectionService.java +++ b/src/com/android/services/telephony/SipConnectionService.java @@ -48,7 +48,7 @@ public class SipConnectionService extends TelephonyConnectionService { @Override public void onCreateConnections( ConnectionRequest request, - Response<ConnectionRequest, Connection> callback) { + OutgoingCallResponse callback) { new GetSipProfileTask(this, request, callback).execute(); super.onCreateConnections(request, callback); } @@ -114,14 +114,14 @@ public class SipConnectionService extends TelephonyConnectionService { */ private class GetSipProfileTask extends AsyncTask<Void, Void, SipProfile> { private final ConnectionRequest mRequest; - private final Response<ConnectionRequest, Connection> mResponse; + private final OutgoingCallResponse mResponse; private final SipProfileDb mSipProfileDb; private final SipSharedPreferences mSipSharedPreferences; GetSipProfileTask( Context context, ConnectionRequest request, - Response<ConnectionRequest, Connection> response) { + OutgoingCallResponse response) { mRequest = request; mResponse = response; mSipProfileDb = new SipProfileDb(context); @@ -149,7 +149,7 @@ public class SipConnectionService extends TelephonyConnectionService { private void onSipProfileChosen( SipProfile profile, ConnectionRequest request, - Response<ConnectionRequest, Connection> response) { + OutgoingCallResponse response) { SipPhone phone = null; if (profile != null) { String sipUri = profile.getUriString(); diff --git a/src/com/android/services/telephony/TelephonyConnectionService.java b/src/com/android/services/telephony/TelephonyConnectionService.java index db4720b2e..a009bc8b1 100644 --- a/src/com/android/services/telephony/TelephonyConnectionService.java +++ b/src/com/android/services/telephony/TelephonyConnectionService.java @@ -51,7 +51,7 @@ public abstract class TelephonyConnectionService extends ConnectionService { protected void startCallWithPhone( Phone phone, ConnectionRequest request, - Response<ConnectionRequest, Connection> response) { + OutgoingCallResponse<Connection> response) { Log.d(this, "startCallWithPhone: %s.", request); if (phone == null) { @@ -135,7 +135,7 @@ public abstract class TelephonyConnectionService extends ConnectionService { private boolean checkServiceStateForOutgoingCall( Phone phone, ConnectionRequest request, - Response<ConnectionRequest, Connection> response) { + OutgoingCallResponse<Connection> response) { int state = phone.getServiceState().getState(); switch (state) { case ServiceState.STATE_IN_SERVICE: @@ -184,19 +184,28 @@ public abstract class TelephonyConnectionService extends ConnectionService { } protected void respondWithResult( - Uri request, - Response<Uri, Subscription> response, - Subscription result) { + ConnectionRequest request, + Response<ConnectionRequest, Connection> response, + Connection result) { Log.d(this, "respondWithResult %s -> %s", request, result); response.onResult(request, result); } protected void respondWithResult( ConnectionRequest request, - Response<ConnectionRequest, Connection> response, + OutgoingCallResponse<Connection> response, Connection result) { Log.d(this, "respondWithResult %s -> %s", request, result); - response.onResult(request, result); + response.onSuccess(request, result); + } + + protected void respondWithError( + ConnectionRequest request, + OutgoingCallResponse<Connection> response, + int errorCode, + String errorMsg) { + Log.d(this, "respondWithError %s: %d %s", request, errorCode, errorMsg); + response.onFailure(request, errorCode, errorMsg); } protected final TelephonyConnection createTelephonyConnection( |