Class CategoryOrProductPageRestorePopulator

  • All Implemented Interfaces:
    Populator<java.util.Map<java.lang.String,​java.lang.Object>,​ItemModel>

    public class CategoryOrProductPageRestorePopulator
    extends java.lang.Object
    implements Populator<java.util.Map<java.lang.String,​java.lang.Object>,​ItemModel>
    CategoryOrProductPageRestorePopulator populator for cmsfacades used to replace a product/category page while page restore with replace set to true.
    • Constructor Detail

      • CategoryOrProductPageRestorePopulator

        public CategoryOrProductPageRestorePopulator()
    • Method Detail

      • populate

        public void populate​(java.util.Map<java.lang.String,​java.lang.Object> source,
                             ItemModel itemModel)
                      throws ConversionException
        Description copied from interface: Populator
        Populate the target instance with values from the source instance.
        Specified by:
        populate in interface Populator<java.util.Map<java.lang.String,​java.lang.Object>,​ItemModel>
        Parameters:
        source - the source object
        itemModel - the target to fill
        Throws:
        ConversionException - if an error occurs
      • getExistingPrimaryPagesByType

        protected java.util.List<AbstractPageModel> getExistingPrimaryPagesByType​(java.lang.String pageType)
        Returns active primary pages for a given pageType.
      • pageBeReplacedWithOnlyOnePrimaryForType

        protected boolean pageBeReplacedWithOnlyOnePrimaryForType​(java.util.Map<java.lang.String,​java.lang.Object> source,
                                                                  ItemModel itemModel)
        Checks if it a page restore operation with replace enabled and type that can have only one primary page.
      • isPrimaryPage

        protected boolean isPrimaryPage​(java.util.Map<java.lang.String,​java.lang.Object> source)
      • primaryPageAlreadyExists

        protected boolean primaryPageAlreadyExists​(java.lang.String uid,
                                                   java.util.List<AbstractPageModel> existingPages)
      • getPageCanOnlyHaveOnePrimaryPredicate

        protected java.util.function.Predicate<AbstractPageModel> getPageCanOnlyHaveOnePrimaryPredicate()
      • setPageCanOnlyHaveOnePrimaryPredicate

        public void setPageCanOnlyHaveOnePrimaryPredicate​(java.util.function.Predicate<AbstractPageModel> pageCanOnlyHaveOnePrimaryPredicate)