aboutsummaryrefslogtreecommitdiffstats
path: root/src/ooxml/java/org/apache/poi/openxml4j/util/Nullable.java
diff options
context:
space:
mode:
authorYegor Kozlov <yegor@apache.org>2009-01-29 12:44:31 +0000
committerYegor Kozlov <yegor@apache.org>2009-01-29 12:44:31 +0000
commitfce473fada9fbf45563b76514d7bc7b204decbb0 (patch)
tree21a5cf01540ffee3aa64b837e72422868c3b5c43 /src/ooxml/java/org/apache/poi/openxml4j/util/Nullable.java
parent7d01fc135e420d5eb4030e52557bb6b0d9a09335 (diff)
downloadpoi-fce473fada9fbf45563b76514d7bc7b204decbb0.tar.gz
poi-fce473fada9fbf45563b76514d7bc7b204decbb0.zip
import OpenXML4j codebase
git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@738842 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'src/ooxml/java/org/apache/poi/openxml4j/util/Nullable.java')
-rwxr-xr-xsrc/ooxml/java/org/apache/poi/openxml4j/util/Nullable.java71
1 files changed, 71 insertions, 0 deletions
diff --git a/src/ooxml/java/org/apache/poi/openxml4j/util/Nullable.java b/src/ooxml/java/org/apache/poi/openxml4j/util/Nullable.java
new file mode 100755
index 0000000000..45374dcf7c
--- /dev/null
+++ b/src/ooxml/java/org/apache/poi/openxml4j/util/Nullable.java
@@ -0,0 +1,71 @@
+/* ====================================================================
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with
+ the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+==================================================================== */
+package org.apache.poi.openxml4j.util;
+
+/**
+ * An immutable object that could be defined as null.
+ *
+ * @author Julien Chable
+ * @version 0.9
+ */
+public final class Nullable<E> {
+
+ private E value;
+
+ /**
+ * Constructor.
+ */
+ public Nullable() {
+ // Do nothing
+ }
+
+ /**
+ * Constructor.
+ *
+ * @param value
+ * The value to set to this nullable.
+ */
+ public Nullable(E value) {
+ this.value = value;
+ }
+
+ /**
+ * Get the store value if any.
+ *
+ * @return
+ */
+ public E getValue() {
+ return value;
+ }
+
+ /**
+ * Get the status of this nullable.
+ *
+ * @return <b>true</b> if the nullable store a value (empty string is
+ * considered to be a value) else <b>false</>.
+ */
+ public boolean hasValue() {
+ return value != null;
+ }
+
+ /**
+ * Set the stored value to <i>null</i>.
+ */
+ public void nullify() {
+ value = null;
+ }
+}