resolved conflicts for merge of 2a36a778 to master

Change-Id: Ia70adeef06afddd29c827405fb5657bf9f5a29a3
diff --git a/cmds/servicemanager/service_manager.c b/cmds/servicemanager/service_manager.c
index a57a72f..d380a27 100644
--- a/cmds/servicemanager/service_manager.c
+++ b/cmds/servicemanager/service_manager.c
@@ -42,6 +42,7 @@
     { AID_RADIO, "radio.simphonebook" },
 /* TODO: remove after phone services are updated: */
     { AID_RADIO, "phone" },
+    { AID_RADIO, "sip" },
     { AID_RADIO, "isms" },
     { AID_RADIO, "iphonesubinfo" },
     { AID_RADIO, "simphonebook" },
diff --git a/services/java/com/android/server/SystemServer.java b/services/java/com/android/server/SystemServer.java
index 5ca386b..38afa3b 100644
--- a/services/java/com/android/server/SystemServer.java
+++ b/services/java/com/android/server/SystemServer.java
@@ -17,7 +17,6 @@
 package com.android.server;
 
 import com.android.server.am.ActivityManagerService;
-import com.android.server.sip.SipService;
 import com.android.internal.os.BinderInternal;
 import com.android.internal.os.SamplingProfilerIntegration;
 
diff --git a/services/java/com/android/server/sip/SipHelper.java b/voip/java/com/android/server/sip/SipHelper.java
similarity index 100%
rename from services/java/com/android/server/sip/SipHelper.java
rename to voip/java/com/android/server/sip/SipHelper.java
diff --git a/services/java/com/android/server/sip/SipService.java b/voip/java/com/android/server/sip/SipService.java
similarity index 98%
rename from services/java/com/android/server/sip/SipService.java
rename to voip/java/com/android/server/sip/SipService.java
index 3f43e1c..0ff5586 100644
--- a/services/java/com/android/server/sip/SipService.java
+++ b/voip/java/com/android/server/sip/SipService.java
@@ -40,6 +40,7 @@
 import android.os.Looper;
 import android.os.Message;
 import android.os.RemoteException;
+import android.os.ServiceManager;
 import android.os.SystemClock;
 import android.text.TextUtils;
 import android.util.Log;
@@ -90,12 +91,14 @@
     private ConnectivityReceiver mConnectivityReceiver;
 
     /**
-     * Creates a {@code SipService} instance. Returns null if SIP API is not
-     * supported.
+     * Starts the SIP service. Do nothing if the SIP API is not supported on the
+     * device.
      */
-    public static SipService create(Context context) {
-        return (SipManager.isApiSupported(context) ? new SipService(context)
-                                                   : null);
+    public static void start(Context context) {
+        if (SipManager.isApiSupported(context)) {
+            ServiceManager.addService("sip", new SipService(context));
+            Log.i(TAG, "SIP service started");
+        }
     }
 
     private SipService(Context context) {
diff --git a/services/java/com/android/server/sip/SipSessionGroup.java b/voip/java/com/android/server/sip/SipSessionGroup.java
similarity index 100%
rename from services/java/com/android/server/sip/SipSessionGroup.java
rename to voip/java/com/android/server/sip/SipSessionGroup.java
diff --git a/services/java/com/android/server/sip/SipSessionListenerProxy.java b/voip/java/com/android/server/sip/SipSessionListenerProxy.java
similarity index 100%
rename from services/java/com/android/server/sip/SipSessionListenerProxy.java
rename to voip/java/com/android/server/sip/SipSessionListenerProxy.java