Skip to content

Commit 41bb560

Browse files
committed
DEVX-813: adding CategoryUtil
1 parent 7277186 commit 41bb560

1 file changed

Lines changed: 46 additions & 0 deletions

File tree

  • commercetools/commercetools-importapi-utils/src/main/java/com/commercetools/sdk
Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
package com.commercetools.sdk;
2+
3+
import com.commercetools.api.models.category.Category;
4+
import com.commercetools.api.models.category.CategoryReference;
5+
import com.commercetools.importapi.models.categories.CategoryImport;
6+
import com.commercetools.importapi.models.common.CategoryKeyReference;
7+
import com.commercetools.importapi.models.common.LocalizedStringBuilder;
8+
9+
import java.util.Optional;
10+
11+
import static com.commercetools.sdk.CommonImportUtil.*;
12+
13+
public class CategoryUtil {
14+
15+
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();
38+
}
39+
40+
private CategoryKeyReference CategoryKeyReference(CategoryReference categoryReference) {
41+
if (categoryReference == null) {
42+
return null;
43+
}
44+
return CategoryKeyReference.builder().key(categoryReference.getId()).build();
45+
}
46+
}

0 commit comments

Comments
 (0)