public <T> T unmarshall(Class<T> entityClass, MediaType mediaType, InputStream entityStream, Map<String, List<String>> responseHeaders) throws IOException { MessageBodyReader<T> reader = messageBodyFactory.getMessageBodyReader(entityClass, entityClass, new Annotation[0], mediaType); MultivaluedMap<String, String> headers = new InBoundHeaders(); headers.putAll(responseHeaders); return reader.readFrom(entityClass, entityClass, new Annotation[0], mediaType, headers, entityStream); }