1645501c2ab19a559ce82a1d5a29ced159a4c30fbLuis Hector Chavez// Copyright 2014 The Chromium Authors. All rights reserved.
2645501c2ab19a559ce82a1d5a29ced159a4c30fbLuis Hector Chavez// Use of this source code is governed by a BSD-style license that can be
3645501c2ab19a559ce82a1d5a29ced159a4c30fbLuis Hector Chavez// found in the LICENSE file.
4645501c2ab19a559ce82a1d5a29ced159a4c30fbLuis Hector Chavez
5645501c2ab19a559ce82a1d5a29ced159a4c30fbLuis Hector Chavezpackage org.chromium.mojo.system;
6645501c2ab19a559ce82a1d5a29ced159a4c30fbLuis Hector Chavez
7645501c2ab19a559ce82a1d5a29ced159a4c30fbLuis Hector Chavez/**
8645501c2ab19a559ce82a1d5a29ced159a4c30fbLuis Hector Chavez * The different mojo result codes.
9645501c2ab19a559ce82a1d5a29ced159a4c30fbLuis Hector Chavez */
10645501c2ab19a559ce82a1d5a29ced159a4c30fbLuis Hector Chavezpublic final class MojoResult {
11645501c2ab19a559ce82a1d5a29ced159a4c30fbLuis Hector Chavez    public static final int OK = 0;
12645501c2ab19a559ce82a1d5a29ced159a4c30fbLuis Hector Chavez    public static final int CANCELLED = 1;
13645501c2ab19a559ce82a1d5a29ced159a4c30fbLuis Hector Chavez    public static final int UNKNOWN = 2;
14645501c2ab19a559ce82a1d5a29ced159a4c30fbLuis Hector Chavez    public static final int INVALID_ARGUMENT = 3;
15645501c2ab19a559ce82a1d5a29ced159a4c30fbLuis Hector Chavez    public static final int DEADLINE_EXCEEDED = 4;
16645501c2ab19a559ce82a1d5a29ced159a4c30fbLuis Hector Chavez    public static final int NOT_FOUND = 5;
17645501c2ab19a559ce82a1d5a29ced159a4c30fbLuis Hector Chavez    public static final int ALREADY_EXISTS = 6;
18645501c2ab19a559ce82a1d5a29ced159a4c30fbLuis Hector Chavez    public static final int PERMISSION_DENIED = 7;
19645501c2ab19a559ce82a1d5a29ced159a4c30fbLuis Hector Chavez    public static final int RESOURCE_EXHAUSTED = 8;
20645501c2ab19a559ce82a1d5a29ced159a4c30fbLuis Hector Chavez    public static final int FAILED_PRECONDITION = 9;
21645501c2ab19a559ce82a1d5a29ced159a4c30fbLuis Hector Chavez    public static final int ABORTED = 10;
22645501c2ab19a559ce82a1d5a29ced159a4c30fbLuis Hector Chavez    public static final int OUT_OF_RANGE = 11;
23645501c2ab19a559ce82a1d5a29ced159a4c30fbLuis Hector Chavez    public static final int UNIMPLEMENTED = 12;
24645501c2ab19a559ce82a1d5a29ced159a4c30fbLuis Hector Chavez    public static final int INTERNAL = 13;
25645501c2ab19a559ce82a1d5a29ced159a4c30fbLuis Hector Chavez    public static final int UNAVAILABLE = 14;
26645501c2ab19a559ce82a1d5a29ced159a4c30fbLuis Hector Chavez    public static final int DATA_LOSS = 15;
27645501c2ab19a559ce82a1d5a29ced159a4c30fbLuis Hector Chavez    public static final int BUSY = 16;
28645501c2ab19a559ce82a1d5a29ced159a4c30fbLuis Hector Chavez    public static final int SHOULD_WAIT = 17;
29645501c2ab19a559ce82a1d5a29ced159a4c30fbLuis Hector Chavez
30645501c2ab19a559ce82a1d5a29ced159a4c30fbLuis Hector Chavez    /**
31645501c2ab19a559ce82a1d5a29ced159a4c30fbLuis Hector Chavez     * never instantiate.
32645501c2ab19a559ce82a1d5a29ced159a4c30fbLuis Hector Chavez     */
33645501c2ab19a559ce82a1d5a29ced159a4c30fbLuis Hector Chavez    private MojoResult() {
34645501c2ab19a559ce82a1d5a29ced159a4c30fbLuis Hector Chavez    }
35645501c2ab19a559ce82a1d5a29ced159a4c30fbLuis Hector Chavez
36645501c2ab19a559ce82a1d5a29ced159a4c30fbLuis Hector Chavez    /**
37645501c2ab19a559ce82a1d5a29ced159a4c30fbLuis Hector Chavez     * Describes the given result code.
38645501c2ab19a559ce82a1d5a29ced159a4c30fbLuis Hector Chavez     */
39645501c2ab19a559ce82a1d5a29ced159a4c30fbLuis Hector Chavez    public static String describe(int mCode) {
40645501c2ab19a559ce82a1d5a29ced159a4c30fbLuis Hector Chavez        switch (mCode) {
41645501c2ab19a559ce82a1d5a29ced159a4c30fbLuis Hector Chavez            case OK:
42645501c2ab19a559ce82a1d5a29ced159a4c30fbLuis Hector Chavez                return "OK";
43645501c2ab19a559ce82a1d5a29ced159a4c30fbLuis Hector Chavez            case CANCELLED:
44645501c2ab19a559ce82a1d5a29ced159a4c30fbLuis Hector Chavez                return "CANCELLED";
45645501c2ab19a559ce82a1d5a29ced159a4c30fbLuis Hector Chavez            case UNKNOWN:
46645501c2ab19a559ce82a1d5a29ced159a4c30fbLuis Hector Chavez                return "UNKNOWN";
47645501c2ab19a559ce82a1d5a29ced159a4c30fbLuis Hector Chavez            case INVALID_ARGUMENT:
48645501c2ab19a559ce82a1d5a29ced159a4c30fbLuis Hector Chavez                return "INVALID_ARGUMENT";
49645501c2ab19a559ce82a1d5a29ced159a4c30fbLuis Hector Chavez            case DEADLINE_EXCEEDED:
50645501c2ab19a559ce82a1d5a29ced159a4c30fbLuis Hector Chavez                return "DEADLINE_EXCEEDED";
51645501c2ab19a559ce82a1d5a29ced159a4c30fbLuis Hector Chavez            case NOT_FOUND:
52645501c2ab19a559ce82a1d5a29ced159a4c30fbLuis Hector Chavez                return "NOT_FOUND";
53645501c2ab19a559ce82a1d5a29ced159a4c30fbLuis Hector Chavez            case ALREADY_EXISTS:
54645501c2ab19a559ce82a1d5a29ced159a4c30fbLuis Hector Chavez                return "ALREADY_EXISTS";
55645501c2ab19a559ce82a1d5a29ced159a4c30fbLuis Hector Chavez            case PERMISSION_DENIED:
56645501c2ab19a559ce82a1d5a29ced159a4c30fbLuis Hector Chavez                return "PERMISSION_DENIED";
57645501c2ab19a559ce82a1d5a29ced159a4c30fbLuis Hector Chavez            case RESOURCE_EXHAUSTED:
58645501c2ab19a559ce82a1d5a29ced159a4c30fbLuis Hector Chavez                return "RESOURCE_EXHAUSTED";
59645501c2ab19a559ce82a1d5a29ced159a4c30fbLuis Hector Chavez            case FAILED_PRECONDITION:
60645501c2ab19a559ce82a1d5a29ced159a4c30fbLuis Hector Chavez                return "FAILED_PRECONDITION";
61645501c2ab19a559ce82a1d5a29ced159a4c30fbLuis Hector Chavez            case ABORTED:
62645501c2ab19a559ce82a1d5a29ced159a4c30fbLuis Hector Chavez                return "ABORTED";
63645501c2ab19a559ce82a1d5a29ced159a4c30fbLuis Hector Chavez            case OUT_OF_RANGE:
64645501c2ab19a559ce82a1d5a29ced159a4c30fbLuis Hector Chavez                return "OUT_OF_RANGE";
65645501c2ab19a559ce82a1d5a29ced159a4c30fbLuis Hector Chavez            case UNIMPLEMENTED:
66645501c2ab19a559ce82a1d5a29ced159a4c30fbLuis Hector Chavez                return "UNIMPLEMENTED";
67645501c2ab19a559ce82a1d5a29ced159a4c30fbLuis Hector Chavez            case INTERNAL:
68645501c2ab19a559ce82a1d5a29ced159a4c30fbLuis Hector Chavez                return "INTERNAL";
69645501c2ab19a559ce82a1d5a29ced159a4c30fbLuis Hector Chavez            case UNAVAILABLE:
70645501c2ab19a559ce82a1d5a29ced159a4c30fbLuis Hector Chavez                return "UNAVAILABLE";
71645501c2ab19a559ce82a1d5a29ced159a4c30fbLuis Hector Chavez            case DATA_LOSS:
72645501c2ab19a559ce82a1d5a29ced159a4c30fbLuis Hector Chavez                return "DATA_LOSS";
73645501c2ab19a559ce82a1d5a29ced159a4c30fbLuis Hector Chavez            case BUSY:
74645501c2ab19a559ce82a1d5a29ced159a4c30fbLuis Hector Chavez                return "BUSY";
75645501c2ab19a559ce82a1d5a29ced159a4c30fbLuis Hector Chavez            case SHOULD_WAIT:
76645501c2ab19a559ce82a1d5a29ced159a4c30fbLuis Hector Chavez                return "SHOULD_WAIT";
77645501c2ab19a559ce82a1d5a29ced159a4c30fbLuis Hector Chavez            default:
78645501c2ab19a559ce82a1d5a29ced159a4c30fbLuis Hector Chavez                return "UNKNOWN";
79645501c2ab19a559ce82a1d5a29ced159a4c30fbLuis Hector Chavez        }
80645501c2ab19a559ce82a1d5a29ced159a4c30fbLuis Hector Chavez
81645501c2ab19a559ce82a1d5a29ced159a4c30fbLuis Hector Chavez    }
82645501c2ab19a559ce82a1d5a29ced159a4c30fbLuis Hector Chavez}
83