Merge "Throw proper exceptions in SipManager" into gingerbread
This commit is contained in:
committed by
Android (Google) Code Review
commit
0bba953541
@ -390,12 +390,11 @@ public class SipPhone extends SipPhoneBase {
|
||||
new SipProfile.Builder(calleeSipUri).build();
|
||||
SipConnection c = new SipConnection(this, callee,
|
||||
originalNumber);
|
||||
connections.add(c);
|
||||
c.dial();
|
||||
connections.add(c);
|
||||
setState(Call.State.DIALING);
|
||||
return c;
|
||||
} catch (ParseException e) {
|
||||
// TODO: notify someone
|
||||
throw new SipException("dial", e);
|
||||
}
|
||||
}
|
||||
|
@ -314,10 +314,6 @@ public class SipManager {
|
||||
SipAudioCall call = new SipAudioCall(mContext, localProfile);
|
||||
call.setListener(listener);
|
||||
SipSession s = createSipSession(localProfile, null);
|
||||
if (s == null) {
|
||||
throw new SipException(
|
||||
"Failed to create SipSession; network available?");
|
||||
}
|
||||
call.makeCall(peerProfile, s, timeout);
|
||||
return call;
|
||||
}
|
||||
@ -366,7 +362,9 @@ public class SipManager {
|
||||
*/
|
||||
public SipAudioCall takeAudioCall(Intent incomingCallIntent,
|
||||
SipAudioCall.Listener listener) throws SipException {
|
||||
if (incomingCallIntent == null) return null;
|
||||
if (incomingCallIntent == null) {
|
||||
throw new SipException("Cannot retrieve session with null intent");
|
||||
}
|
||||
|
||||
String callId = getCallId(incomingCallIntent);
|
||||
if (callId == null) {
|
||||
@ -381,7 +379,9 @@ public class SipManager {
|
||||
|
||||
try {
|
||||
ISipSession session = mSipService.getPendingSession(callId);
|
||||
if (session == null) return null;
|
||||
if (session == null) {
|
||||
throw new SipException("No pending session for the call");
|
||||
}
|
||||
SipAudioCall call = new SipAudioCall(
|
||||
mContext, session.getLocalProfile());
|
||||
call.attachCall(new SipSession(session), offerSd);
|
||||
@ -526,6 +526,10 @@ public class SipManager {
|
||||
SipSession.Listener listener) throws SipException {
|
||||
try {
|
||||
ISipSession s = mSipService.createSession(localProfile, null);
|
||||
if (s == null) {
|
||||
throw new SipException(
|
||||
"Failed to create SipSession; network unavailable?");
|
||||
}
|
||||
return new SipSession(s, listener);
|
||||
} catch (RemoteException e) {
|
||||
throw new SipException("createSipSession()", e);
|
||||
@ -541,7 +545,7 @@ public class SipManager {
|
||||
try {
|
||||
return mSipService.getListOfProfiles();
|
||||
} catch (RemoteException e) {
|
||||
return null;
|
||||
return new SipProfile[0];
|
||||
}
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user