1 package org.oxerr.chbtc.dto.valuereader;
2
3 import java.io.IOException;
4 import java.io.InputStream;
5
6 import com.fasterxml.jackson.core.type.TypeReference;
7 import com.fasterxml.jackson.databind.ObjectMapper;
8
9 public class JsonValueTypeRefReader<T> implements ValueReader<T> {
10
11 private final ObjectMapper objectMapper;
12
13 private final TypeReference<T> valueTypeRef;
14
15 public JsonValueTypeRefReader(ObjectMapper objectMapper, TypeReference<T> valueTypeRef) {
16 this.objectMapper = objectMapper;
17 this.valueTypeRef = valueTypeRef;
18 }
19
20
21
22
23 @Override
24 public T read(InputStream content) throws IOException {
25 return objectMapper.readValue(content, valueTypeRef);
26 }
27
28 }