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

io.sphere.internal.request.BasicRequestFactoryImpl Maven / Gradle / Ivy

There is a newer version: 0.72.1
Show newest version
package io.sphere.internal.request;

import com.ning.http.client.AsyncHttpClient;
import io.sphere.client.oauth.ClientCredentials;

/** Creates real GET and POST requests for {@link io.sphere.internal.request.RequestFactoryImpl}.
 *  Can be mocked in tests. */
public class BasicRequestFactoryImpl implements BasicRequestFactory {
    private final AsyncHttpClient httpClient;
    private final ClientCredentials credentials;

    public BasicRequestFactoryImpl(AsyncHttpClient httpClient, ClientCredentials credentials) {
        this.httpClient = httpClient;
        this.credentials = credentials;
    }

    @Override
    public  RequestHolder createGet(String url) {
        return new RequestHolderImpl(SetCredentials.forRequest(httpClient.prepareGet(url), credentials));
    }

    @Override
    public  RequestHolder createPost(String url) {
        return new RequestHolderImpl(
                SetCredentials.forRequest(httpClient.preparePost(url).setHeader("Content-Type", "application/json"), credentials));
    }

    @Override
    public  RequestHolder createDelete(String url) {
        return new RequestHolderImpl(SetCredentials.forRequest(httpClient.prepareDelete(url), credentials));
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy