Class CampaignEndpoint
- java.lang.Object
-
- com.broadleafcommerce.promotion.campaign.web.endpoint.CampaignEndpoint
-
@FrameworkRestController @FrameworkMapping("/campaigns") @DataRouteByExample(Campaign.class) public class CampaignEndpoint extends Object
-
-
Field Summary
Fields Modifier and Type Field Description static String
BASE_URI
protected CampaignCodeService<CampaignCode>
codeService
protected CodeGenerationService
generationService
protected CodeGeneratorService<CodeGenerator>
generatorService
protected CampaignService<Campaign>
service
-
Constructor Summary
Constructors Constructor Description CampaignEndpoint(CampaignService<Campaign> service, CampaignCodeService<CampaignCode> codeService, CodeGeneratorService<CodeGenerator> generatorService, CodeGenerationService generationService)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Campaign
createCampaign(javax.servlet.http.HttpServletRequest request, com.broadleafcommerce.data.tracking.core.context.ContextInfo context, Campaign req)
CampaignCode
createCampaignCode(javax.servlet.http.HttpServletRequest request, com.broadleafcommerce.data.tracking.core.context.ContextInfo context, String id, CampaignCode req)
void
deleteCampaign(javax.servlet.http.HttpServletRequest request, com.broadleafcommerce.data.tracking.core.context.ContextInfo context, String id)
void
deleteCampaignCode(javax.servlet.http.HttpServletRequest request, com.broadleafcommerce.data.tracking.core.context.ContextInfo context, String id, String codeId)
CodeGenerator
generateCodes(javax.servlet.http.HttpServletRequest request, com.broadleafcommerce.data.tracking.core.context.ContextInfo context, String id, CodeGenerator req)
CodeGenerationResult
generateCodesForVouchers(javax.servlet.http.HttpServletRequest request, com.broadleafcommerce.data.tracking.core.context.ContextInfo context, VoucherCodeGenerationRequest voucherCodeGenerationReq)
GenerateCampaignCodes
based on the givenVoucherCodeGenerationRequest
.org.springframework.data.domain.Page<CodeGenerator>
generateCodesStatus(javax.servlet.http.HttpServletRequest request, com.broadleafcommerce.data.tracking.core.context.ContextInfo context, String id, org.springframework.data.domain.Pageable page)
CodeGenerator
generateCodeStatus(javax.servlet.http.HttpServletRequest request, com.broadleafcommerce.data.tracking.core.context.ContextInfo context, String id, String generatorId)
org.springframework.data.domain.Page<Campaign>
readAllCampaigns(javax.servlet.http.HttpServletRequest request, com.broadleafcommerce.data.tracking.core.context.ContextInfo context, String query, org.springframework.data.domain.Pageable page, cz.jirutka.rsql.parser.ast.Node filters)
Campaign
readCampaignById(javax.servlet.http.HttpServletRequest request, com.broadleafcommerce.data.tracking.core.context.ContextInfo context, String campaignId)
CampaignCode
readCampaignCodeById(javax.servlet.http.HttpServletRequest request, com.broadleafcommerce.data.tracking.core.context.ContextInfo context, String id, String codeId)
org.springframework.data.domain.Page<CampaignCode>
readCampaignCodesByCampaign(javax.servlet.http.HttpServletRequest request, com.broadleafcommerce.data.tracking.core.context.ContextInfo context, String id, org.springframework.data.domain.Pageable page, cz.jirutka.rsql.parser.ast.Node filters)
Campaign
replaceCampaign(javax.servlet.http.HttpServletRequest request, com.broadleafcommerce.data.tracking.core.context.ContextInfo context, String id, Campaign req)
CampaignCode
replaceCampaignCode(javax.servlet.http.HttpServletRequest request, com.broadleafcommerce.data.tracking.core.context.ContextInfo context, String id, String codeId, CampaignCode req)
Campaign
updateCampaign(javax.servlet.http.HttpServletRequest request, com.broadleafcommerce.data.tracking.core.context.ContextInfo context, String id, Campaign req)
CampaignCode
updateCampaignCode(javax.servlet.http.HttpServletRequest request, com.broadleafcommerce.data.tracking.core.context.ContextInfo context, String id, String codeId, CampaignCode req)
-
-
-
Field Detail
-
BASE_URI
public static final String BASE_URI
- See Also:
- Constant Field Values
-
service
protected final CampaignService<Campaign> service
-
codeService
protected final CampaignCodeService<CampaignCode> codeService
-
generatorService
protected final CodeGeneratorService<CodeGenerator> generatorService
-
generationService
protected final CodeGenerationService generationService
-
-
Constructor Detail
-
CampaignEndpoint
public CampaignEndpoint(CampaignService<Campaign> service, CampaignCodeService<CampaignCode> codeService, CodeGeneratorService<CodeGenerator> generatorService, CodeGenerationService generationService)
-
-
Method Detail
-
readAllCampaigns
@FrameworkGetMapping @Policy(permissionRoots="CAMPAIGN") public org.springframework.data.domain.Page<Campaign> readAllCampaigns(javax.servlet.http.HttpServletRequest request, @ContextOperation com.broadleafcommerce.data.tracking.core.context.ContextInfo context, @RequestParam(value="q",required=false) String query, @PageableDefault(size=50) org.springframework.data.domain.Pageable page, cz.jirutka.rsql.parser.ast.Node filters)
-
readCampaignById
@FrameworkGetMapping("/{id}") @Policy(permissionRoots="CAMPAIGN") public Campaign readCampaignById(javax.servlet.http.HttpServletRequest request, @ContextOperation com.broadleafcommerce.data.tracking.core.context.ContextInfo context, @PathVariable("id") String campaignId)
-
updateCampaign
@FrameworkPatchMapping(value="/{id}", consumes="application/json") @Policy(permissionRoots="CAMPAIGN") public Campaign updateCampaign(javax.servlet.http.HttpServletRequest request, @ContextOperation(UPDATE) com.broadleafcommerce.data.tracking.core.context.ContextInfo context, @PathVariable("id") String id, @RequestBody Campaign req)
-
replaceCampaign
@FrameworkPutMapping(value="/{id}", consumes="application/json") @Policy(permissionRoots="CAMPAIGN") public Campaign replaceCampaign(javax.servlet.http.HttpServletRequest request, @ContextOperation(UPDATE) com.broadleafcommerce.data.tracking.core.context.ContextInfo context, @PathVariable("id") String id, @RequestBody Campaign req)
-
createCampaign
@FrameworkPostMapping(consumes="application/json") @Policy(permissionRoots="CAMPAIGN") public Campaign createCampaign(javax.servlet.http.HttpServletRequest request, @ContextOperation(CREATE) com.broadleafcommerce.data.tracking.core.context.ContextInfo context, @RequestBody Campaign req)
-
deleteCampaign
@FrameworkDeleteMapping("/{id}") @Policy(permissionRoots="CAMPAIGN") public void deleteCampaign(javax.servlet.http.HttpServletRequest request, @ContextOperation(DELETE) com.broadleafcommerce.data.tracking.core.context.ContextInfo context, @PathVariable("id") String id)
-
readCampaignCodeById
@FrameworkGetMapping("/{id}/campaign-codes/{codeId}") @Policy(permissionRoots={"CAMPAIGN","CAMPAIGN_CODE"}) public CampaignCode readCampaignCodeById(javax.servlet.http.HttpServletRequest request, @ContextOperation com.broadleafcommerce.data.tracking.core.context.ContextInfo context, @PathVariable("id") String id, @PathVariable("codeId") String codeId)
-
readCampaignCodesByCampaign
@FrameworkGetMapping("/{id}/campaign-codes") @Policy(permissionRoots={"CAMPAIGN","CAMPAIGN_CODE"}) public org.springframework.data.domain.Page<CampaignCode> readCampaignCodesByCampaign(javax.servlet.http.HttpServletRequest request, @ContextOperation com.broadleafcommerce.data.tracking.core.context.ContextInfo context, @PathVariable("id") String id, @PageableDefault(size=50) org.springframework.data.domain.Pageable page, cz.jirutka.rsql.parser.ast.Node filters)
-
updateCampaignCode
@FrameworkPatchMapping(value="/{id}/campaign-codes/{codeId}", consumes="application/json") @Policy(permissionRoots={"CAMPAIGN","CAMPAIGN_CODE"}) public CampaignCode updateCampaignCode(javax.servlet.http.HttpServletRequest request, @ContextOperation(UPDATE) com.broadleafcommerce.data.tracking.core.context.ContextInfo context, @PathVariable("id") String id, @PathVariable("codeId") String codeId, @RequestBody CampaignCode req)
-
replaceCampaignCode
@FrameworkPutMapping(value="/{id}/campaign-codes/{codeId}", consumes="application/json") @Policy(permissionRoots={"CAMPAIGN","CAMPAIGN_CODE"}) public CampaignCode replaceCampaignCode(javax.servlet.http.HttpServletRequest request, @ContextOperation(UPDATE) com.broadleafcommerce.data.tracking.core.context.ContextInfo context, @PathVariable("id") String id, @PathVariable("codeId") String codeId, @RequestBody CampaignCode req)
-
createCampaignCode
@FrameworkPostMapping(value="/{id}/campaign-codes", consumes="application/json") @Policy(permissionRoots={"CAMPAIGN","CAMPAIGN_CODE"}) public CampaignCode createCampaignCode(javax.servlet.http.HttpServletRequest request, @ContextOperation(CREATE) com.broadleafcommerce.data.tracking.core.context.ContextInfo context, @PathVariable("id") String id, @RequestBody CampaignCode req)
-
deleteCampaignCode
@FrameworkDeleteMapping("/{id}/campaign-codes/{codeId}") @Policy(permissionRoots={"CAMPAIGN","CAMPAIGN_CODE"}) public void deleteCampaignCode(javax.servlet.http.HttpServletRequest request, @ContextOperation(DELETE) com.broadleafcommerce.data.tracking.core.context.ContextInfo context, @PathVariable("id") String id, @PathVariable("codeId") String codeId)
-
generateCodes
@FrameworkPostMapping(value="/{id}/generate-codes", consumes="application/json") @Policy(permissionRoots={"CAMPAIGN","CAMPAIGN_CODE"}) public CodeGenerator generateCodes(javax.servlet.http.HttpServletRequest request, @ContextOperation(CREATE) com.broadleafcommerce.data.tracking.core.context.ContextInfo context, @PathVariable("id") String id, @RequestBody CodeGenerator req)
-
generateCodesForVouchers
@FrameworkPostMapping(value="/generate-voucher-codes", consumes="application/json") @Policy(permissionRoots={"CAMPAIGN","CAMPAIGN_CODE"}) public CodeGenerationResult generateCodesForVouchers(javax.servlet.http.HttpServletRequest request, @ContextOperation(CREATE) com.broadleafcommerce.data.tracking.core.context.ContextInfo context, @RequestBody VoucherCodeGenerationRequest voucherCodeGenerationReq)
GenerateCampaignCodes
based on the givenVoucherCodeGenerationRequest
.This endpoint will generate and return
CampaignCodes
in the same request, therefore this is only meant for small batches of code generations.- Parameters:
request
-HttpServletRequest
for the requestcontext
- context info for multitenant and sandbox conditionsvoucherCodeGenerationReq
- theVoucherCodeGenerationRequest
to generate the campaign codes off of- Returns:
- a
CodeGenerationResult
containing generatedCampaignCodes
and errors based on the givenVoucherCodeGenerationRequest
-
generateCodesStatus
@FrameworkGetMapping("/{id}/generate-code-status") @Policy(permissionRoots={"CAMPAIGN","CAMPAIGN_CODE"}) public org.springframework.data.domain.Page<CodeGenerator> generateCodesStatus(javax.servlet.http.HttpServletRequest request, @ContextOperation com.broadleafcommerce.data.tracking.core.context.ContextInfo context, @PathVariable("id") String id, @PageableDefault(size=50) org.springframework.data.domain.Pageable page)
-
generateCodeStatus
@FrameworkGetMapping("/{id}/generate-code-status/{generatorId}") @Policy(permissionRoots={"CAMPAIGN","CAMPAIGN_CODE"}) public CodeGenerator generateCodeStatus(javax.servlet.http.HttpServletRequest request, @ContextOperation com.broadleafcommerce.data.tracking.core.context.ContextInfo context, @PathVariable("id") String id, @PathVariable("generatorId") String generatorId)
-
-