All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.resthub.web.support.JsonBodyReader Maven / Gradle / Ivy

Go to download

RESThub webservice client for requesting REST webservices with JSON support bundled

The newest version!
package org.resthub.web.support;

import com.fasterxml.jackson.core.type.TypeReference;
import com.ning.http.client.Response;
import org.resthub.web.Http;
import org.resthub.web.JsonHelper;

import java.io.IOException;

public class JsonBodyReader implements BodyReader {

    @Override
    public boolean canRead(Response response) {

        return (response.getContentType() != null && (response.getContentType().startsWith(Http.JSON) || response
                .getContentType().endsWith("+json")));
    }

    @Override
    public  T readEntity(Response resp, Class entityClass) throws IOException {

        return JsonHelper.deserialize(resp.getResponseBody(), entityClass);
    }

    @Override
    public  T readEntity(Response resp, Class entityClass, String charset) throws IOException {

        return JsonHelper.deserialize(resp.getResponseBody(charset), entityClass);
    }

    @Override
     public  T readEntity(Response resp, TypeReference valueTypeRef) throws IOException {

        return JsonHelper.deserialize(resp.getResponseBody(), valueTypeRef);
    }

    @Override
    public  T readEntity(Response resp, TypeReference valueTypeRef, String charset) throws IOException {

        return JsonHelper.deserialize(resp.getResponseBody(charset), valueTypeRef);
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy