diff options
Diffstat (limited to 'orkbasej/java/net/sf/oreka/serializers/KeyValueSerializer.java')
-rw-r--r-- | orkbasej/java/net/sf/oreka/serializers/KeyValueSerializer.java | 47 |
1 files changed, 47 insertions, 0 deletions
diff --git a/orkbasej/java/net/sf/oreka/serializers/KeyValueSerializer.java b/orkbasej/java/net/sf/oreka/serializers/KeyValueSerializer.java new file mode 100644 index 0000000..bc65819 --- /dev/null +++ b/orkbasej/java/net/sf/oreka/serializers/KeyValueSerializer.java @@ -0,0 +1,47 @@ +/* + * Oreka -- A media capture and retrieval platform + * + * Copyright (C) 2005, orecx LLC + * + * http://www.orecx.com + * + * This program is free software, distributed under the terms of + * the GNU General Public License. + * Please refer to http://www.gnu.org/copyleft/gpl.html + * + */ + +package net.sf.oreka.serializers; + +import java.util.HashMap; + +import net.sf.oreka.*; + +public abstract class KeyValueSerializer extends OrkSerializer +{ + HashMap<String, String> map; + + KeyValueSerializer() + { + map = new HashMap<String, String>(); + } + + String getString(String key, String oldValue, boolean required) throws OrkException + { + String value = map.get(key.toLowerCase()); + if (value == null) + { + if (required == true) + { + throw (new OrkException("Serializer.GetString: required parameter missing:" + key)); + } + value = oldValue; + } + return value; + } + + public OrkObject objectValue(String key, OrkObject value, boolean required) throws OrkException + { + throw (new OrkException("KeyValueSerializer.objectValue: Nested objects not allowed for key-value serializers")); + } +} |