]> git.proxmox.com Git - ceph.git/blob - ceph/src/rocksdb/java/src/main/java/org/rocksdb/Priority.java
import 14.2.4 nautilus point release
[ceph.git] / ceph / src / rocksdb / java / src / main / java / org / rocksdb / Priority.java
1 // Copyright (c) 2011-present, Facebook, Inc. All rights reserved.
2 // This source code is licensed under both the GPLv2 (found in the
3 // COPYING file in the root directory) and Apache 2.0 License
4 // (found in the LICENSE.Apache file in the root directory).
5
6 package org.rocksdb;
7
8 /**
9 * The Thread Pool priority.
10 */
11 public enum Priority {
12 BOTTOM((byte) 0x0),
13 LOW((byte) 0x1),
14 HIGH((byte)0x2),
15 TOTAL((byte)0x3);
16
17 private final byte value;
18
19 Priority(final byte value) {
20 this.value = value;
21 }
22
23 /**
24 * <p>Returns the byte value of the enumerations value.</p>
25 *
26 * @return byte representation
27 */
28 byte getValue() {
29 return value;
30 }
31
32 /**
33 * Get Priority by byte value.
34 *
35 * @param value byte representation of Priority.
36 *
37 * @return {@link org.rocksdb.Priority} instance.
38 * @throws java.lang.IllegalArgumentException if an invalid
39 * value is provided.
40 */
41 static Priority getPriority(final byte value) {
42 for (final Priority priority : Priority.values()) {
43 if (priority.getValue() == value){
44 return priority;
45 }
46 }
47 throw new IllegalArgumentException("Illegal value provided for Priority.");
48 }
49 }