1943eb670c86242755f5af7460d46578243e0401eTim Murray/*
2943eb670c86242755f5af7460d46578243e0401eTim Murray * Copyright (C) 2014 The Android Open Source Project
3943eb670c86242755f5af7460d46578243e0401eTim Murray *
4943eb670c86242755f5af7460d46578243e0401eTim Murray * Licensed under the Apache License, Version 2.0 (the "License");
5943eb670c86242755f5af7460d46578243e0401eTim Murray * you may not use this file except in compliance with the License.
6943eb670c86242755f5af7460d46578243e0401eTim Murray * You may obtain a copy of the License at
79eb7f4b90120ebe4be74343856e86b46495f72dfTim Murray *
8943eb670c86242755f5af7460d46578243e0401eTim Murray *      http://www.apache.org/licenses/LICENSE-2.0
9943eb670c86242755f5af7460d46578243e0401eTim Murray *
10943eb670c86242755f5af7460d46578243e0401eTim Murray * Unless required by applicable law or agreed to in writing, software
11943eb670c86242755f5af7460d46578243e0401eTim Murray * distributed under the License is distributed on an "AS IS" BASIS,
12943eb670c86242755f5af7460d46578243e0401eTim Murray * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1397960af1f651349fba21fc67be644e49711a4263Tim Murray * See the License for the specific language governing permissions and
144d252d6e807b89764dad123ac845df298c52ca97Tim Murray * limitations under the License.
15943eb670c86242755f5af7460d46578243e0401eTim Murray */
16943eb670c86242755f5af7460d46578243e0401eTim Murray
17943eb670c86242755f5af7460d46578243e0401eTim Murraypackage com.android.server.pm;
18943eb670c86242755f5af7460d46578243e0401eTim Murray
19943eb670c86242755f5af7460d46578243e0401eTim Murrayimport android.content.pm.PackageParser.PackageParserException;
20943eb670c86242755f5af7460d46578243e0401eTim Murray
21943eb670c86242755f5af7460d46578243e0401eTim Murray/** {@hide} */
22943eb670c86242755f5af7460d46578243e0401eTim Murraypublic class PackageManagerException extends Exception {
23943eb670c86242755f5af7460d46578243e0401eTim Murray    public final int error;
24943eb670c86242755f5af7460d46578243e0401eTim Murray
25943eb670c86242755f5af7460d46578243e0401eTim Murray    public PackageManagerException(int error, String detailMessage) {
26943eb670c86242755f5af7460d46578243e0401eTim Murray        super(detailMessage);
27943eb670c86242755f5af7460d46578243e0401eTim Murray        this.error = error;
28943eb670c86242755f5af7460d46578243e0401eTim Murray    }
29943eb670c86242755f5af7460d46578243e0401eTim Murray
30943eb670c86242755f5af7460d46578243e0401eTim Murray    public PackageManagerException(int error, String detailMessage, Throwable throwable) {
31943eb670c86242755f5af7460d46578243e0401eTim Murray        super(detailMessage, throwable);
32943eb670c86242755f5af7460d46578243e0401eTim Murray        this.error = error;
33943eb670c86242755f5af7460d46578243e0401eTim Murray    }
3497960af1f651349fba21fc67be644e49711a4263Tim Murray
3597960af1f651349fba21fc67be644e49711a4263Tim Murray    public static PackageManagerException from(PackageParserException e)
3697960af1f651349fba21fc67be644e49711a4263Tim Murray            throws PackageManagerException {
3797960af1f651349fba21fc67be644e49711a4263Tim Murray        throw new PackageManagerException(e.error, e.getMessage(), e.getCause());
3897960af1f651349fba21fc67be644e49711a4263Tim Murray    }
3997960af1f651349fba21fc67be644e49711a4263Tim Murray}
404d252d6e807b89764dad123ac845df298c52ca97Tim Murray