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,java.io.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 ofProductReferenceService- See Also:
- Serialized Form
-
-
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, txManager
-
Fields inherited from class de.hybris.platform.servicelayer.internal.service.AbstractService
tenant
-
-
Constructor Summary
Constructors Constructor Description DefaultProductReferenceService()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.util.Collection<ProductReferenceModel>getProductReferences(java.lang.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.java.util.Collection<ProductReferenceModel>getProductReferencesForSourceAndTarget(ProductModel source, ProductModel target, boolean activeOnly)Returns allProductReferenceModels that join the two given products in the given (persisted) source/target configuration.java.util.Collection<ProductReferenceModel>getProductReferencesForSourceProduct(ProductModel source, ProductReferenceTypeEnum referenceType, boolean activeOnly)Returns allProductReferenceModels for the given (persisted) sourceProductModeland for the specificProductReferenceTypeEnum.java.util.Collection<ProductReferenceModel>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, setTxManager
-
Methods inherited from class de.hybris.platform.servicelayer.internal.service.AbstractService
afterPropertiesSet, getCurrentTenant, setBeanName, setCurrentTenant, writeReplace
-
-
-
-
Method Detail
-
getProductReferences
public java.util.Collection<ProductReferenceModel> getProductReferences(java.lang.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 java.util.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 java.util.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 java.util.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
public void setProductReferencesDao(ProductReferencesDao productReferencesDao)
-
-