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 ByProjectKeyChannelsByIDRequestBuilder {
011
012    private final ApiHttpClient apiHttpClient;
013    private final String projectKey;
014    private final String ID;
015
016    public ByProjectKeyChannelsByIDRequestBuilder(final ApiHttpClient apiHttpClient, final String projectKey,
017            final String ID) {
018        this.apiHttpClient = apiHttpClient;
019        this.projectKey = projectKey;
020        this.ID = ID;
021    }
022
023    public ByProjectKeyChannelsByIDGet get() {
024        return new ByProjectKeyChannelsByIDGet(apiHttpClient, projectKey, ID);
025    }
026
027    public ByProjectKeyChannelsByIDPost post(com.commercetools.api.models.channel.ChannelUpdate channelUpdate) {
028        return new ByProjectKeyChannelsByIDPost(apiHttpClient, projectKey, ID, channelUpdate);
029    }
030
031    public ByProjectKeyChannelsByIDPostString post(final String channelUpdate) {
032        return new ByProjectKeyChannelsByIDPostString(apiHttpClient, projectKey, ID, channelUpdate);
033    }
034
035    public ByProjectKeyChannelsByIDPost post(
036            UnaryOperator<com.commercetools.api.models.channel.ChannelUpdateBuilder> op) {
037        return post(op.apply(com.commercetools.api.models.channel.ChannelUpdateBuilder.of()).build());
038    }
039
040    public ByProjectKeyChannelsByIDDelete delete() {
041        return new ByProjectKeyChannelsByIDDelete(apiHttpClient, projectKey, ID);
042    }
043
044    public <TValue> ByProjectKeyChannelsByIDDelete delete(TValue version) {
045        return delete().withVersion(version);
046    }
047
048}