ManagedProvisioningErrorDialog.java revision b3762e394c984b5376d4eb109d5de5528b47df10
1e9965bbb03204d1863767f7e6c81d08208477358Alexandra Gherghina/*
2e9965bbb03204d1863767f7e6c81d08208477358Alexandra Gherghina * Copyright 2014, The Android Open Source Project
3e9965bbb03204d1863767f7e6c81d08208477358Alexandra Gherghina *
4e9965bbb03204d1863767f7e6c81d08208477358Alexandra Gherghina * Licensed under the Apache License, Version 2.0 (the "License");
5e9965bbb03204d1863767f7e6c81d08208477358Alexandra Gherghina * you may not use this file except in compliance with the License.
6e9965bbb03204d1863767f7e6c81d08208477358Alexandra Gherghina * You may obtain a copy of the License at
7e9965bbb03204d1863767f7e6c81d08208477358Alexandra Gherghina *
8e9965bbb03204d1863767f7e6c81d08208477358Alexandra Gherghina *      http://www.apache.org/licenses/LICENSE-2.0
9e9965bbb03204d1863767f7e6c81d08208477358Alexandra Gherghina *
10e9965bbb03204d1863767f7e6c81d08208477358Alexandra Gherghina * Unless required by applicable law or agreed to in writing, software
11e9965bbb03204d1863767f7e6c81d08208477358Alexandra Gherghina * distributed under the License is distributed on an "AS IS" BASIS,
12e9965bbb03204d1863767f7e6c81d08208477358Alexandra Gherghina * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13e9965bbb03204d1863767f7e6c81d08208477358Alexandra Gherghina * See the License for the specific language governing permissions and
14e9965bbb03204d1863767f7e6c81d08208477358Alexandra Gherghina * limitations under the License.
15e9965bbb03204d1863767f7e6c81d08208477358Alexandra Gherghina */
16e9965bbb03204d1863767f7e6c81d08208477358Alexandra Gherghina
17e9965bbb03204d1863767f7e6c81d08208477358Alexandra Gherghinapackage com.android.managedprovisioning;
18e9965bbb03204d1863767f7e6c81d08208477358Alexandra Gherghina
19e9965bbb03204d1863767f7e6c81d08208477358Alexandra Gherghinaimport android.app.AlertDialog;
20e9965bbb03204d1863767f7e6c81d08208477358Alexandra Gherghinaimport android.app.Dialog;
21e9965bbb03204d1863767f7e6c81d08208477358Alexandra Gherghinaimport android.app.DialogFragment;
22e9965bbb03204d1863767f7e6c81d08208477358Alexandra Gherghinaimport android.content.DialogInterface;
23e9965bbb03204d1863767f7e6c81d08208477358Alexandra Gherghinaimport android.os.Bundle;
24e9965bbb03204d1863767f7e6c81d08208477358Alexandra Gherghina
25e9965bbb03204d1863767f7e6c81d08208477358Alexandra Gherghina/**
26e9965bbb03204d1863767f7e6c81d08208477358Alexandra Gherghina * Dialog used to notify the user that the managed provisioning failed, and shutdown the current
27e9965bbb03204d1863767f7e6c81d08208477358Alexandra Gherghina * activity.
28e9965bbb03204d1863767f7e6c81d08208477358Alexandra Gherghina *
29e9965bbb03204d1863767f7e6c81d08208477358Alexandra Gherghina * Note: You should not do any more work in your app after showing this dialog. See guidelines for
30e9965bbb03204d1863767f7e6c81d08208477358Alexandra Gherghina * {@code Activity#finish()} method call.
31e9965bbb03204d1863767f7e6c81d08208477358Alexandra Gherghina */
32e9965bbb03204d1863767f7e6c81d08208477358Alexandra Gherghinapublic class ManagedProvisioningErrorDialog extends DialogFragment {
33e9965bbb03204d1863767f7e6c81d08208477358Alexandra Gherghina
34b3762e394c984b5376d4eb109d5de5528b47df10Alexandra Gherghina  private final String message;
35b3762e394c984b5376d4eb109d5de5528b47df10Alexandra Gherghina
36b3762e394c984b5376d4eb109d5de5528b47df10Alexandra Gherghina  public ManagedProvisioningErrorDialog(String message) {
37b3762e394c984b5376d4eb109d5de5528b47df10Alexandra Gherghina      super();
38b3762e394c984b5376d4eb109d5de5528b47df10Alexandra Gherghina      this.message = message;
39e9965bbb03204d1863767f7e6c81d08208477358Alexandra Gherghina  }
40e9965bbb03204d1863767f7e6c81d08208477358Alexandra Gherghina
41e9965bbb03204d1863767f7e6c81d08208477358Alexandra Gherghina  @Override
42e9965bbb03204d1863767f7e6c81d08208477358Alexandra Gherghina  public Dialog onCreateDialog(Bundle savedInstanceState) {
43e9965bbb03204d1863767f7e6c81d08208477358Alexandra Gherghina      // TODO: This disappears when you rotate, fix it when we refactor the app
44e9965bbb03204d1863767f7e6c81d08208477358Alexandra Gherghina
45e9965bbb03204d1863767f7e6c81d08208477358Alexandra Gherghina      AlertDialog.Builder alertDialogBuilder = new AlertDialog.Builder(getActivity());
46e9965bbb03204d1863767f7e6c81d08208477358Alexandra Gherghina      // TODO: Get strings from PM.
47e9965bbb03204d1863767f7e6c81d08208477358Alexandra Gherghina      alertDialogBuilder.setTitle(R.string.managed_provisioning_error_title)
48b3762e394c984b5376d4eb109d5de5528b47df10Alexandra Gherghina              .setMessage(message)
49e9965bbb03204d1863767f7e6c81d08208477358Alexandra Gherghina              .setCancelable(false)
50e9965bbb03204d1863767f7e6c81d08208477358Alexandra Gherghina              .setPositiveButton("OK", new DialogInterface.OnClickListener() {
51e9965bbb03204d1863767f7e6c81d08208477358Alexandra Gherghina                        public void onClick(DialogInterface dialog,int id) {
52e9965bbb03204d1863767f7e6c81d08208477358Alexandra Gherghina                            // Close activity
53e9965bbb03204d1863767f7e6c81d08208477358Alexandra Gherghina                            getActivity().finish();
54e9965bbb03204d1863767f7e6c81d08208477358Alexandra Gherghina                      }});
55e9965bbb03204d1863767f7e6c81d08208477358Alexandra Gherghina      return alertDialogBuilder.create();
56e9965bbb03204d1863767f7e6c81d08208477358Alexandra Gherghina  }
57e9965bbb03204d1863767f7e6c81d08208477358Alexandra Gherghina}
58