Class ChangeContainerOverridableDomainMapperMember
java.lang.Object
com.broadleafcommerce.data.tracking.core.mapping.ChangeContainerOverridableDomainMapperMember
- All Implemented Interfaces:
com.broadleafcommerce.common.extension.data.DataRoutePartitionAware,DomainMapper,DomainMapperMember,org.springframework.core.Ordered
public class ChangeContainerOverridableDomainMapperMember
extends Object
implements DomainMapperMember
A
DomainMapperMember implementation which is responsible for mapping the
ChangeContainer for a ChangeContainerOverridable projection domain over to its
repository domain. This allows the projection domains to support row-level overrides of change
container information during bulk operations.- Author:
- Nick Crum (ncrum)
-
Field Summary
Fields inherited from interface com.broadleafcommerce.common.extension.data.DataRoutePartitionAware
ALL_MATCHFields inherited from interface org.springframework.core.Ordered
HIGHEST_PRECEDENCE, LOWEST_PRECEDENCE -
Constructor Summary
ConstructorsConstructorDescriptionChangeContainerOverridableDomainMapperMember(com.broadleafcommerce.common.extension.TypeFactory typeFactory) -
Method Summary
Modifier and TypeMethodDescription<D> DfromBusinessDomain(Object businessDomain, D repositoryDomain, ContextInfo contextInfo) Map and return a populated repository domain instance, based on information provided in a business domain.intgetOrder()<D,P> D modifyMap(D repositoryDomain, P businessDomain, ContextInfo contextInfo, boolean allowNull) Perform a mapping operation from business domain instance to persistence specific instance, presumably modifying the state of the persistence specific instance.protected <D> DoverrideChangeContainerIfApplicable(Object businessDomain, D repositoryDomain) Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface com.broadleafcommerce.data.tracking.core.mapping.DomainMapper
deleteMap, getBusinessDomainTypeMethods inherited from interface com.broadleafcommerce.data.tracking.core.mapping.DomainMapperMember
fromRepositoryDomain
-
Constructor Details
-
ChangeContainerOverridableDomainMapperMember
public ChangeContainerOverridableDomainMapperMember(com.broadleafcommerce.common.extension.TypeFactory typeFactory)
-
-
Method Details
-
getDataRoutePartition
- Specified by:
getDataRoutePartitionin interfacecom.broadleafcommerce.common.extension.data.DataRoutePartitionAware
-
getOrder
public int getOrder()- Specified by:
getOrderin interfaceDomainMapperMember- Specified by:
getOrderin interfaceorg.springframework.core.Ordered
-
fromBusinessDomain
Description copied from interface:DomainMapperMemberMap and return a populated repository domain instance, based on information provided in a business domain. The passed repositoryDomain parameter is generally transformed and returned.- Specified by:
fromBusinessDomainin interfaceDomainMapperMember- Type Parameters:
D- The repository domain type- Parameters:
businessDomain- The business instance containing the relevant property informationrepositoryDomain- The repository specific instance to affect and returncontextInfo- The context information used to make tracking determinations relevant to sandboxing and multitenant concerns. SeeTrackableRepositoryfor more info on persistence behavior based on context.- Returns:
- The populated repository domain instance. Should return null if no action taken.
-
modifyMap
public <D,P> D modifyMap(D repositoryDomain, P businessDomain, ContextInfo contextInfo, boolean allowNull) Description copied from interface:DomainMapperPerform a mapping operation from business domain instance to persistence specific instance, presumably modifying the state of the persistence specific instance.- Specified by:
modifyMapin interfaceDomainMapper- Type Parameters:
D- The repository domain typeP- The business domain type- Parameters:
repositoryDomain- The persistence domain instance to modifybusinessDomain- The business instance containing changes to map to the repository domaincontextInfo- The context information used to make tracking determinations relevant to sandboxing and multitenant concerns. SeeTrackableRepositoryfor more info on persistence behavior based on context.allowNull- Whether or not null values in properties in the payload instance should be ignored during the mapping operation.- Returns:
- The modified repository domain instance. Return null if no action taken.
-
overrideChangeContainerIfApplicable
-