This refactoring sets the stage for a follow-on change that will make use additional functions of the power HAL. Moved functionality from android.os.Power into PowerManagerService. None of these functions make sense being called outside of the system server. Moving them to the PowerManagerService makes it easier to ensure that the power HAL is initialized exactly once. Similarly, moved ShutdownThread out of the policy package and into the services package where it can tie into the PowerManagerService as needed. Bug: 6435382 Change-Id: I958241bb124fb4410d96f5d5eb00ed68d60b29e5
55 lines
1.7 KiB
Java
55 lines
1.7 KiB
Java
/*
|
|
* Copyright (C) 2009 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.server;
|
|
|
|
import android.app.Activity;
|
|
import android.content.BroadcastReceiver;
|
|
import android.content.Intent;
|
|
import android.os.Bundle;
|
|
import android.os.Handler;
|
|
import android.util.Slog;
|
|
|
|
import com.android.server.pm.ShutdownThread;
|
|
|
|
public class ShutdownActivity extends Activity {
|
|
|
|
private static final String TAG = "ShutdownActivity";
|
|
private boolean mReboot;
|
|
private boolean mConfirm;
|
|
|
|
@Override
|
|
protected void onCreate(Bundle savedInstanceState) {
|
|
super.onCreate(savedInstanceState);
|
|
|
|
Intent intent = getIntent();
|
|
mReboot = Intent.ACTION_REBOOT.equals(intent.getAction());
|
|
mConfirm = intent.getBooleanExtra(Intent.EXTRA_KEY_CONFIRM, false);
|
|
Slog.i(TAG, "onCreate(): confirm=" + mConfirm);
|
|
|
|
Handler h = new Handler();
|
|
h.post(new Runnable() {
|
|
public void run() {
|
|
if (mReboot) {
|
|
ShutdownThread.reboot(ShutdownActivity.this, null, mConfirm);
|
|
} else {
|
|
ShutdownThread.shutdown(ShutdownActivity.this, mConfirm);
|
|
}
|
|
}
|
|
});
|
|
}
|
|
}
|