Merge "Add methods to TelephonyManager for Subscription management (2/3)"
diff --git a/res/drawable-xxhdpi/chat_with_others.png b/res/drawable-xxhdpi/chat_with_others.png
new file mode 100644
index 0000000..6f6b03e
--- /dev/null
+++ b/res/drawable-xxhdpi/chat_with_others.png
Binary files differ
diff --git a/res/drawable-xxhdpi/market_wireless.png b/res/drawable-xxhdpi/market_wireless.png
new file mode 100644
index 0000000..e451fe7
--- /dev/null
+++ b/res/drawable-xxhdpi/market_wireless.png
Binary files differ
diff --git a/res/drawable-xxhdpi/q_mobile.png b/res/drawable-xxhdpi/q_mobile.png
new file mode 100644
index 0000000..cfc0624
--- /dev/null
+++ b/res/drawable-xxhdpi/q_mobile.png
Binary files differ
diff --git a/res/drawable-xxhdpi/talk_to_your_circles.png b/res/drawable-xxhdpi/talk_to_your_circles.png
new file mode 100644
index 0000000..d6bc672
--- /dev/null
+++ b/res/drawable-xxhdpi/talk_to_your_circles.png
Binary files differ
diff --git a/res/values/strings.xml b/res/values/strings.xml
index 747eca7..e85d7b6 100644
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -75,4 +75,23 @@
     <!-- "Respond via SMS": Confirmation message shown after sending
         a text response. [CHAR LIMIT=40] -->
     <string name="respond_via_sms_confirmation_format">Message sent to <xliff:g id="phone_number">%s</xliff:g>.</string>
+
+
+    <!-- DO NOT TRANSLATE. Label for test Subscription 0. -->
+    <string name="test_subscription_0_label">Q Mobile</string>
+    <!-- DO NOT TRANSLATE. Label for test Subscription 1. -->
+    <string name="test_subscription_1_label">Market Wireless</string>
+    <!-- DO NOT TRANSLATE. Label for test Subscription 2. -->
+    <string name="test_subscription_2_label">Sonoma Circles Talk Plus</string>
+    <!-- DO NOT TRANSLATE. Label for test Subscription 3. -->
+    <string name="test_subscription_3_label">Bay Voice Chat Pro</string>
+
+    <!-- DO NOT TRANSLATE. Short description for test Subscription 0. -->
+    <string name="test_subscription_0_short_description">Account with Q Mobile</string>
+    <!-- DO NOT TRANSLATE. Short description for test Subscription 1. -->
+    <string name="test_subscription_1_short_description">Account with Market Wireless</string>
+    <!-- DO NOT TRANSLATE. Short description for test Subscription 2. -->
+    <string name="test_subscription_2_short_description">Talk to everyone in your Circles!</string>
+    <!-- DO NOT TRANSLATE. Short description for test Subscription 3. -->
+    <string name="test_subscription_3_short_description">Chat with Chat Network users</string>
 </resources>
diff --git a/src/com/android/telecomm/TelecommServiceImpl.java b/src/com/android/telecomm/TelecommServiceImpl.java
index e3f8bcb..ef26a33 100644
--- a/src/com/android/telecomm/TelecommServiceImpl.java
+++ b/src/com/android/telecomm/TelecommServiceImpl.java
@@ -16,15 +16,20 @@
 
 package com.android.telecomm;
 
+import com.google.android.collect.Lists;
+
+import com.android.internal.telecomm.ITelecommService;
+
 import android.content.ComponentName;
-import android.content.Context;
 import android.content.res.Resources;
+import android.net.Uri;
 import android.os.Handler;
 import android.os.Message;
 import android.os.ServiceManager;
+import android.telecomm.Subscription;
 import android.text.TextUtils;
 
-import com.android.internal.telecomm.ITelecommService;
+import java.util.List;
 
 /**
  * Implementation of the ITelecomm interface.
@@ -136,4 +141,68 @@
 
         return new ComponentName(packageName, className);
     }
+
+    // TODO (STOPSHIP): Static list of Subscriptions for testing and UX work only.
+
+    private  static final ComponentName sComponentName = new ComponentName(
+            "com.android.telecomm",
+            TelecommServiceImpl.class.getName());  // This field is a no-op
+
+    private static final List<Subscription> sSubscriptions = Lists.newArrayList(
+            new Subscription(
+                    sComponentName,
+                    "subscription0",
+                    Uri.parse("tel:999-555-1212"),
+                    R.string.test_subscription_0_label,
+                    R.string.test_subscription_0_short_description,
+                    R.drawable.q_mobile,
+                    true,
+                    true),
+            new Subscription(
+                    sComponentName,
+                    "subscription1",
+                    Uri.parse("tel:333-111-2222"),
+                    R.string.test_subscription_1_label,
+                    R.string.test_subscription_1_short_description,
+                    R.drawable.market_wireless,
+                    true,
+                    false),
+            new Subscription(
+                    sComponentName,
+                    "subscription2",
+                    Uri.parse("mailto:two@example.com"),
+                    R.string.test_subscription_2_label,
+                    R.string.test_subscription_2_short_description,
+                    R.drawable.talk_to_your_circles,
+                    true,
+                    false),
+            new Subscription(
+                    sComponentName,
+                    "subscription3",
+                    Uri.parse("mailto:three@example.com"),
+                    R.string.test_subscription_3_label,
+                    R.string.test_subscription_3_short_description,
+                    R.drawable.chat_with_others,
+                    true,
+                    false)
+    );
+
+
+
+    @Override
+    public List<Subscription> getSubscriptions() {
+        return sSubscriptions;
+    }
+
+    @Override
+    public void setEnabled(Subscription subscription, boolean enabled) {
+        // Enforce MODIFY_PHONE_STATE ?
+        // TODO
+    }
+
+    @Override
+    public void setSystemDefault(Subscription subscription) {
+        // Enforce MODIFY_PHONE_STATE ?
+        // TODO
+    }
 }