]> git.proxmox.com Git - ceph.git/blobdiff - ceph/src/rocksdb/java/src/main/java/org/rocksdb/Holder.java
update source to Ceph Pacific 16.2.2
[ceph.git] / ceph / src / rocksdb / java / src / main / java / org / rocksdb / Holder.java
diff --git a/ceph/src/rocksdb/java/src/main/java/org/rocksdb/Holder.java b/ceph/src/rocksdb/java/src/main/java/org/rocksdb/Holder.java
new file mode 100644 (file)
index 0000000..716a0bd
--- /dev/null
@@ -0,0 +1,46 @@
+// Copyright (c) 2016, Facebook, Inc.  All rights reserved.
+//  This source code is licensed under both the GPLv2 (found in the
+//  COPYING file in the root directory) and Apache 2.0 License
+//  (found in the LICENSE.Apache file in the root directory).
+
+package org.rocksdb;
+
+/**
+ * Simple instance reference wrapper.
+ */
+public class Holder<T> {
+  private /* @Nullable */ T value;
+
+  /**
+   * Constructs a new Holder with null instance.
+   */
+  public Holder() {
+  }
+
+  /**
+   * Constructs a new Holder.
+   *
+   * @param value the instance or null
+   */
+  public Holder(/* @Nullable */ final T value) {
+    this.value = value;
+  }
+
+  /**
+   * Get the instance reference.
+   *
+   * @return value the instance reference or null
+   */
+  public /* @Nullable */ T getValue() {
+    return value;
+  }
+
+  /**
+   * Set the instance reference.
+   *
+   * @param value the instance reference or null
+   */
+  public void setValue(/* @Nullable */ final T value) {
+    this.value = value;
+  }
+}