Class DefaultProductReferenceService
java.lang.Object
de.hybris.platform.servicelayer.internal.service.AbstractService
de.hybris.platform.servicelayer.internal.service.AbstractBusinessService
de.hybris.platform.catalog.references.impl.DefaultProductReferenceService
- All Implemented Interfaces:
ProductReferenceService,Serializable,org.springframework.beans.factory.Aware,org.springframework.beans.factory.BeanNameAware,org.springframework.beans.factory.InitializingBean
public class DefaultProductReferenceService
extends AbstractBusinessService
implements ProductReferenceService
Default implementation of
ProductReferenceService- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class de.hybris.platform.servicelayer.internal.service.AbstractService
AbstractService.SerializableDTO -
Field Summary
Fields inherited from class de.hybris.platform.servicelayer.internal.service.AbstractBusinessService
modelService, sessionService, txManagerFields inherited from class de.hybris.platform.servicelayer.internal.service.AbstractService
tenant -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptiongetProductReferences(String qualifier, ProductModel source, ProductModel target, boolean activeOnly) ReturnsProductReferenceModels that join the two given products in the given source/target configuration having the givenProductReferenceModel.QUALIFIERvalue.getProductReferencesForSourceAndTarget(ProductModel source, ProductModel target, boolean activeOnly) Returns allProductReferenceModels that join the two given products in the given (persisted) source/target configuration.getProductReferencesForSourceProduct(ProductModel source, ProductReferenceTypeEnum referenceType, boolean activeOnly) Returns allProductReferenceModels for the given (persisted) sourceProductModeland for the specificProductReferenceTypeEnum.getProductReferencesForTargetProduct(ProductModel target, ProductReferenceTypeEnum referenceType, boolean activeOnly) Returns allProductReferenceModels for the given (persisted) targetProductModeland for the specificProductReferenceTypeEnum.voidsetProductReferencesDao(ProductReferencesDao productReferencesDao) Methods inherited from class de.hybris.platform.servicelayer.internal.service.AbstractBusinessService
getModelService, getSessionService, getTxManager, setModelService, setSessionService, setTxManagerMethods inherited from class de.hybris.platform.servicelayer.internal.service.AbstractService
afterPropertiesSet, getCurrentTenant, setBeanName, setCurrentTenant, writeReplace
-
Constructor Details
-
DefaultProductReferenceService
public DefaultProductReferenceService()
-
-
Method Details
-
getProductReferences
public Collection<ProductReferenceModel> getProductReferences(String qualifier, ProductModel source, ProductModel target, boolean activeOnly) Description copied from interface:ProductReferenceServiceReturnsProductReferenceModels that join the two given products in the given source/target configuration having the givenProductReferenceModel.QUALIFIERvalue.- Specified by:
getProductReferencesin interfaceProductReferenceService- Parameters:
qualifier- the desiredProductReferenceModel.QUALIFIER. If this argument isnullor empty string, it will be ignored as a search criterion.source- the sourceProductModeltarget- the targetProductModelactiveOnly- - iftrue, only active Product references will be returned.- Returns:
- Collection of the
ProductReferenceModels or empty list.
-
getProductReferencesForSourceAndTarget
public Collection<ProductReferenceModel> getProductReferencesForSourceAndTarget(ProductModel source, ProductModel target, boolean activeOnly) Description copied from interface:ProductReferenceServiceReturns allProductReferenceModels that join the two given products in the given (persisted) source/target configuration. One can get multipleProductReferenceModels as one product may reference another in different way (differentProductReferenceModel.REFERENCETYPE) Example: two products can be joined by a reference ofProductReferenceTypeEnum.ACCESSORIESandProductReferenceTypeEnum.CROSSELLINGtypes, which means that one is an accessory of the other and - at the same time - they are configured in the cross-selling strategy.- Specified by:
getProductReferencesForSourceAndTargetin interfaceProductReferenceService- Parameters:
source- the sourceProductModeltarget- the targetProductModelactiveOnly- - iftrue, only active Product references will be returned.- Returns:
- Collection of the
ProductReferenceModels or empty list.
-
getProductReferencesForSourceProduct
public Collection<ProductReferenceModel> getProductReferencesForSourceProduct(ProductModel source, ProductReferenceTypeEnum referenceType, boolean activeOnly) Description copied from interface:ProductReferenceServiceReturns allProductReferenceModels for the given (persisted) sourceProductModeland for the specificProductReferenceTypeEnum. Example: UsingProductReferenceTypeEnum.ACCESSORIESreturns the related (accessories)ProductReferenceModels, NOT the actual products (accessories), useProductReferenceModel.getTarget()to get the actual accessory product.- Specified by:
getProductReferencesForSourceProductin interfaceProductReferenceService- Parameters:
source- the sourceProductModelreferenceType- the type of the reference -ProductReferenceTypeEnum. If this argument isnull, the productReferences of all types will be returned.activeOnly- - iftrue, only active product references will be returned.- Returns:
- a collection of
ProductReferenceModels or an empty list if there are no source references for the given product
-
getProductReferencesForTargetProduct
public Collection<ProductReferenceModel> getProductReferencesForTargetProduct(ProductModel target, ProductReferenceTypeEnum referenceType, boolean activeOnly) Description copied from interface:ProductReferenceServiceReturns allProductReferenceModels for the given (persisted) targetProductModeland for the specificProductReferenceTypeEnum. Example: UsingProductReferenceTypeEnum.CROSSELLINGreturns the related (for cross selling)ProductReferenceModels, NOT the actual cross selled (source) products, useProductReferenceModel.getSource()to get the source product of the cross selling.- Specified by:
getProductReferencesForTargetProductin interfaceProductReferenceService- Parameters:
target- the targetProductModelreferenceType- the type of the reference -ProductReferenceTypeEnum. If this argument isnull, the productReferences of all types will be returned.activeOnly- - iftrue, only active product references will be returned.- Returns:
- a collection of
ProductReferenceModels or empty list if there are no target references for the given product.
-
setProductReferencesDao
-