More fixes for Connection and RemoteConnection

Various clean ups and fixes:
  - allow remote connection to have audio set
  - allow remote connection to have abort
  - move onPostDialWait from ConnectionService to Connection
  - hide APIs we don't need

Change-Id: Ib2d0b40f2e9e7a6b5fbf5d6db48b509b7db3c906
diff --git a/telecomm/java/android/telecomm/RemoteConnection.java b/telecomm/java/android/telecomm/RemoteConnection.java
index 92db0d8..a159dee 100644
--- a/telecomm/java/android/telecomm/RemoteConnection.java
+++ b/telecomm/java/android/telecomm/RemoteConnection.java
@@ -33,7 +33,6 @@
 public final class RemoteConnection {
     public interface Listener {
         void onStateChanged(RemoteConnection connection, int state);
-        void onAudioStateChanged(RemoteConnection connection, CallAudioState state);
         void onDisconnected(RemoteConnection connection, int cause, String message);
         void onRequestingRingback(RemoteConnection connection, boolean ringback);
         void onPostDialWait(RemoteConnection connection, String remainingDigits);
@@ -76,6 +75,15 @@
         return mDisconnectMessage;
     }
 
+    public void abort() {
+        try {
+            if (mConnected) {
+                mCallService.abort(mConnectionId);
+            }
+        } catch (RemoteException ignored) {
+        }
+    }
+
     public void answer() {
         try {
             if (mConnected) {
@@ -148,6 +156,15 @@
         }
     }
 
+    public void setAudioState(CallAudioState state) {
+        try {
+            if (mConnected) {
+                mCallService.onAudioStateChanged(mConnectionId, state);
+            }
+        } catch (RemoteException ignored) {
+        }
+    }
+
     /**
      * @hide
      */
@@ -163,15 +180,6 @@
     /**
      * @hide
      */
-    void setAudioState(CallAudioState state) {
-        for (Listener l: mListeners) {
-            l.onAudioStateChanged(this, state);
-        }
-    }
-
-    /**
-     * @hide
-     */
     void setDisconnected(int cause, String message) {
         if (mState != Connection.State.DISCONNECTED) {
             mState = Connection.State.DISCONNECTED;