102ffa5a99c8d4faf90cbb7639cf0cf41f9f7121dJake Hamby/*
202ffa5a99c8d4faf90cbb7639cf0cf41f9f7121dJake Hamby * Copyright (C) 2011 The Android Open Source Project
302ffa5a99c8d4faf90cbb7639cf0cf41f9f7121dJake Hamby *
402ffa5a99c8d4faf90cbb7639cf0cf41f9f7121dJake Hamby * Licensed under the Apache License, Version 2.0 (the "License");
502ffa5a99c8d4faf90cbb7639cf0cf41f9f7121dJake Hamby * you may not use this file except in compliance with the License.
602ffa5a99c8d4faf90cbb7639cf0cf41f9f7121dJake Hamby * You may obtain a copy of the License at
702ffa5a99c8d4faf90cbb7639cf0cf41f9f7121dJake Hamby *
802ffa5a99c8d4faf90cbb7639cf0cf41f9f7121dJake Hamby *      http://www.apache.org/licenses/LICENSE-2.0
902ffa5a99c8d4faf90cbb7639cf0cf41f9f7121dJake Hamby *
1002ffa5a99c8d4faf90cbb7639cf0cf41f9f7121dJake Hamby * Unless required by applicable law or agreed to in writing, software
1102ffa5a99c8d4faf90cbb7639cf0cf41f9f7121dJake Hamby * distributed under the License is distributed on an "AS IS" BASIS,
1202ffa5a99c8d4faf90cbb7639cf0cf41f9f7121dJake Hamby * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1302ffa5a99c8d4faf90cbb7639cf0cf41f9f7121dJake Hamby * See the License for the specific language governing permissions and
1402ffa5a99c8d4faf90cbb7639cf0cf41f9f7121dJake Hamby * limitations under the License.
1502ffa5a99c8d4faf90cbb7639cf0cf41f9f7121dJake Hamby */
1602ffa5a99c8d4faf90cbb7639cf0cf41f9f7121dJake Hamby
1702ffa5a99c8d4faf90cbb7639cf0cf41f9f7121dJake Hambypackage com.android.example.imsframework;
1802ffa5a99c8d4faf90cbb7639cf0cf41f9f7121dJake Hamby
1902ffa5a99c8d4faf90cbb7639cf0cf41f9f7121dJake Hambyimport android.content.BroadcastReceiver;
2002ffa5a99c8d4faf90cbb7639cf0cf41f9f7121dJake Hambyimport android.content.Context;
2102ffa5a99c8d4faf90cbb7639cf0cf41f9f7121dJake Hambyimport android.content.Intent;
2202ffa5a99c8d4faf90cbb7639cf0cf41f9f7121dJake Hambyimport android.util.Log;
2302ffa5a99c8d4faf90cbb7639cf0cf41f9f7121dJake Hamby
2402ffa5a99c8d4faf90cbb7639cf0cf41f9f7121dJake Hambypublic class ImsFrameworkReceiver extends BroadcastReceiver {
2502ffa5a99c8d4faf90cbb7639cf0cf41f9f7121dJake Hamby    private static final String TAG = "ImsFrameworkReceiver";
2602ffa5a99c8d4faf90cbb7639cf0cf41f9f7121dJake Hamby
2702ffa5a99c8d4faf90cbb7639cf0cf41f9f7121dJake Hamby    @Override
2802ffa5a99c8d4faf90cbb7639cf0cf41f9f7121dJake Hamby    public void onReceive(Context context, Intent intent) {
2902ffa5a99c8d4faf90cbb7639cf0cf41f9f7121dJake Hamby        String action = intent.getAction();
3002ffa5a99c8d4faf90cbb7639cf0cf41f9f7121dJake Hamby        if (Intent.ACTION_BOOT_COMPLETED.equals(action)) {
3102ffa5a99c8d4faf90cbb7639cf0cf41f9f7121dJake Hamby            Log.d(TAG, "starting service for ACTION_BOOT_COMPLETED");
3202ffa5a99c8d4faf90cbb7639cf0cf41f9f7121dJake Hamby            intent = new Intent(intent);
3302ffa5a99c8d4faf90cbb7639cf0cf41f9f7121dJake Hamby            intent.setClass(context, ImsFrameworkService.class);
3402ffa5a99c8d4faf90cbb7639cf0cf41f9f7121dJake Hamby            if (context.startService(intent) == null) {
3502ffa5a99c8d4faf90cbb7639cf0cf41f9f7121dJake Hamby                Log.e(TAG, "Can't start service");
3602ffa5a99c8d4faf90cbb7639cf0cf41f9f7121dJake Hamby            }
3702ffa5a99c8d4faf90cbb7639cf0cf41f9f7121dJake Hamby        } else if (Intent.ACTION_SHUTDOWN.equals(action)) {
3802ffa5a99c8d4faf90cbb7639cf0cf41f9f7121dJake Hamby            Log.d(TAG, "received ACTION_SHUTDOWN, shutting down IMS");
3902ffa5a99c8d4faf90cbb7639cf0cf41f9f7121dJake Hamby            // System is shutting down immediately: perform cleanup here
4002ffa5a99c8d4faf90cbb7639cf0cf41f9f7121dJake Hamby        } else {
4102ffa5a99c8d4faf90cbb7639cf0cf41f9f7121dJake Hamby            Log.e(TAG, "Received unknown intent: " + action);
4202ffa5a99c8d4faf90cbb7639cf0cf41f9f7121dJake Hamby        }
4302ffa5a99c8d4faf90cbb7639cf0cf41f9f7121dJake Hamby    }
4402ffa5a99c8d4faf90cbb7639cf0cf41f9f7121dJake Hamby}
45