Interface CodeGeneratorService<P extends CodeGenerator>
- All Superinterfaces:
com.broadleafcommerce.data.tracking.core.service.CrudEntityService<P>
- All Known Implementing Classes:
DefaultCodeGeneratorService
public interface CodeGeneratorService<P extends CodeGenerator>
extends com.broadleafcommerce.data.tracking.core.service.CrudEntityService<P>
Base service API for
com.broadleafcommerce.promotion.campaign.domain.CodeGenerator.
Backed by a com.broadleafcommerce.promotion.campaign.repository.CodeGeneratorRepository.- Author:
- Chad Harchar (charchar)
-
Method Summary
Modifier and TypeMethodDescriptioncreateWithoutPersistenceNotification(P businessInstance, com.broadleafcommerce.data.tracking.core.context.ContextInfo context) Creates aCodeGeneratorwithout the persistence notification.org.springframework.data.domain.Page<P>findByCampaignId(String campaignId, org.springframework.data.domain.Pageable page, Class<P> payload, com.broadleafcommerce.data.tracking.core.context.ContextInfo context) readByCampaignIdAndVoucherCodeGenerator(String campaignId, boolean isVoucherCodeGenerator, com.broadleafcommerce.data.tracking.core.context.ContextInfo context) Finds an activeCodeGeneratorthat is for the given campaign id and is for voucher offers.updateQuietly(String id, P updateRequest, com.broadleafcommerce.data.tracking.core.context.ContextInfo context) An alternative toCrudEntityHelper.update(String, Object, ContextInfo, TrackableRepository)that does not callCrudEntityHelper.notify(Trackable, ContextInfo, NotificationStateRepository).Methods inherited from interface com.broadleafcommerce.data.tracking.core.service.CrudEntityService
create, createAll, createAllAllowingPartialSuccess, delete, readAll, readAll, readAll, readAllByContextId, readByContextId, replace, replaceAll, replaceAllAllowingPartialSuccess, update, updateAll, updateAllAllowingPartialSuccess, updateSort
-
Method Details
-
findByCampaignId
-
readByCampaignIdAndVoucherCodeGenerator
Optional<P> readByCampaignIdAndVoucherCodeGenerator(String campaignId, boolean isVoucherCodeGenerator, @Nullable com.broadleafcommerce.data.tracking.core.context.ContextInfo context) Finds an activeCodeGeneratorthat is for the given campaign id and is for voucher offers.- Parameters:
campaignId- the campaign id that the code generator is forisVoucherCodeGenerator- whether this code generator is for voucher offerscontext- context information surrounding sandboxing and multi tenant state- Returns:
- an active code generator that is for the given campaign id and is for voucher offers
-
updateQuietly
P updateQuietly(@NonNull String id, @NonNull P updateRequest, @Nullable com.broadleafcommerce.data.tracking.core.context.ContextInfo context) An alternative toCrudEntityHelper.update(String, Object, ContextInfo, TrackableRepository)that does not callCrudEntityHelper.notify(Trackable, ContextInfo, NotificationStateRepository).- Parameters:
id- the context id of theCodeGeneratorto updateupdateRequest- theCodeGeneratorinstance containing the new values to patch onto the existing instancecontext- context surrounding sandboxing and multitenant state- Returns:
- the fully updated instance
- Throws:
com.broadleafcommerce.common.error.validation.ValidationException- if the updated instance failed validationcom.broadleafcommerce.data.tracking.core.exception.EntityMissingException- if a managed instance corresponding to the given id could not be found
-
createWithoutPersistenceNotification
P createWithoutPersistenceNotification(P businessInstance, @Nullable com.broadleafcommerce.data.tracking.core.context.ContextInfo context) Creates aCodeGeneratorwithout the persistence notification. This is used when you want to manually generate theCampaignCodesinstead of going through theCodeGenerationPersistenceHandler.- Parameters:
businessInstance- the instance ofCodeGeneratorcontext- context surrounding sandboxing and multitenant state- Returns:
- the created instance of
CodeGenerator
-