Telecomm implementation of CallServiceSelectorAdapter

Bug: 13643568
Change-Id: Ida5859a3b5b15c9fa1c533f27a3e14fd0d7c36af
diff --git a/src/com/android/telecomm/OutgoingCallsManager.java b/src/com/android/telecomm/OutgoingCallsManager.java
index 1a955ce..def5211 100644
--- a/src/com/android/telecomm/OutgoingCallsManager.java
+++ b/src/com/android/telecomm/OutgoingCallsManager.java
@@ -16,10 +16,13 @@
 
 package com.android.telecomm;
 
+import android.telecomm.CallServiceDescriptor;
+
 import com.android.internal.telecomm.ICallServiceSelector;
 import com.google.common.collect.Maps;
 
 import java.util.Collection;
+import java.util.List;
 import java.util.Map;
 import java.util.Set;
 
@@ -141,6 +144,21 @@
     }
 
     /**
+     * Forwards the selected call service from the selector to the corresponding outgoing-call
+     * processor.
+     */
+    void processSelectedCallServices(Call call, List<CallServiceDescriptor> descriptors) {
+        Log.v(this, "processSelectedCallServices, call %s,  descriptors: %s", call, descriptors);
+        OutgoingCallProcessor processor = mOutgoingCallProcessors.get(call);
+        if (processor == null) {
+            // Shouldn't happen, so log a wtf if it does.
+            Log.wtf(this, "Received unexpected setSelectedCallServices notification.");
+        } else {
+            processor.processSelectedCallServices(descriptors);
+        }
+    }
+
+    /**
      * Aborts any ongoing attempts to connect the specified (outgoing) call.
      *
      * @param call The call to be aborted.