diff options
| author | Hung-ying Tyan <tyanh@google.com> | 2010-06-29 11:32:33 -0700 |
|---|---|---|
| committer | Hung-ying Tyan <tyanh@google.com> | 2010-06-29 11:32:33 -0700 |
| commit | f7f6719d53e4fca10edaa9e52abe53dfe618de46 (patch) | |
| tree | a03eb31265436b9cd9d9db41eee7343f88b742c7 | |
| parent | fe68ef2763389d617be2a93d640090dff4e46581 (diff) | |
| download | android_external_nist-sip-f7f6719d53e4fca10edaa9e52abe53dfe618de46.tar.gz android_external_nist-sip-f7f6719d53e4fca10edaa9e52abe53dfe618de46.tar.bz2 android_external_nist-sip-f7f6719d53e4fca10edaa9e52abe53dfe618de46.zip | |
SIP telephony: mv SipPhoneFactory to where it should be.
Change-Id: I340946dd84ac235dd4a3dcd93b0e376a0d2cbdd0
31 files changed, 124 insertions, 130 deletions
diff --git a/phone/src/com/android/phone2/BluetoothHeadsetService.java b/phone/src/com/android/phone2/BluetoothHeadsetService.java index ac4dce3..fb00792 100644 --- a/phone/src/com/android/phone2/BluetoothHeadsetService.java +++ b/phone/src/com/android/phone2/BluetoothHeadsetService.java @@ -41,7 +41,7 @@ import android.util.Log; import com.android.internal.telephony.Call; import com.android.internal.telephony.Phone; -import com.android.internal.telephony.SipPhoneFactory; +import com.android.internal.telephony.sip.SipPhoneFactory; import java.util.HashMap; import java.util.LinkedList; diff --git a/phone/src/com/android/phone2/CLIRListPreference.java b/phone/src/com/android/phone2/CLIRListPreference.java index 5a92375..d95d891 100644 --- a/phone/src/com/android/phone2/CLIRListPreference.java +++ b/phone/src/com/android/phone2/CLIRListPreference.java @@ -5,7 +5,7 @@ import static com.android.phone2.TimeConsumingPreferenceActivity.RESPONSE_ERROR; import com.android.internal.telephony.CommandsInterface; import com.android.internal.telephony.Phone; -import com.android.internal.telephony.SipPhoneFactory; +import com.android.internal.telephony.sip.SipPhoneFactory; import android.content.Context; import android.os.AsyncResult; diff --git a/phone/src/com/android/phone2/CallFeaturesSetting.java b/phone/src/com/android/phone2/CallFeaturesSetting.java index b98b576..6431bad 100644 --- a/phone/src/com/android/phone2/CallFeaturesSetting.java +++ b/phone/src/com/android/phone2/CallFeaturesSetting.java @@ -49,7 +49,7 @@ import android.widget.ListAdapter; import com.android.internal.telephony.CallForwardInfo; import com.android.internal.telephony.CommandsInterface; import com.android.internal.telephony.Phone; -import com.android.internal.telephony.SipPhoneFactory; +import com.android.internal.telephony.sip.SipPhoneFactory; import com.android.internal.telephony.cdma.TtyIntent; import java.util.Collection; diff --git a/phone/src/com/android/phone2/CallForwardEditPreference.java b/phone/src/com/android/phone2/CallForwardEditPreference.java index b2768b8..627fd3b 100644 --- a/phone/src/com/android/phone2/CallForwardEditPreference.java +++ b/phone/src/com/android/phone2/CallForwardEditPreference.java @@ -3,7 +3,7 @@ package com.android.phone2; import com.android.internal.telephony.CallForwardInfo; import com.android.internal.telephony.CommandsInterface; import com.android.internal.telephony.Phone; -import com.android.internal.telephony.SipPhoneFactory; +import com.android.internal.telephony.sip.SipPhoneFactory; import android.app.AlertDialog; import android.content.Context; diff --git a/phone/src/com/android/phone2/CallWaitingCheckBoxPreference.java b/phone/src/com/android/phone2/CallWaitingCheckBoxPreference.java index 7223ca4..e404ae0 100644 --- a/phone/src/com/android/phone2/CallWaitingCheckBoxPreference.java +++ b/phone/src/com/android/phone2/CallWaitingCheckBoxPreference.java @@ -11,7 +11,7 @@ import android.util.AttributeSet; import android.util.Log; import com.android.internal.telephony.Phone; -import com.android.internal.telephony.SipPhoneFactory; +import com.android.internal.telephony.sip.SipPhoneFactory; public class CallWaitingCheckBoxPreference extends CheckBoxPreference { private static final String LOG_TAG = "CallWaitingCheckBoxPreference"; diff --git a/phone/src/com/android/phone2/CdmaCallOptions.java b/phone/src/com/android/phone2/CdmaCallOptions.java index d7de04f..1f29ce1 100644 --- a/phone/src/com/android/phone2/CdmaCallOptions.java +++ b/phone/src/com/android/phone2/CdmaCallOptions.java @@ -1,7 +1,7 @@ package com.android.phone2; import com.android.internal.telephony.Phone; -import com.android.internal.telephony.SipPhoneFactory; +import com.android.internal.telephony.sip.SipPhoneFactory; import android.content.DialogInterface; import android.os.AsyncResult; diff --git a/phone/src/com/android/phone2/CdmaOptions.java b/phone/src/com/android/phone2/CdmaOptions.java index c40b528..8145345 100644 --- a/phone/src/com/android/phone2/CdmaOptions.java +++ b/phone/src/com/android/phone2/CdmaOptions.java @@ -22,7 +22,7 @@ import android.preference.PreferenceActivity; import android.preference.PreferenceScreen; import com.android.internal.telephony.Phone; -import com.android.internal.telephony.SipPhoneFactory; +import com.android.internal.telephony.sip.SipPhoneFactory; /** * List of Phone-specific settings screens. diff --git a/phone/src/com/android/phone2/CdmaRoamingListPreference.java b/phone/src/com/android/phone2/CdmaRoamingListPreference.java index c5e4cdd..48a795c 100644 --- a/phone/src/com/android/phone2/CdmaRoamingListPreference.java +++ b/phone/src/com/android/phone2/CdmaRoamingListPreference.java @@ -28,7 +28,7 @@ import android.util.AttributeSet; import android.util.Log; import com.android.internal.telephony.Phone; -import com.android.internal.telephony.SipPhoneFactory; +import com.android.internal.telephony.sip.SipPhoneFactory; import com.android.internal.telephony.TelephonyProperties; public class CdmaRoamingListPreference extends ListPreference { diff --git a/phone/src/com/android/phone2/CdmaVoicePrivacyCheckBoxPreference.java b/phone/src/com/android/phone2/CdmaVoicePrivacyCheckBoxPreference.java index 610c6dd..51328f7 100644 --- a/phone/src/com/android/phone2/CdmaVoicePrivacyCheckBoxPreference.java +++ b/phone/src/com/android/phone2/CdmaVoicePrivacyCheckBoxPreference.java @@ -1,7 +1,7 @@ package com.android.phone2; import com.android.internal.telephony.Phone; -import com.android.internal.telephony.SipPhoneFactory; +import com.android.internal.telephony.sip.SipPhoneFactory; import android.content.Context; import android.os.AsyncResult; import android.os.Handler; diff --git a/phone/src/com/android/phone2/CellBroadcastSms.java b/phone/src/com/android/phone2/CellBroadcastSms.java index ba7af14..0f52058 100644 --- a/phone/src/com/android/phone2/CellBroadcastSms.java +++ b/phone/src/com/android/phone2/CellBroadcastSms.java @@ -24,7 +24,7 @@ import android.preference.Preference; import android.preference.PreferenceScreen; import android.preference.PreferenceActivity; import com.android.internal.telephony.Phone; -import com.android.internal.telephony.SipPhoneFactory; +import com.android.internal.telephony.sip.SipPhoneFactory; import com.android.internal.telephony.RILConstants; import android.os.AsyncResult; diff --git a/phone/src/com/android/phone2/ChangeIccPinScreen.java b/phone/src/com/android/phone2/ChangeIccPinScreen.java index cae3441..f9d3488 100644 --- a/phone/src/com/android/phone2/ChangeIccPinScreen.java +++ b/phone/src/com/android/phone2/ChangeIccPinScreen.java @@ -37,7 +37,7 @@ import android.widget.Toast; import com.android.internal.telephony.CommandException; import com.android.internal.telephony.IccCard; import com.android.internal.telephony.Phone; -import com.android.internal.telephony.SipPhoneFactory; +import com.android.internal.telephony.sip.SipPhoneFactory; /** * "Change ICC PIN" UI for the Phone app. diff --git a/phone/src/com/android/phone2/EmergencyCallHandler.java b/phone/src/com/android/phone2/EmergencyCallHandler.java index e3e4495..447812d 100644 --- a/phone/src/com/android/phone2/EmergencyCallHandler.java +++ b/phone/src/com/android/phone2/EmergencyCallHandler.java @@ -26,7 +26,7 @@ import android.os.Handler; import android.os.Message; import android.provider.Settings; import com.android.internal.telephony.Phone; -import com.android.internal.telephony.SipPhoneFactory; +import com.android.internal.telephony.sip.SipPhoneFactory; import android.telephony.ServiceState; import android.view.WindowManager; diff --git a/phone/src/com/android/phone2/EmergencyCallbackModeExitDialog.java b/phone/src/com/android/phone2/EmergencyCallbackModeExitDialog.java index 98532fe..281ddff 100644 --- a/phone/src/com/android/phone2/EmergencyCallbackModeExitDialog.java +++ b/phone/src/com/android/phone2/EmergencyCallbackModeExitDialog.java @@ -40,7 +40,7 @@ import android.os.SystemProperties; import android.util.Log; import com.android.internal.telephony.Phone; -import com.android.internal.telephony.SipPhoneFactory; +import com.android.internal.telephony.sip.SipPhoneFactory; import com.android.internal.telephony.TelephonyIntents; import com.android.internal.telephony.TelephonyProperties; diff --git a/phone/src/com/android/phone2/EmergencyCallbackModeService.java b/phone/src/com/android/phone2/EmergencyCallbackModeService.java index 4d9d714..5f1739b 100644 --- a/phone/src/com/android/phone2/EmergencyCallbackModeService.java +++ b/phone/src/com/android/phone2/EmergencyCallbackModeService.java @@ -36,7 +36,7 @@ import android.util.Log; import com.android.internal.telephony.cdma.CDMAPhone; import com.android.internal.telephony.Phone; -import com.android.internal.telephony.SipPhoneFactory; +import com.android.internal.telephony.sip.SipPhoneFactory; import com.android.internal.telephony.TelephonyIntents; import com.android.internal.telephony.TelephonyProperties; diff --git a/phone/src/com/android/phone2/EnableFdnScreen.java b/phone/src/com/android/phone2/EnableFdnScreen.java index 8588396..b41ff70 100644 --- a/phone/src/com/android/phone2/EnableFdnScreen.java +++ b/phone/src/com/android/phone2/EnableFdnScreen.java @@ -31,7 +31,7 @@ import android.widget.TextView; import com.android.internal.telephony.CommandException; import com.android.internal.telephony.Phone; -import com.android.internal.telephony.SipPhoneFactory; +import com.android.internal.telephony.sip.SipPhoneFactory; /** * UI to enable/disable FDN. diff --git a/phone/src/com/android/phone2/EnableIccPinScreen.java b/phone/src/com/android/phone2/EnableIccPinScreen.java index 23722d3..dc52f2a 100644 --- a/phone/src/com/android/phone2/EnableIccPinScreen.java +++ b/phone/src/com/android/phone2/EnableIccPinScreen.java @@ -31,7 +31,7 @@ import android.widget.TextView; import com.android.internal.telephony.CommandException; import com.android.internal.telephony.Phone; -import com.android.internal.telephony.SipPhoneFactory; +import com.android.internal.telephony.sip.SipPhoneFactory; /** * UI to enable/disable the ICC PIN. diff --git a/phone/src/com/android/phone2/FdnSetting.java b/phone/src/com/android/phone2/FdnSetting.java index 1426b51..1760183 100644 --- a/phone/src/com/android/phone2/FdnSetting.java +++ b/phone/src/com/android/phone2/FdnSetting.java @@ -29,7 +29,7 @@ import android.widget.Toast; import com.android.internal.telephony.CommandException; import com.android.internal.telephony.Phone; -import com.android.internal.telephony.SipPhoneFactory; +import com.android.internal.telephony.sip.SipPhoneFactory; /** * FDN settings UI for the Phone app. diff --git a/phone/src/com/android/phone2/GsmUmtsCallOptions.java b/phone/src/com/android/phone2/GsmUmtsCallOptions.java index b064926..9853577 100644 --- a/phone/src/com/android/phone2/GsmUmtsCallOptions.java +++ b/phone/src/com/android/phone2/GsmUmtsCallOptions.java @@ -23,7 +23,7 @@ import android.preference.PreferenceActivity; import android.preference.PreferenceScreen; import com.android.internal.telephony.Phone; -import com.android.internal.telephony.SipPhoneFactory; +import com.android.internal.telephony.sip.SipPhoneFactory; public class GsmUmtsCallOptions extends PreferenceActivity { private static final String LOG_TAG = "GsmUmtsCallOptions"; diff --git a/phone/src/com/android/phone2/GsmUmtsOptions.java b/phone/src/com/android/phone2/GsmUmtsOptions.java index 525f01e..331b293 100644 --- a/phone/src/com/android/phone2/GsmUmtsOptions.java +++ b/phone/src/com/android/phone2/GsmUmtsOptions.java @@ -23,7 +23,7 @@ import android.preference.PreferenceActivity; import android.preference.PreferenceScreen; import com.android.internal.telephony.Phone; -import com.android.internal.telephony.SipPhoneFactory; +import com.android.internal.telephony.sip.SipPhoneFactory; /** * List of Network-specific settings screens. diff --git a/phone/src/com/android/phone2/IccNetworkDepersonalizationPanel.java b/phone/src/com/android/phone2/IccNetworkDepersonalizationPanel.java index 2f6cbae..216dc62 100644 --- a/phone/src/com/android/phone2/IccNetworkDepersonalizationPanel.java +++ b/phone/src/com/android/phone2/IccNetworkDepersonalizationPanel.java @@ -35,7 +35,7 @@ import android.widget.LinearLayout; import android.widget.TextView; import com.android.internal.telephony.Phone; -import com.android.internal.telephony.SipPhoneFactory; +import com.android.internal.telephony.sip.SipPhoneFactory; /** * "SIM network unlock" PIN entry screen. diff --git a/phone/src/com/android/phone2/NetworkQueryService.java b/phone/src/com/android/phone2/NetworkQueryService.java index 2a44786..98f2730 100644 --- a/phone/src/com/android/phone2/NetworkQueryService.java +++ b/phone/src/com/android/phone2/NetworkQueryService.java @@ -27,7 +27,7 @@ import android.os.Message; import android.os.RemoteCallbackList; import android.os.RemoteException; import com.android.internal.telephony.Phone; -import com.android.internal.telephony.SipPhoneFactory; +import com.android.internal.telephony.sip.SipPhoneFactory; import android.util.Log; import java.util.ArrayList; diff --git a/phone/src/com/android/phone2/PhoneApp.java b/phone/src/com/android/phone2/PhoneApp.java index fef2f2b..d053105 100755 --- a/phone/src/com/android/phone2/PhoneApp.java +++ b/phone/src/com/android/phone2/PhoneApp.java @@ -55,9 +55,9 @@ import com.android.internal.telephony.Call; import com.android.internal.telephony.IccCard; import com.android.internal.telephony.MmiCode; import com.android.internal.telephony.Phone; -import com.android.internal.telephony.SipPhoneFactory; import com.android.internal.telephony.TelephonyIntents; import com.android.internal.telephony.cdma.EriInfo; +import com.android.internal.telephony.sip.SipPhoneFactory; import com.android.phone2.OtaUtils.CdmaOtaScreenState; import com.android.internal.telephony.cdma.TtyIntent; @@ -399,7 +399,7 @@ public class PhoneApp extends Application implements AccelerometerListener.Orien NotificationMgr.init(this); - phoneMgr = new PhoneInterfaceManager(this, phone); + //phoneMgr = new PhoneInterfaceManager(this, phone); int phoneType = phone.getPhoneType(); diff --git a/phone/src/com/android/phone2/Settings.java b/phone/src/com/android/phone2/Settings.java index 301ffc7..78c64c1 100644 --- a/phone/src/com/android/phone2/Settings.java +++ b/phone/src/com/android/phone2/Settings.java @@ -35,7 +35,7 @@ import android.preference.PreferenceScreen; import android.util.Log; import com.android.internal.telephony.Phone; -import com.android.internal.telephony.SipPhoneFactory; +import com.android.internal.telephony.sip.SipPhoneFactory; import com.android.internal.telephony.TelephonyIntents; import com.android.internal.telephony.TelephonyProperties; diff --git a/phone/src/com/android/phone2/SpecialCharSequenceMgr.java b/phone/src/com/android/phone2/SpecialCharSequenceMgr.java index f81fe4b..c86566c 100644 --- a/phone/src/com/android/phone2/SpecialCharSequenceMgr.java +++ b/phone/src/com/android/phone2/SpecialCharSequenceMgr.java @@ -22,7 +22,7 @@ import android.content.Context; import android.content.Intent; import android.net.Uri; import android.provider.Telephony.Intents; -import com.android.internal.telephony.SipPhoneFactory; +import com.android.internal.telephony.sip.SipPhoneFactory; import com.android.internal.telephony.Phone; import android.telephony.PhoneNumberUtils; import android.util.Log; diff --git a/phone/src/com/android/phone2/Use2GOnlyCheckBoxPreference.java b/phone/src/com/android/phone2/Use2GOnlyCheckBoxPreference.java index e87fa7f..62307f1 100644 --- a/phone/src/com/android/phone2/Use2GOnlyCheckBoxPreference.java +++ b/phone/src/com/android/phone2/Use2GOnlyCheckBoxPreference.java @@ -25,7 +25,7 @@ import android.util.AttributeSet; import android.util.Log; import com.android.internal.telephony.Phone; -import com.android.internal.telephony.SipPhoneFactory; +import com.android.internal.telephony.sip.SipPhoneFactory; public class Use2GOnlyCheckBoxPreference extends CheckBoxPreference { private static final String LOG_TAG = "Use2GOnlyCheckBoxPreference"; diff --git a/phone/src2/com/android/internal/telephony/SipPhoneFactory.java b/phone/src2/com/android/internal/telephony/SipPhoneFactory.java deleted file mode 100644 index 6378922..0000000 --- a/phone/src2/com/android/internal/telephony/SipPhoneFactory.java +++ /dev/null @@ -1,37 +0,0 @@ -/* - * Copyright (C) 2006 The Android Open Source Project - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package com.android.internal.telephony; - -import android.content.Context; -import android.util.Log; - -/** - * {@hide} - */ -public class SipPhoneFactory { - public static void makeDefaultPhones(Context context) { - makeDefaultPhone(context); - } - - public static void makeDefaultPhone(Context context) { - SipPhoneProxy.makePhoneProxy(context); - } - - public static Phone getDefaultPhone() { - return SipPhoneProxy.getPhoneProxy(); - } -} diff --git a/phone/src2/com/android/internal/telephony/SipPhoneNotifier.java b/phone/src2/com/android/internal/telephony/SipPhoneNotifier.java index 28f7618..81e151e 100644 --- a/phone/src2/com/android/internal/telephony/SipPhoneNotifier.java +++ b/phone/src2/com/android/internal/telephony/SipPhoneNotifier.java @@ -1,5 +1,5 @@ /* - * Copyright (C) 2006 The Android Open Source Project + * Copyright (C) 2010 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -25,7 +25,10 @@ import android.util.Log; import com.android.internal.telephony.ITelephonyRegistry; /** - * broadcast intents + * Temporary. Will be removed after integrating with CallManager. + * 100% copy from DefaultPhoneNotifier. Cannot access its package level + * constructor; thus the copy. + * @hide */ public class SipPhoneNotifier implements PhoneNotifier { @@ -33,8 +36,7 @@ public class SipPhoneNotifier implements PhoneNotifier { private static final boolean DBG = true; private ITelephonyRegistry mRegistry; - /*package*/ - SipPhoneNotifier() { + public SipPhoneNotifier() { mRegistry = ITelephonyRegistry.Stub.asInterface(ServiceManager.getService( "telephony.registry")); } diff --git a/phone/src2/com/android/internal/telephony/sip/SipPhone.java b/phone/src2/com/android/internal/telephony/sip/SipPhone.java index 2c440b3..554eb91 100755 --- a/phone/src2/com/android/internal/telephony/sip/SipPhone.java +++ b/phone/src2/com/android/internal/telephony/sip/SipPhone.java @@ -95,8 +95,7 @@ public class SipPhone extends SipPhoneBase { private SipManager mSipManager; private SipProfile mProfile; - public SipPhone (Context context, PhoneNotifier notifier, - SipProfile profile) { + SipPhone (Context context, PhoneNotifier notifier, SipProfile profile) { super(context, notifier); Log.v(LOG_TAG, " +++++++++++++++++++++ new SipPhone: " + profile.getUriString()); diff --git a/phone/src2/com/android/internal/telephony/sip/SipPhoneFactory.java b/phone/src2/com/android/internal/telephony/sip/SipPhoneFactory.java new file mode 100644 index 0000000..45838ed --- /dev/null +++ b/phone/src2/com/android/internal/telephony/sip/SipPhoneFactory.java @@ -0,0 +1,66 @@ +/* + * Copyright (C) 2010 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.android.internal.telephony.sip; + +import com.android.internal.telephony.Phone; +import com.android.internal.telephony.PhoneNotifier; + +import android.content.Context; +import android.net.sip.SipProfile; +import android.util.Log; + +import java.text.ParseException; + +/** + * @hide + */ +public class SipPhoneFactory { + private static PhoneNotifier sPhoneNotifier = makeDefaultPhoneNotifier(); + private static Context sContext; + + public static void makeDefaultPhones(Context context) { + makeDefaultPhone(context); + } + + public static void makeDefaultPhone(Context context) { + sContext = context; + SipPhoneProxy.getInstance().setPhone(makePhone("sip:fake@fake.domain")); + } + + public static Phone getDefaultPhone() { + return SipPhoneProxy.getInstance(); + } + + public static SipPhone makePhone(String sipProfileUri) { + try { + SipProfile profile = new SipProfile.Builder(sipProfileUri).build(); + return new SipPhone(sContext, sPhoneNotifier, profile); + } catch (ParseException e) { + Log.v("SipPhoneProxy", "setPhone", e); + return null; + } + } + + private static PhoneNotifier makeDefaultPhoneNotifier() { + try { + return new com.android.internal.telephony.SipPhoneNotifier(); + } catch (Error e) { + Log.e("SipPhoneProxy", "makeDefaultPhoneNotifier", e); + throw e; + } + } +} diff --git a/phone/src2/com/android/internal/telephony/SipPhoneProxy.java b/phone/src2/com/android/internal/telephony/sip/SipPhoneProxy.java index a62deb2..d943751 100644 --- a/phone/src2/com/android/internal/telephony/SipPhoneProxy.java +++ b/phone/src2/com/android/internal/telephony/sip/SipPhoneProxy.java @@ -1,5 +1,5 @@ /* - * Copyright (C) 2008 The Android Open Source Project + * Copyright (C) 2010 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -14,89 +14,46 @@ * limitations under the License. */ -package com.android.internal.telephony; +package com.android.internal.telephony.sip; +import com.android.internal.telephony.*; +import com.android.internal.telephony.gsm.NetworkInfo; +import com.android.internal.telephony.test.SimulatedRadioControl; -import android.app.ActivityManagerNative; import android.content.Context; -import android.content.Intent; -import android.content.SharedPreferences; -import android.net.sip.SipProfile; import android.os.Handler; import android.os.Message; -import android.os.SystemProperties; -import android.preference.PreferenceManager; import android.telephony.CellLocation; -import android.telephony.PhoneStateListener; import android.telephony.ServiceState; import android.telephony.SignalStrength; import android.util.Log; -import com.android.internal.telephony.sip.SipPhone; -import com.android.internal.telephony.gsm.NetworkInfo; -import com.android.internal.telephony.test.SimulatedRadioControl; - -import java.text.ParseException; import java.util.List; +/** + * Temporary. Will be removed after integrating with CallManager. + * @hide + */ public class SipPhoneProxy implements Phone { - private static SipPhoneProxy sPhoneProxy = new SipPhoneProxy(); - private static PhoneNotifier sPhoneNotifier = makeDefaultPhoneNotifier(); - private static Context sContext; + private static final String LOG_TAG = "PHONE"; - public static void makePhoneProxy(Context context) { - sContext = context; - setPhone("sip:fake@fake.domain"); - } + private static SipPhoneProxy sPhoneProxy = new SipPhoneProxy(); - public static SipPhoneProxy getPhoneProxy() { + public static SipPhoneProxy getInstance() { return sPhoneProxy; } - public static void setPhone(String sipProfileUri) { - try { - SipProfile profile = new SipProfile.Builder(sipProfileUri).build(); - sPhoneProxy.mActivePhone = - new SipPhone(sContext, sPhoneNotifier, profile); - Log.v("SipPhoneProxy", "setPhone: " + sPhoneProxy + " proxes " + sPhoneProxy.mActivePhone); - } catch (ParseException e) { - Log.v("SipPhoneProxy", "setPhone", e); - } - } - - private static PhoneNotifier makeDefaultPhoneNotifier() { - try { - return new SipPhoneNotifier(); - } catch (Error e) { - Log.e("SipPhoneProxy", "makeDefaultPhoneNotifier", e); - throw e; - } - } - private SipPhone mActivePhone; - private static final String LOG_TAG = "PHONE"; - private SipPhoneProxy() { } - private void logv(String msg) { - Log.v(LOG_TAG, "[PhoneProxy] " + msg); - } - - private void logd(String msg) { - Log.d(LOG_TAG, "[PhoneProxy] " + msg); + public void setPhone(SipPhone phone) { + if (phone == null) return; + mActivePhone = phone; + Log.v("SipPhoneProxy", "setPhone: " + this + " proxes " + phone); } - private void logw(String msg) { - Log.w(LOG_TAG, "[PhoneProxy] " + msg); - } - - private void loge(String msg) { - Log.e(LOG_TAG, "[PhoneProxy] " + msg); - } - - public ServiceState getServiceState() { return mActivePhone.getServiceState(); } diff --git a/phone/src2/com/android/phone2/SipBroadcastReceiver.java b/phone/src2/com/android/phone2/SipBroadcastReceiver.java index 34ccae8..eee8b9a 100644 --- a/phone/src2/com/android/phone2/SipBroadcastReceiver.java +++ b/phone/src2/com/android/phone2/SipBroadcastReceiver.java @@ -16,6 +16,10 @@ package com.android.phone2; +import com.android.internal.telephony.sip.SipPhoneFactory; +import com.android.internal.telephony.sip.SipPhoneProxy; +import com.android.internal.telephony.sip.SipPhone; + import android.content.BroadcastReceiver; import android.content.Context; import android.content.Intent; @@ -43,8 +47,11 @@ public class SipBroadcastReceiver extends BroadcastReceiver { } else if (action.equals(SipManager.SIP_ADD_PHONE_ACTION)) { String localSipUri = intent.getStringExtra(SipManager.LOCAL_URI_KEY); Log.v(TAG, "new profile: " + localSipUri); - // TODO: should call CallManager.addPhone() - com.android.internal.telephony.SipPhoneProxy.setPhone(localSipUri); + SipPhone phone = SipPhoneFactory.makePhone(localSipUri); + if (phone != null) { + // TODO: should call CallManager.getInstance().addPhone() + SipPhoneProxy.getInstance().setPhone(phone); + } } else { Log.v(TAG, "action not processed: " + action); return; |
