@RestController public class VariationController extends PersonalizationAbstractController
Controller exposes functionality for customizations, variations and actions
  • Field Details

  • Constructor Details

    • VariationController

      @Autowired public VariationController(VariationFacade cxVariationFacade, org.springframework.validation.Validator variationValidator)
  • Method Details

    • getVariations

      @RequestMapping(value="/v1/catalogs/{catalog}/catalogVersions/{catalogVersion}/customizations/{customizationCode}/variations", method=GET) public VariationListWsDTO getVariations(@PathVariable String catalog, @PathVariable String catalogVersion, @PathVariable String customizationCode)
      Returns all variations for given customization code
      Parameters:
      customizationCode - customization identifier
      Returns:
      Collection of all variations in given customziation
      Throws:
      NotFoundException - if customization with given code does not exists
    • createVariationListWsDTO

      protected VariationListWsDTO createVariationListWsDTO(List<VariationData> variations)
    • createVariation

      @RequestMapping(value="/v1/catalogs/{catalog}/catalogVersions/{catalogVersion}/customizations/{customizationCode}/variations", method=POST, consumes={"application/json","application/xml"}) @ResponseStatus(CREATED) public org.springframework.http.ResponseEntity<VariationData> createVariation(@PathVariable String catalog, @PathVariable String catalogVersion, @PathVariable String customizationCode, @RequestBody VariationData variation, org.springframework.web.util.UriComponentsBuilder builder)
      Creates variation in given customization
      Returns:
      created variation
      Throws:
      AlreadyExistsException - if variation with given code already exists
      WebserviceValidationException - if provided data is invalid
      NotFoundException - if catalog version doesn't exists
    • updateVariation

      @RequestMapping(value="/v1/catalogs/{catalog}/catalogVersions/{catalogVersion}/customizations/{customizationCode}/variations/{variationCode}", method=PUT, consumes={"application/json","application/xml"}) public VariationData updateVariation(@PathVariable String catalog, @PathVariable String catalogVersion, @PathVariable String customizationCode, @PathVariable String variationCode, @RequestBody VariationData variation)
      Updates variation with given code in customization with given code
      Returns:
      updated variation
      Throws:
      WebserviceValidationException - if provided data is invalid
      NotFoundException - if variation with given code does not exists or customization with given code does not exists or variation and customization are not related
    • deleteVariation

      @RequestMapping(value="/v1/catalogs/{catalog}/catalogVersions/{catalogVersion}/customizations/{customizationCode}/variations/{variationCode}", method=DELETE) @ResponseStatus(NO_CONTENT) public void deleteVariation(@PathVariable String catalog, @PathVariable String catalogVersion, @PathVariable String customizationCode, @PathVariable String variationCode)
      Removes variation with given code
      Throws:
      NotFoundException - if variation with given code does not exists or customization with given code does not exists or variation and customization are not related
    • getVariation

      @RequestMapping(value="/v1/catalogs/{catalog}/catalogVersions/{catalogVersion}/customizations/{customizationCode}/variations/{variationCode}", method=GET) public VariationData getVariation(@PathVariable String catalog, @PathVariable String catalogVersion, @PathVariable String customizationCode, @PathVariable String variationCode)
      Retrieves variation with given code from given customization
      Returns:
      variation with given code
      Throws:
      NotFoundException - if variation with given code does not exists or customization with given code does not exists or variation and customization are not related
    • validateVariation

      protected void validateVariation(VariationData variation)