summaryrefslogtreecommitdiffstats
path: root/voip
diff options
context:
space:
mode:
authorHung-ying Tyan <tyanh@google.com>2010-09-27 10:54:27 -0700
committerAndroid (Google) Code Review <android-gerrit@google.com>2010-09-27 10:54:27 -0700
commitfd144d7667d9d050b7fb158276ae4623d4ea83b8 (patch)
treeadcdf067c026bfe005680b091db95db45eb86994 /voip
parent025a39af346f39743c1e384b9000ce1baee36562 (diff)
parent3a4197e642e9c70f1fe00c2cba30f0f957d36bfc (diff)
downloadframeworks_base-fd144d7667d9d050b7fb158276ae4623d4ea83b8.zip
frameworks_base-fd144d7667d9d050b7fb158276ae4623d4ea83b8.tar.gz
frameworks_base-fd144d7667d9d050b7fb158276ae4623d4ea83b8.tar.bz2
Merge "SipAudioCall: remove SipManager dependency." into gingerbread
Diffstat (limited to 'voip')
-rw-r--r--voip/java/android/net/sip/SipAudioCall.java16
-rw-r--r--voip/java/android/net/sip/SipManager.java7
2 files changed, 12 insertions, 11 deletions
diff --git a/voip/java/android/net/sip/SipAudioCall.java b/voip/java/android/net/sip/SipAudioCall.java
index 2f4fd90..c23da20 100644
--- a/voip/java/android/net/sip/SipAudioCall.java
+++ b/voip/java/android/net/sip/SipAudioCall.java
@@ -46,7 +46,7 @@ import java.util.Map;
* Class that handles an audio call over SIP.
*/
/** @hide */
-public class SipAudioCall extends SipSessionAdapter {
+public class SipAudioCall {
private static final String TAG = SipAudioCall.class.getSimpleName();
private static final boolean RELEASE_SOCKET = true;
private static final boolean DONT_RELEASE_SOCKET = false;
@@ -530,7 +530,7 @@ public class SipAudioCall extends SipSessionAdapter {
* will be called.
*
* @param callee the SIP profile to make the call to
- * @param sipManager the {@link SipManager} object to help make call with
+ * @param sipSession the {@link SipSession} for carrying out the call
* @param timeout the timeout value in seconds. Default value (defined by
* SIP protocol) is used if {@code timeout} is zero or negative.
* @see Listener.onError
@@ -538,16 +538,12 @@ public class SipAudioCall extends SipSessionAdapter {
* call
*/
public synchronized void makeCall(SipProfile peerProfile,
- SipManager sipManager, int timeout) throws SipException {
- SipSession s = mSipSession = sipManager.createSipSession(
- mLocalProfile, createListener());
- if (s == null) {
- throw new SipException(
- "Failed to create SipSession; network available?");
- }
+ SipSession sipSession, int timeout) throws SipException {
+ mSipSession = sipSession;
try {
mAudioStream = new AudioStream(InetAddress.getByName(getLocalIp()));
- s.makeCall(peerProfile, createOffer().encode(), timeout);
+ sipSession.setListener(createListener());
+ sipSession.makeCall(peerProfile, createOffer().encode(), timeout);
} catch (IOException e) {
throw new SipException("makeCall()", e);
}
diff --git a/voip/java/android/net/sip/SipManager.java b/voip/java/android/net/sip/SipManager.java
index 5976a04..59631c1 100644
--- a/voip/java/android/net/sip/SipManager.java
+++ b/voip/java/android/net/sip/SipManager.java
@@ -269,7 +269,12 @@ public class SipManager {
throws SipException {
SipAudioCall call = new SipAudioCall(mContext, localProfile);
call.setListener(listener);
- call.makeCall(peerProfile, this, timeout);
+ SipSession s = createSipSession(localProfile, null);
+ if (s == null) {
+ throw new SipException(
+ "Failed to create SipSession; network available?");
+ }
+ call.makeCall(peerProfile, s, timeout);
return call;
}