Class BulkAddTagsDomainMapperMember

java.lang.Object
com.broadleafcommerce.catalog.service.BulkAddTagsDomainMapperMember
All Implemented Interfaces:
com.broadleafcommerce.common.extension.data.DataRoutePartitionAware, com.broadleafcommerce.data.tracking.core.mapping.DomainMapper, com.broadleafcommerce.data.tracking.core.mapping.DomainMapperMember, org.springframework.core.Ordered

public class BulkAddTagsDomainMapperMember extends Object implements com.broadleafcommerce.data.tracking.core.mapping.DomainMapperMember
When a ProductTag is persisted at the application catalog level during a bulk operation, guarantee that the entity instance is deposited in the product's catalog line.
  • Field Summary

    Fields inherited from interface com.broadleafcommerce.common.extension.data.DataRoutePartitionAware

    ALL_MATCH

    Fields inherited from interface org.springframework.core.Ordered

    HIGHEST_PRECEDENCE, LOWEST_PRECEDENCE
  • Constructor Summary

    Constructors
    Constructor
    Description
    BulkAddTagsDomainMapperMember(ProductRepository<com.broadleafcommerce.data.tracking.core.Trackable> productRepository, com.broadleafcommerce.data.tracking.core.policy.trackable.CatalogFinder<com.broadleafcommerce.data.tracking.core.tenant.domain.Catalog> catalogFinder, com.broadleafcommerce.common.extension.TypeFactory factory)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    <D> D
    fromBusinessDomain(Object businessDomain, D repositoryDomain, com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo)
     
     
    int
    Order early in the mapping pipeline so this is used before the ModelMapperDomainMapperMember so that an exception is not thrown when a catalog is not provided for the new product tags.

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

    Methods inherited from interface com.broadleafcommerce.data.tracking.core.mapping.DomainMapper

    deleteMap, getBusinessDomainType, modifyMap

    Methods inherited from interface com.broadleafcommerce.data.tracking.core.mapping.DomainMapperMember

    fromRepositoryDomain
  • Constructor Details

    • BulkAddTagsDomainMapperMember

      public BulkAddTagsDomainMapperMember(ProductRepository<com.broadleafcommerce.data.tracking.core.Trackable> productRepository, com.broadleafcommerce.data.tracking.core.policy.trackable.CatalogFinder<com.broadleafcommerce.data.tracking.core.tenant.domain.Catalog> catalogFinder, com.broadleafcommerce.common.extension.TypeFactory factory)
  • Method Details

    • getDataRoutePartition

      public String getDataRoutePartition()
      Specified by:
      getDataRoutePartition in interface com.broadleafcommerce.common.extension.data.DataRoutePartitionAware
    • fromBusinessDomain

      public <D> D fromBusinessDomain(Object businessDomain, D repositoryDomain, com.broadleafcommerce.data.tracking.core.context.ContextInfo contextInfo)
      Specified by:
      fromBusinessDomain in interface com.broadleafcommerce.data.tracking.core.mapping.DomainMapperMember
    • getOrder

      public int getOrder()
      Order early in the mapping pipeline so this is used before the ModelMapperDomainMapperMember so that an exception is not thrown when a catalog is not provided for the new product tags.
      Specified by:
      getOrder in interface com.broadleafcommerce.data.tracking.core.mapping.DomainMapperMember
      Specified by:
      getOrder in interface org.springframework.core.Ordered
      Returns:
      The order of precedence in which to run this mapper member.