Skip to content

Commit 675c9a6

Browse files
committed
Merge remote-tracking branch 'origin/DEVX-640-helper-method-from-Coco-product-to-import-API-product' into DEVX-640-helper-method-from-Coco-product-to-import-API-product
2 parents 5ad9639 + 07df83b commit 675c9a6

4 files changed

Lines changed: 58 additions & 59 deletions

File tree

.git-blame-ignore-revs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,3 +31,4 @@ f6aab9d10212756b1d71a0568c706a9df51c322d
3131
4822581aeff072b7649c7aec56a13a95bd58c249
3232
eb09ce06943ccb460981afaa6b5ecfd54f8f87e2
3333
4e64347e48610b8128ca737ccdb24634a92bbe34
34+
cd4bb52247f964cdb924e28f32a6cd888d25ccea

commercetools/commercetools-importapi-utils/src/main/java/com/commercetools/sdk/CategoryUtil.java

Lines changed: 31 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -1,40 +1,45 @@
1+
12
package com.commercetools.sdk;
23

4+
import static com.commercetools.sdk.CommonImportUtil.*;
5+
6+
import java.util.Optional;
7+
38
import com.commercetools.api.models.category.Category;
49
import com.commercetools.api.models.category.CategoryReference;
510
import com.commercetools.importapi.models.categories.CategoryImport;
611
import com.commercetools.importapi.models.common.CategoryKeyReference;
712
import com.commercetools.importapi.models.common.LocalizedStringBuilder;
813

9-
import java.util.Optional;
10-
11-
import static com.commercetools.sdk.CommonImportUtil.*;
12-
1314
public class CategoryUtil {
1415

1516
public CategoryImport toCategoryImport(Category category) {
16-
return CategoryImport.builder()
17-
.key(category.getKey()) // required field
18-
.name(getLocalizedStringBuilder(category.getName()).build()) // required field
19-
.slug(getLocalizedStringBuilder(category.getSlug()).build()) // required field
20-
.description(Optional.ofNullable(category.getDescription()).map(CommonImportUtil::getLocalizedStringBuilder)
21-
.map(LocalizedStringBuilder::build)
22-
.orElse(null))
23-
.parent(CategoryKeyReference(category.getParent()))
24-
.orderHint(category.getOrderHint())
25-
.externalId(category.getId())
26-
.metaTitle(Optional.ofNullable(category.getMetaTitle()).map(CommonImportUtil::getLocalizedStringBuilder)
27-
.map(LocalizedStringBuilder::build)
28-
.orElse(null))
29-
.metaDescription(Optional.ofNullable(category.getMetaDescription()).map(CommonImportUtil::getLocalizedStringBuilder)
30-
.map(LocalizedStringBuilder::build)
31-
.orElse(null))
32-
.metaKeywords(Optional.ofNullable(category.getMetaKeywords()).map(CommonImportUtil::getLocalizedStringBuilder)
33-
.map(LocalizedStringBuilder::build)
34-
.orElse(null))
35-
.assets(importAssets(category.getAssets()))
36-
.custom(getImportApiCustom(category.getCustom()))
37-
.build();
17+
return CategoryImport.builder()
18+
.key(category.getKey()) // required field
19+
.name(getLocalizedStringBuilder(category.getName()).build()) // required field
20+
.slug(getLocalizedStringBuilder(category.getSlug()).build()) // required field
21+
.description(Optional.ofNullable(category.getDescription())
22+
.map(CommonImportUtil::getLocalizedStringBuilder)
23+
.map(LocalizedStringBuilder::build)
24+
.orElse(null))
25+
.parent(CategoryKeyReference(category.getParent()))
26+
.orderHint(category.getOrderHint())
27+
.externalId(category.getId())
28+
.metaTitle(Optional.ofNullable(category.getMetaTitle())
29+
.map(CommonImportUtil::getLocalizedStringBuilder)
30+
.map(LocalizedStringBuilder::build)
31+
.orElse(null))
32+
.metaDescription(Optional.ofNullable(category.getMetaDescription())
33+
.map(CommonImportUtil::getLocalizedStringBuilder)
34+
.map(LocalizedStringBuilder::build)
35+
.orElse(null))
36+
.metaKeywords(Optional.ofNullable(category.getMetaKeywords())
37+
.map(CommonImportUtil::getLocalizedStringBuilder)
38+
.map(LocalizedStringBuilder::build)
39+
.orElse(null))
40+
.assets(importAssets(category.getAssets()))
41+
.custom(getImportApiCustom(category.getCustom()))
42+
.build();
3843
}
3944

4045
private CategoryKeyReference CategoryKeyReference(CategoryReference categoryReference) {

commercetools/commercetools-importapi-utils/src/main/java/com/commercetools/sdk/CommonImportUtil.java

Lines changed: 22 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -1,28 +1,29 @@
1+
12
package com.commercetools.sdk;
23

4+
import java.time.LocalDate;
5+
import java.time.LocalTime;
6+
import java.time.ZonedDateTime;
7+
import java.util.List;
8+
import java.util.Map;
9+
import java.util.stream.Collectors;
10+
311
import com.commercetools.api.models.common.LocalizedString;
412
import com.commercetools.api.models.type.CustomFields;
513
import com.commercetools.api.models.type.FieldContainer;
614
import com.commercetools.api.models.type.TypeReference;
715
import com.commercetools.importapi.models.common.*;
816
import com.commercetools.importapi.models.customfields.CustomField;
9-
import io.vrap.rmf.base.client.Builder;
1017

11-
import java.time.LocalDate;
12-
import java.time.LocalTime;
13-
import java.time.ZonedDateTime;
14-
import java.util.List;
15-
import java.util.Map;
16-
import java.util.stream.Collectors;
18+
import io.vrap.rmf.base.client.Builder;
1719

1820
public class CommonImportUtil {
1921

2022
public static LocalizedStringBuilder getLocalizedStringBuilder(LocalizedString s) {
2123
return com.commercetools.importapi.models.common.LocalizedString.builder().values(s.values());
2224
}
2325

24-
public static List<Asset> importAssets(
25-
List<com.commercetools.api.models.common.Asset> assets) {
26+
public static List<Asset> importAssets(List<com.commercetools.api.models.common.Asset> assets) {
2627
if (assets == null) {
2728
return null;
2829
}
@@ -38,13 +39,13 @@ public static Builder<? extends TypedMoney> importApiTypedMoney(com.commercetool
3839
TypedMoneyBuilder v) {
3940
return (p instanceof HighPrecisionMoney)
4041
? v.highPrecisionBuilder()
41-
.centAmount(p.getCentAmount())
42-
.currencyCode(p.getCurrencyCode())
43-
.preciseAmount(((com.commercetools.api.models.common.HighPrecisionMoney) p).getPreciseAmount())
42+
.centAmount(p.getCentAmount())
43+
.currencyCode(p.getCurrencyCode())
44+
.preciseAmount(((com.commercetools.api.models.common.HighPrecisionMoney) p).getPreciseAmount())
4445
: v.centPrecisionBuilder()
45-
.centAmount(p.getCentAmount())
46-
.currencyCode(p.getCurrencyCode())
47-
.fractionDigits(p.getFractionDigits());
46+
.centAmount(p.getCentAmount())
47+
.currencyCode(p.getCurrencyCode())
48+
.fractionDigits(p.getFractionDigits());
4849
}
4950

5051
public static com.commercetools.importapi.models.customfields.Custom getImportApiCustom(CustomFields customFields) {
@@ -61,15 +62,12 @@ private static com.commercetools.importapi.models.customfields.FieldContainer ge
6162
.build();
6263
}
6364

64-
static Map<String, CustomField> mapCustomField(
65-
Map<String, Object> customFieldsValues) {
66-
if (customFieldsValues == null) return null;
65+
static Map<String, CustomField> mapCustomField(Map<String, Object> customFieldsValues) {
66+
if (customFieldsValues == null)
67+
return null;
6768
return customFieldsValues.entrySet()
6869
.stream()
69-
.collect(Collectors.toMap(
70-
Map.Entry::getKey,
71-
e -> mapCustomField(e.getValue())
72-
));
70+
.collect(Collectors.toMap(Map.Entry::getKey, e -> mapCustomField(e.getValue())));
7371
}
7472

7573
static CustomField mapCustomField(Object value) {
@@ -104,16 +102,13 @@ static CustomField mapCustomField(Object value) {
104102
}
105103
if (value instanceof Money) {
106104
return CustomField.moneyBuilder()
107-
.value(v -> importApiTypedMoney(
108-
(com.commercetools.api.models.common.TypedMoney) value, v))
105+
.value(v -> importApiTypedMoney((com.commercetools.api.models.common.TypedMoney) value, v))
109106
.build();
110107
}
111108
throw new IllegalArgumentException("Unsupported custom field type: " + value.getClass());
112109
}
113110

114111
private static com.commercetools.importapi.models.common.TypeKeyReference getTypeReference(TypeReference typeRef) {
115-
return TypeKeyReference.builder()
116-
.key(typeRef.getId())
117-
.build();
112+
return TypeKeyReference.builder().key(typeRef.getId()).build();
118113
}
119114
}

commercetools/commercetools-importapi-utils/src/main/java/com/commercetools/sdk/ProductUtil.java

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11

22
package com.commercetools.sdk;
33

4+
import static com.commercetools.sdk.CommonImportUtil.*;
5+
46
import java.time.LocalDate;
57
import java.time.LocalTime;
68
import java.time.ZonedDateTime;
@@ -23,10 +25,6 @@
2325
import com.commercetools.importapi.models.products.ProductImport;
2426
import com.commercetools.importapi.models.productvariants.Attribute;
2527

26-
import io.vrap.rmf.base.client.Builder;
27-
28-
import static com.commercetools.sdk.CommonImportUtil.*;
29-
3028
public class ProductUtil {
3129
private final KeyResolverService keyResolverService;
3230
public ProductUtil() {
@@ -81,13 +79,13 @@ public ProductImport toProductImport(ProductProjection product) {
8179
.map(LocalizedStringBuilder::build)
8280
.orElse(null))
8381
.metaDescription(
84-
(com.commercetools.importapi.models.common.LocalizedString) product.getMetaDescription())
82+
(com.commercetools.importapi.models.common.LocalizedString) product.getMetaDescription())
8583
.metaKeywords((com.commercetools.importapi.models.common.LocalizedString) product.getMetaKeywords())
8684
.taxCategory(getTaxCategoryKeyReference(product))
8785
.state(getStateKeyReference(product))
8886
.priceMode(mapPriceModeToImportApi(product))
8987
.attributes(
90-
product.getAttributes().stream().map(ProductUtil::mapAttribute).collect(Collectors.toList()));
88+
product.getAttributes().stream().map(ProductUtil::mapAttribute).collect(Collectors.toList()));
9189
return productImport.build();
9290
}
9391

0 commit comments

Comments
 (0)