DO NOT MERGE. Allow ConnectionService to ask Telecomm for ringback

Implements the necessary wiring to respondj to a ConnecitonService that
asks Telecomm to play ringbacks on its behalf.

Bug: 15190301
Change-Id: Ic6a6c031aa92df1f3587daf74f24d090cd21245b
diff --git a/src/com/android/telecomm/Call.java b/src/com/android/telecomm/Call.java
index 2bcc978..cd64ff8 100644
--- a/src/com/android/telecomm/Call.java
+++ b/src/com/android/telecomm/Call.java
@@ -58,6 +58,7 @@
         void onFailedOutgoingCall(Call call, boolean isAborted);
         void onSuccessfulIncomingCall(Call call, CallInfo callInfo);
         void onFailedIncomingCall(Call call);
+        void onRequestingRingback(Call call, boolean requestingRingback);
     }
 
     private static final OnQueryCompleteListener sCallerInfoQueryListener =
@@ -172,6 +173,9 @@
     /** The latest token used with a contact info query. */
     private int mQueryToken = 0;
 
+    /** Whether this call is requesting that Telecomm play the ringback tone on its behalf. */
+    private boolean mRequestingRingback = false;
+
     /** Incoming call-info to use when direct-to-voicemail query finishes. */
     private CallInfo mPendingDirectToVoicemailCallInfo;
 
@@ -234,6 +238,17 @@
         }
     }
 
+    void setRequestingRingback(boolean requestingRingback) {
+        mRequestingRingback = requestingRingback;
+        for (Listener l : mListeners) {
+            l.onRequestingRingback(this, mRequestingRingback);
+        }
+    }
+
+    boolean isRequestingRingback() {
+        return mRequestingRingback;
+    }
+
     Uri getHandle() {
         return mHandle;
     }