001
002package com.commercetools.api.client;
003
004import java.util.function.UnaryOperator;
005
006import io.vrap.rmf.base.client.ApiHttpClient;
007import io.vrap.rmf.base.client.utils.Generated;
008
009@Generated(value = "io.vrap.rmf.codegen.rendering.CoreCodeGenerator", comments = "https://github.com/commercetools/rmf-codegen")
010public class ByProjectKeyGraphqlRequestBuilder {
011
012    private final ApiHttpClient apiHttpClient;
013    private final String projectKey;
014
015    public ByProjectKeyGraphqlRequestBuilder(final ApiHttpClient apiHttpClient, final String projectKey) {
016        this.apiHttpClient = apiHttpClient;
017        this.projectKey = projectKey;
018    }
019
020    public ByProjectKeyGraphqlPost post(com.commercetools.api.models.graph_ql.GraphQLRequest graphQLRequest) {
021        return new ByProjectKeyGraphqlPost(apiHttpClient, projectKey, graphQLRequest);
022    }
023
024    public ByProjectKeyGraphqlPostString post(final String graphQLRequest) {
025        return new ByProjectKeyGraphqlPostString(apiHttpClient, projectKey, graphQLRequest);
026    }
027
028    public ByProjectKeyGraphqlPost post(UnaryOperator<com.commercetools.api.models.graph_ql.GraphQLRequestBuilder> op) {
029        return post(op.apply(com.commercetools.api.models.graph_ql.GraphQLRequestBuilder.of()).build());
030    }
031
032    public <TMethod> TMethod query(ProjectRequestBuilder<TMethod> requestBuilder) {
033        return requestBuilder.build(apiHttpClient, projectKey);
034    }
035
036}