SipAudioCall: remove SipManager dependency.

Change-Id: I2dc8bf427e52f64529ee0e0261362b975a8917c6
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 @@
  * 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 @@
      * 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 @@
      *        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 @@
             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;
     }