diff options
Diffstat (limited to 'src/com/android/mms/transaction/MmsSystemPushMsgReceiver.java')
-rw-r--r-- | src/com/android/mms/transaction/MmsSystemPushMsgReceiver.java | 76 |
1 files changed, 76 insertions, 0 deletions
diff --git a/src/com/android/mms/transaction/MmsSystemPushMsgReceiver.java b/src/com/android/mms/transaction/MmsSystemPushMsgReceiver.java new file mode 100644 index 0000000..168b091 --- /dev/null +++ b/src/com/android/mms/transaction/MmsSystemPushMsgReceiver.java @@ -0,0 +1,76 @@ +/* + * Copyright (c) 2011, Code Aurora Forum. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * * Neither the name of Code Aurora nor + * the names of its contributors may be used to endorse or promote + * products derived from this software without specific prior written + * permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + * NON-INFRINGEMENT ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; + * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, + * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR + * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF + * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +package com.android.mms.transaction; + +import android.content.BroadcastReceiver; +import android.content.Context; +import android.content.Intent; +import android.content.IntentFilter; +import android.net.Uri; +import android.provider.Telephony.Mms; +import android.util.Log; + +import com.android.internal.telephony.Phone; +import com.android.internal.telephony.TelephonyIntents; +import com.android.mms.LogTag; +import com.google.android.mms.util.PduCache; + +/** + * MmsSystemPushMsgReceiver receives the + * {@link android.intent.action.MMS_PUSH}, + * and performs a series of operations which may include: + * <ul> + * <li>Push the MMS messages out of outbox.</li> + * </ul> + */ +public class MmsSystemPushMsgReceiver extends BroadcastReceiver { + private static final String TAG = "MmsSystemPushMsgReceiver"; + private static final String INTENT_MMS_PUSH = "android.intent.action.MMS_PUSH"; + + private static void wakeUpService(Context context) { + if (Log.isLoggable(LogTag.TRANSACTION, Log.VERBOSE)) { + Log.v(TAG, "wakeUpService: start transaction service ..."); + } + context.startService(new Intent(context, TransactionService.class)); + } + + @Override + public void onReceive(Context context, Intent intent) { + if (Log.isLoggable(LogTag.TRANSACTION, Log.VERBOSE)) { + Log.v(TAG, "Intent received: " + intent); + } + String action = intent.getAction(); + if (action.equalsIgnoreCase(INTENT_MMS_PUSH)) { + Log.d(TAG,"MMS Debug: Received MMS_PUSH intent calling wakeUpService"); + wakeUpService(context); + } + } +} + + |