summaryrefslogtreecommitdiff
path: root/eaaf_core/src/main/java/at/gv/egiz/eaaf/core/api/utils/IJsonMapper.java
diff options
context:
space:
mode:
authorThomas Lenz <thomas.lenz@egiz.gv.at>2019-07-17 13:44:51 +0200
committerThomas Lenz <thomas.lenz@egiz.gv.at>2019-07-17 13:44:51 +0200
commit328dd54a476dc947413f35ba5e0de8c55602c5b4 (patch)
tree98301379407c16695127e5be07b7c8f9d4097dcb /eaaf_core/src/main/java/at/gv/egiz/eaaf/core/api/utils/IJsonMapper.java
parent1f54ef67f54face4de2647b90e2552d9a1aca54a (diff)
downloadEAAF-Components-328dd54a476dc947413f35ba5e0de8c55602c5b4.tar.gz
EAAF-Components-328dd54a476dc947413f35ba5e0de8c55602c5b4.tar.bz2
EAAF-Components-328dd54a476dc947413f35ba5e0de8c55602c5b4.zip
update JSON mapper implementation
Diffstat (limited to 'eaaf_core/src/main/java/at/gv/egiz/eaaf/core/api/utils/IJsonMapper.java')
-rw-r--r--eaaf_core/src/main/java/at/gv/egiz/eaaf/core/api/utils/IJsonMapper.java18
1 files changed, 14 insertions, 4 deletions
diff --git a/eaaf_core/src/main/java/at/gv/egiz/eaaf/core/api/utils/IJsonMapper.java b/eaaf_core/src/main/java/at/gv/egiz/eaaf/core/api/utils/IJsonMapper.java
index 10e6464b..6db5a6ae 100644
--- a/eaaf_core/src/main/java/at/gv/egiz/eaaf/core/api/utils/IJsonMapper.java
+++ b/eaaf_core/src/main/java/at/gv/egiz/eaaf/core/api/utils/IJsonMapper.java
@@ -1,12 +1,12 @@
package at.gv.egiz.eaaf.core.api.utils;
import java.io.IOException;
+import java.io.InputStream;
import at.gv.egiz.eaaf.core.exceptions.EAAFJsonMapperException;
public interface IJsonMapper {
-
-
+
/**
* Serialize an object to a JSON string.
* @param value the object to serialize
@@ -27,6 +27,16 @@ public interface IJsonMapper {
*/
<T> Object deserialize(String value, Class<T> clazz) throws EAAFJsonMapperException;
- //<T> Object deserialize(String value, TypeReference<T> clazz) throws EAAFJsonMapperException;
-
+ /**
+ * Deserialize a JSON string.
+ *
+ * @param is the JSON to deserialize as {@link InputStream}
+ * @param clazz optional parameter that determines the type of the returned object. If not set, an {@link Object} is returned.
+ * @return the deserialized JSON string as an object of type {@code clazz} or {@link Object}
+ * @throws JsonParseException if the JSON string contains invalid content.
+ * @throws JsonMappingException if the input JSON structure does not match structure expected for result type
+ * @throws IOException if an I/O problem occurs (e.g. unexpected end-of-input)
+ */
+ <T> Object deserialize(InputStream is, Class<T> clazz) throws EAAFJsonMapperException;
+
} \ No newline at end of file