summaryrefslogtreecommitdiffstats
path: root/dcaedt_validator/kwalify/src/main/java/kwalify/DefaultableHashMap.java
diff options
context:
space:
mode:
Diffstat (limited to 'dcaedt_validator/kwalify/src/main/java/kwalify/DefaultableHashMap.java')
-rw-r--r--dcaedt_validator/kwalify/src/main/java/kwalify/DefaultableHashMap.java31
1 files changed, 31 insertions, 0 deletions
diff --git a/dcaedt_validator/kwalify/src/main/java/kwalify/DefaultableHashMap.java b/dcaedt_validator/kwalify/src/main/java/kwalify/DefaultableHashMap.java
new file mode 100644
index 0000000..c2c625c
--- /dev/null
+++ b/dcaedt_validator/kwalify/src/main/java/kwalify/DefaultableHashMap.java
@@ -0,0 +1,31 @@
+/*
+ * copyright(c) 2005 kuwata-lab all rights reserved.
+ */
+
+package kwalify;
+
+import java.io.Serializable;
+import java.util.HashMap;
+
+/**
+ * hash map which can have default value
+ */
+public class DefaultableHashMap extends HashMap implements Defaultable {
+
+ private static final long serialVersionUID = -5224819562023897380L;
+
+ private Object defaultValue = null;
+
+ public DefaultableHashMap() {
+ super();
+ }
+
+ public Object getDefault() { return defaultValue; }
+
+ public void setDefault(Object value) { defaultValue = value; }
+
+ @Override
+ public Object get(Object key) {
+ return containsKey(key) ? super.get(key) : defaultValue;
+ }
+}