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 ByProjectKeyProductSelectionsKeyByKeyRequestBuilder { 011 012 private final ApiHttpClient apiHttpClient; 013 private final String projectKey; 014 private final String key; 015 016 public ByProjectKeyProductSelectionsKeyByKeyRequestBuilder(final ApiHttpClient apiHttpClient, 017 final String projectKey, final String key) { 018 this.apiHttpClient = apiHttpClient; 019 this.projectKey = projectKey; 020 this.key = key; 021 } 022 023 public ByProjectKeyProductSelectionsKeyByKeyGet get() { 024 return new ByProjectKeyProductSelectionsKeyByKeyGet(apiHttpClient, projectKey, key); 025 } 026 027 public ByProjectKeyProductSelectionsKeyByKeyPost post( 028 com.commercetools.api.models.product_selection.ProductSelectionUpdate productSelectionUpdate) { 029 return new ByProjectKeyProductSelectionsKeyByKeyPost(apiHttpClient, projectKey, key, productSelectionUpdate); 030 } 031 032 public ByProjectKeyProductSelectionsKeyByKeyPostString post(final String productSelectionUpdate) { 033 return new ByProjectKeyProductSelectionsKeyByKeyPostString(apiHttpClient, projectKey, key, 034 productSelectionUpdate); 035 } 036 037 public ByProjectKeyProductSelectionsKeyByKeyPost post( 038 UnaryOperator<com.commercetools.api.models.product_selection.ProductSelectionUpdateBuilder> op) { 039 return post( 040 op.apply(com.commercetools.api.models.product_selection.ProductSelectionUpdateBuilder.of()).build()); 041 } 042 043 public ByProjectKeyProductSelectionsKeyByKeyDelete delete() { 044 return new ByProjectKeyProductSelectionsKeyByKeyDelete(apiHttpClient, projectKey, key); 045 } 046 047 public <TValue> ByProjectKeyProductSelectionsKeyByKeyDelete delete(TValue version) { 048 return delete().withVersion(version); 049 } 050 051 public ByProjectKeyProductSelectionsKeyByKeyProductsRequestBuilder products() { 052 return new ByProjectKeyProductSelectionsKeyByKeyProductsRequestBuilder(apiHttpClient, projectKey, key); 053 } 054 055}