Class ProductOptionsCustomPersistenceHandler
java.lang.Object
org.broadleafcommerce.openadmin.server.service.handler.CustomPersistenceHandlerAdapter
org.broadleafcommerce.admin.server.service.handler.ProductOptionsCustomPersistenceHandler
- All Implemented Interfaces:
org.broadleafcommerce.openadmin.server.service.handler.CustomPersistenceHandler,org.springframework.core.Ordered
@Component("blProductOptionsCustomPersistenceHandler")
public class ProductOptionsCustomPersistenceHandler
extends org.broadleafcommerce.openadmin.server.service.handler.CustomPersistenceHandlerAdapter
This class is used to prevent updates to Product Options if "Use in Sku generation" is true but no "Allowed Values"
have been set.
- Author:
- Nathan Moore (nathanmoore)
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected org.broadleafcommerce.core.catalog.dao.ProductOptionDaoprotected org.broadleafcommerce.common.sandbox.SandBoxHelperFields inherited from interface org.broadleafcommerce.openadmin.server.service.handler.CustomPersistenceHandler
DEFAULT_ORDERFields inherited from interface org.springframework.core.Ordered
HIGHEST_PRECEDENCE, LOWEST_PRECEDENCE -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptioncanHandleFetch(org.broadleafcommerce.openadmin.dto.PersistencePackage persistencePackage) canHandleUpdate(org.broadleafcommerce.openadmin.dto.PersistencePackage persistencePackage) org.broadleafcommerce.openadmin.dto.DynamicResultSetfetch(org.broadleafcommerce.openadmin.dto.PersistencePackage persistencePackage, org.broadleafcommerce.openadmin.dto.CriteriaTransferObject cto, org.broadleafcommerce.openadmin.server.dao.DynamicEntityDao dynamicEntityDao, org.broadleafcommerce.openadmin.server.service.persistence.module.RecordHelper helper) org.broadleafcommerce.openadmin.dto.Entityupdate(org.broadleafcommerce.openadmin.dto.PersistencePackage persistencePackage, org.broadleafcommerce.openadmin.server.dao.DynamicEntityDao dynamicEntityDao, org.broadleafcommerce.openadmin.server.service.persistence.module.RecordHelper helper) protected booleanvalidateProductOption(org.broadleafcommerce.core.catalog.domain.ProductOption adminInstance, org.broadleafcommerce.openadmin.dto.Entity entity) This function checks if a Product Option's "Use in sku generation" field is set to true without any allowed values set.Methods inherited from class org.broadleafcommerce.openadmin.server.service.handler.CustomPersistenceHandlerAdapter
add, canHandleAdd, canHandleInspect, canHandleRemove, getClassForName, getMetadata, getOrder, getPolymorphicClasses, getResultSet, inspect, isAdornedListOperation, isAssignableFrom, isBasicOperation, isMapOperation, meetsCustomCriteria, remove, willHandleSecurity
-
Field Details
-
productOptionDao
protected org.broadleafcommerce.core.catalog.dao.ProductOptionDao productOptionDao -
sandBoxHelper
protected org.broadleafcommerce.common.sandbox.SandBoxHelper sandBoxHelper
-
-
Constructor Details
-
ProductOptionsCustomPersistenceHandler
public ProductOptionsCustomPersistenceHandler()
-
-
Method Details
-
canHandleUpdate
public Boolean canHandleUpdate(org.broadleafcommerce.openadmin.dto.PersistencePackage persistencePackage) - Specified by:
canHandleUpdatein interfaceorg.broadleafcommerce.openadmin.server.service.handler.CustomPersistenceHandler- Overrides:
canHandleUpdatein classorg.broadleafcommerce.openadmin.server.service.handler.CustomPersistenceHandlerAdapter
-
canHandleFetch
public Boolean canHandleFetch(org.broadleafcommerce.openadmin.dto.PersistencePackage persistencePackage) - Specified by:
canHandleFetchin interfaceorg.broadleafcommerce.openadmin.server.service.handler.CustomPersistenceHandler- Overrides:
canHandleFetchin classorg.broadleafcommerce.openadmin.server.service.handler.CustomPersistenceHandlerAdapter
-
fetch
public org.broadleafcommerce.openadmin.dto.DynamicResultSet fetch(org.broadleafcommerce.openadmin.dto.PersistencePackage persistencePackage, org.broadleafcommerce.openadmin.dto.CriteriaTransferObject cto, org.broadleafcommerce.openadmin.server.dao.DynamicEntityDao dynamicEntityDao, org.broadleafcommerce.openadmin.server.service.persistence.module.RecordHelper helper) throws org.broadleafcommerce.common.exception.ServiceException - Specified by:
fetchin interfaceorg.broadleafcommerce.openadmin.server.service.handler.CustomPersistenceHandler- Overrides:
fetchin classorg.broadleafcommerce.openadmin.server.service.handler.CustomPersistenceHandlerAdapter- Throws:
org.broadleafcommerce.common.exception.ServiceException
-
update
public org.broadleafcommerce.openadmin.dto.Entity update(org.broadleafcommerce.openadmin.dto.PersistencePackage persistencePackage, org.broadleafcommerce.openadmin.server.dao.DynamicEntityDao dynamicEntityDao, org.broadleafcommerce.openadmin.server.service.persistence.module.RecordHelper helper) throws org.broadleafcommerce.common.exception.ServiceException - Specified by:
updatein interfaceorg.broadleafcommerce.openadmin.server.service.handler.CustomPersistenceHandler- Overrides:
updatein classorg.broadleafcommerce.openadmin.server.service.handler.CustomPersistenceHandlerAdapter- Throws:
org.broadleafcommerce.common.exception.ServiceException
-
validateProductOption
protected boolean validateProductOption(org.broadleafcommerce.core.catalog.domain.ProductOption adminInstance, org.broadleafcommerce.openadmin.dto.Entity entity) This function checks if a Product Option's "Use in sku generation" field is set to true without any allowed values set. This is what we are trying to prevent from happening. If "Use in sku generation" is true and there are no Allowed Values, the functions returns true.- Parameters:
adminInstance- : The Product Option being validated- Returns:
- boolean: Default is false. Returns whether the Product Option needs any Allowed Values .
-