summaryrefslogtreecommitdiffstats
path: root/voip
diff options
context:
space:
mode:
authorHung-ying Tyan <tyanh@google.com>2010-09-24 23:27:40 +0800
committerHung-ying Tyan <tyanh@google.com>2010-09-24 23:27:40 +0800
commit3a4197e642e9c70f1fe00c2cba30f0f957d36bfc (patch)
treea6acb30ae3afdd9a9747c5f5b61c846683a9b2d8 /voip
parent658bec956785e074edc4f6c9fe739c366e37be33 (diff)
downloadframeworks_base-3a4197e642e9c70f1fe00c2cba30f0f957d36bfc.zip
frameworks_base-3a4197e642e9c70f1fe00c2cba30f0f957d36bfc.tar.gz
frameworks_base-3a4197e642e9c70f1fe00c2cba30f0f957d36bfc.tar.bz2
SipAudioCall: remove SipManager dependency.
Change-Id: I2dc8bf427e52f64529ee0e0261362b975a8917c6
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;
}