Chromium Code Reviews| Index: mojo/public/java/src/org/chromium/mojo/system/MojoResult.java |
| diff --git a/mojo/public/java/src/org/chromium/mojo/system/MojoResult.java b/mojo/public/java/src/org/chromium/mojo/system/MojoResult.java |
| new file mode 100644 |
| index 0000000000000000000000000000000000000000..9d1a8550c714aa233a0f0b27dcc15c78713fcd4c |
| --- /dev/null |
| +++ b/mojo/public/java/src/org/chromium/mojo/system/MojoResult.java |
| @@ -0,0 +1,66 @@ |
| +// Copyright 2014 The Chromium Authors. All rights reserved. |
| +// Use of this source code is governed by a BSD-style license that can be |
| +// found in the LICENSE file. |
| + |
| +package org.chromium.mojo.system; |
| + |
| +import java.util.HashMap; |
| +import java.util.Map; |
| + |
| +public enum MojoResult { |
|
bulach
2014/04/14 17:39:56
enums are a no-go in java.. :(
qsr
2014/04/15 08:37:37
Not sure to understand. We are still supporting ja
|
| + OK(0), |
| + CANCELLED(-1), |
| + UNKNOWN(-2), |
| + INVALID_ARGUMENT(-3), |
| + DEADLINE_EXCEEDED(-4), |
| + NOT_FOUND(-5), |
| + ALREADY_EXISTS(-6), |
| + PERMISSION_DENIED(-7), |
| + RESOURCE_EXHAUSTED(-8), |
| + FAILED_PRECONDITION(-9), |
| + ABORTED(-10), |
| + OUT_OF_RANGE(-11), |
| + UNIMPLEMENTED(-12), |
| + INTERNAL(-13), |
| + UNAVAILABLE(-14), |
| + DATA_LOSS(-15), |
| + BUSY(-16), |
| + SHOULD_WAIT(-17); |
| + |
| + private static final Map<Integer, MojoResult> sMojoResultByCode = |
| + new HashMap<Integer, MojoResult>(); |
| + |
| + static { |
| + for (MojoResult mr : MojoResult.values()) { |
| + MojoResult.sMojoResultByCode.put(mr.getCode(), mr); |
| + } |
| + } |
| + |
| + private int mCode; |
| + |
| + private MojoResult(int code) { |
| + mCode = code; |
| + } |
| + |
| + public int getCode() { |
| + return mCode; |
| + } |
| + |
| + /** |
| + * TODO(qsr): |
| + * |
| + * @param code |
| + * @return TODO(qsr) |
| + */ |
| + public static MojoResult forCode(int code) { |
| + // All positive codes are success. |
| + if (code >= 0) { |
| + return OK; |
| + } |
| + if (sMojoResultByCode.containsKey(code)) { |
| + return sMojoResultByCode.get(code); |
| + } |
| + // Handle new result as unknown. |
| + return UNKNOWN; |
| + } |
| +} |