Class CategoryUpdateActionUtils
- java.lang.Object
-
- com.commercetools.sync.categories.utils.CategoryUpdateActionUtils
-
public final class CategoryUpdateActionUtils extends java.lang.Object
-
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static java.util.List<com.commercetools.api.models.category.CategoryUpdateAction>buildAssetsUpdateActions(com.commercetools.api.models.category.Category oldCategory, com.commercetools.api.models.category.CategoryDraft newCategory, CategorySyncOptions syncOptions)Compares the assets of aCategoryand aCategoryDraftand returns a list ofCategoryUpdateActionas a result.static java.util.Optional<com.commercetools.api.models.category.CategoryUpdateAction>buildChangeNameUpdateAction(com.commercetools.api.models.category.Category oldCategory, com.commercetools.api.models.category.CategoryDraft newCategory)Compares theLocalizedStringnames of aCategoryand aCategoryDraftand returns anCategoryUpdateActionas a result in anOptional.static java.util.Optional<com.commercetools.api.models.category.CategoryUpdateAction>buildChangeOrderHintUpdateAction(com.commercetools.api.models.category.Category oldCategory, com.commercetools.api.models.category.CategoryDraft newCategory, CategorySyncOptions syncOptions)Compares the orderHint values of aCategoryand aCategoryDraftand returns anCategoryUpdateActionas a result in anOptional.static java.util.Optional<com.commercetools.api.models.category.CategoryUpdateAction>buildChangeParentUpdateAction(com.commercetools.api.models.category.Category oldCategory, com.commercetools.api.models.category.CategoryDraft newCategory, CategorySyncOptions syncOptions)Compares the parentsCategoryReferenceof aCategoryand aCategoryDraftand returns anCategoryUpdateActionas a result in anOptional.static java.util.Optional<com.commercetools.api.models.category.CategoryUpdateAction>buildChangeSlugUpdateAction(com.commercetools.api.models.category.Category oldCategory, com.commercetools.api.models.category.CategoryDraft newCategory)Compares theLocalizedStringslugs of aCategoryand aCategoryDraftand returns anCategoryUpdateActionas a result in anOptional.static java.util.Optional<com.commercetools.api.models.category.CategoryUpdateAction>buildSetDescriptionUpdateAction(com.commercetools.api.models.category.Category oldCategory, com.commercetools.api.models.category.CategoryDraft newCategory)Compares theLocalizedStringdescriptions of aCategoryand aCategoryDraftand returns anCategoryUpdateActionas a result in anOptional.static java.util.Optional<com.commercetools.api.models.category.CategoryUpdateAction>buildSetExternalIdUpdateAction(com.commercetools.api.models.category.Category oldCategory, com.commercetools.api.models.category.CategoryDraft newCategory)Compares the externalId values of aCategoryand aCategoryDraftand returns anCategoryUpdateActionas a result in anOptional.static java.util.Optional<com.commercetools.api.models.category.CategoryUpdateAction>buildSetMetaDescriptionUpdateAction(com.commercetools.api.models.category.Category oldCategory, com.commercetools.api.models.category.CategoryDraft newCategory)Compares theLocalizedStringmeta description of aCategoryand aCategoryDraftand returns anCategoryUpdateActionas a result in anOptional.static java.util.Optional<com.commercetools.api.models.category.CategoryUpdateAction>buildSetMetaKeywordsUpdateAction(com.commercetools.api.models.category.Category oldCategory, com.commercetools.api.models.category.CategoryDraft newCategory)Compares theLocalizedStringmeta keywords of aCategoryand aCategoryDraftand returns anCategoryUpdateActionas a result in anOptional.static java.util.Optional<com.commercetools.api.models.category.CategoryUpdateAction>buildSetMetaTitleUpdateAction(com.commercetools.api.models.category.Category oldCategory, com.commercetools.api.models.category.CategoryDraft newCategory)Compares theLocalizedStringmeta title of aCategoryand aCategoryDraftand returns anCategoryUpdateActionas a result in anOptional.
-
-
-
Method Detail
-
buildChangeNameUpdateAction
@Nonnull public static java.util.Optional<com.commercetools.api.models.category.CategoryUpdateAction> buildChangeNameUpdateAction(@Nonnull com.commercetools.api.models.category.Category oldCategory, @Nonnull com.commercetools.api.models.category.CategoryDraft newCategory)Compares theLocalizedStringnames of aCategoryand aCategoryDraftand returns anCategoryUpdateActionas a result in anOptional. If both theCategoryand theCategoryDrafthave the same name, then no update action is needed and hence an emptyOptionalis returned.- Parameters:
oldCategory- the category which should be updated.newCategory- the category draft where we get the new name.- Returns:
- A filled optional with the update action or an empty optional if the names are identical.
-
buildChangeSlugUpdateAction
@Nonnull public static java.util.Optional<com.commercetools.api.models.category.CategoryUpdateAction> buildChangeSlugUpdateAction(@Nonnull com.commercetools.api.models.category.Category oldCategory, @Nonnull com.commercetools.api.models.category.CategoryDraft newCategory)Compares theLocalizedStringslugs of aCategoryand aCategoryDraftand returns anCategoryUpdateActionas a result in anOptional. If both theCategoryand theCategoryDrafthave the same slug, then no update action is needed and hence an emptyOptionalis returned.- Parameters:
oldCategory- the category which should be updated.newCategory- the category draft where we get the new slug.- Returns:
- A filled optional with the update action or an empty optional if the slugs are identical.
-
buildSetDescriptionUpdateAction
@Nonnull public static java.util.Optional<com.commercetools.api.models.category.CategoryUpdateAction> buildSetDescriptionUpdateAction(@Nonnull com.commercetools.api.models.category.Category oldCategory, @Nonnull com.commercetools.api.models.category.CategoryDraft newCategory)Compares theLocalizedStringdescriptions of aCategoryand aCategoryDraftand returns anCategoryUpdateActionas a result in anOptional. If both theCategoryand theCategoryDrafthave the same description, then no update action is needed and hence an emptyOptionalis returned.- Parameters:
oldCategory- the category which should be updated.newCategory- the category draft where we get the new description.- Returns:
- A filled optional with the update action or an empty optional if the descriptions are identical.
-
buildChangeParentUpdateAction
@Nonnull public static java.util.Optional<com.commercetools.api.models.category.CategoryUpdateAction> buildChangeParentUpdateAction(@Nonnull com.commercetools.api.models.category.Category oldCategory, @Nonnull com.commercetools.api.models.category.CategoryDraft newCategory, @Nonnull CategorySyncOptions syncOptions)Compares the parentsCategoryReferenceof aCategoryand aCategoryDraftand returns anCategoryUpdateActionas a result in anOptional. If both theCategoryand theCategoryDrafthave the same parents, then no update action is needed and hence an emptyOptionalis returned.Note: If the parent
CategoryReferenceof the newCategoryDraftis null, an emptyOptionalis returned with no update actions and a custom callback function, if set on the suppliedCategorySyncOptions, is called.- Parameters:
oldCategory- the category which should be updated.newCategory- the category draft where we get the new parent.syncOptions- the sync syncOptions with which a custom callback function is called in case the parent is null.- Returns:
- A filled optional with the update action or an empty optional if the parent references are identical.
-
buildChangeOrderHintUpdateAction
@Nonnull public static java.util.Optional<com.commercetools.api.models.category.CategoryUpdateAction> buildChangeOrderHintUpdateAction(@Nonnull com.commercetools.api.models.category.Category oldCategory, @Nonnull com.commercetools.api.models.category.CategoryDraft newCategory, @Nonnull CategorySyncOptions syncOptions)Compares the orderHint values of aCategoryand aCategoryDraftand returns anCategoryUpdateActionas a result in anOptional. If both theCategoryand theCategoryDrafthave the same orderHint, then no update action is needed and hence an emptyOptionalis returned.Note: If the orderHint of the new
CategoryDraftis null, an emptyOptionalis returned with no update actions and a custom callback function, if set on the suppliedCategorySyncOptions, is called.- Parameters:
oldCategory- the category which should be updated.newCategory- the category draft where we get the new orderHint.syncOptions- the sync syncOptions with which a custom callback function is called in case the orderHint is null.- Returns:
- A filled optional with the update action or an empty optional if the orderHint values are identical.
-
buildSetMetaTitleUpdateAction
@Nonnull public static java.util.Optional<com.commercetools.api.models.category.CategoryUpdateAction> buildSetMetaTitleUpdateAction(@Nonnull com.commercetools.api.models.category.Category oldCategory, @Nonnull com.commercetools.api.models.category.CategoryDraft newCategory)Compares theLocalizedStringmeta title of aCategoryand aCategoryDraftand returns anCategoryUpdateActionas a result in anOptional. If both theCategoryand theCategoryDrafthave the same meta title, then no update action is needed and hence an emptyOptionalis returned.- Parameters:
oldCategory- the category which should be updated.newCategory- the category draft where we get the new meta title.- Returns:
- A filled optional with the update action or an empty optional if the meta titles values are identical.
-
buildSetMetaKeywordsUpdateAction
@Nonnull public static java.util.Optional<com.commercetools.api.models.category.CategoryUpdateAction> buildSetMetaKeywordsUpdateAction(@Nonnull com.commercetools.api.models.category.Category oldCategory, @Nonnull com.commercetools.api.models.category.CategoryDraft newCategory)Compares theLocalizedStringmeta keywords of aCategoryand aCategoryDraftand returns anCategoryUpdateActionas a result in anOptional. If both theCategoryand theCategoryDrafthave the same meta keywords, then no update action is needed and hence an emptyOptionalis returned.- Parameters:
oldCategory- the category which should be updated.newCategory- the category draft where we get the new meta keywords.- Returns:
- A filled optional with the update action or an empty optional if the meta keywords values are identical.
-
buildSetMetaDescriptionUpdateAction
@Nonnull public static java.util.Optional<com.commercetools.api.models.category.CategoryUpdateAction> buildSetMetaDescriptionUpdateAction(@Nonnull com.commercetools.api.models.category.Category oldCategory, @Nonnull com.commercetools.api.models.category.CategoryDraft newCategory)Compares theLocalizedStringmeta description of aCategoryand aCategoryDraftand returns anCategoryUpdateActionas a result in anOptional. If both theCategoryand theCategoryDrafthave the same meta description, then no update action is needed and hence an emptyOptionalis returned.- Parameters:
oldCategory- the category which should be updated.newCategory- the category draft where we get the new meta description.- Returns:
- A filled optional with the update action or an empty optional if the meta description values are identical.
-
buildSetExternalIdUpdateAction
@Nonnull public static java.util.Optional<com.commercetools.api.models.category.CategoryUpdateAction> buildSetExternalIdUpdateAction(@Nonnull com.commercetools.api.models.category.Category oldCategory, @Nonnull com.commercetools.api.models.category.CategoryDraft newCategory)Compares the externalId values of aCategoryand aCategoryDraftand returns anCategoryUpdateActionas a result in anOptional. If both theCategoryand theCategoryDrafthave the same externalId, then no update action is needed and hence an emptyOptionalis returned.- Parameters:
oldCategory- the category which should be updated.newCategory- the category draft where we get the new externalId.- Returns:
- A filled optional with the update action or an empty optional if the externalId values are identical.
-
buildAssetsUpdateActions
@Nonnull public static java.util.List<com.commercetools.api.models.category.CategoryUpdateAction> buildAssetsUpdateActions(@Nonnull com.commercetools.api.models.category.Category oldCategory, @Nonnull com.commercetools.api.models.category.CategoryDraft newCategory, @Nonnull CategorySyncOptions syncOptions)Compares the assets of aCategoryand aCategoryDraftand returns a list ofCategoryUpdateActionas a result. If both theCategoryand theCategoryDrafthave the identical assets, then no update action is needed and hence an emptyListis returned. In case, the new category draft has a list of assets in which a duplicate key exists, the error callback is triggered and an empty list is returned.- Parameters:
oldCategory- the category which should be updated.newCategory- the category draft where we get the new externalId.syncOptions- the sync options with which a custom callback function is called in case errors exists while building assets custom field/type actions.- Returns:
- A list with the update actions or an empty list if the assets are identical.
-
-