Class ProductsController

java.lang.Object
de.hybris.platform.ycommercewebservices.v2.controller.BaseController
de.hybris.platform.ycommercewebservices.v2.controller.ProductsController

@Controller @RequestMapping("/{baseSiteId}/products") public class ProductsController extends BaseController
Web Services Controller to expose the functionality of the ProductFacade and SearchFacade.
  • Constructor Details

    • ProductsController

      public ProductsController()
  • Method Details

    • getProducts

      @RequestMapping(value="/search", method=GET) @ResponseBody public ProductSearchPageWsDTO getProducts(@RequestParam(required=false) String query, @RequestParam(defaultValue="0") int currentPage, @RequestParam(defaultValue="20") int pageSize, @RequestParam(required=false) String sort, @RequestParam(required=false) String searchQueryContext, @RequestParam(defaultValue="DEFAULT") String fields, javax.servlet.http.HttpServletResponse response)
    • countProducts

      @RequestMapping(value="/search", method=HEAD) public void countProducts(@RequestParam(required=false) String query, javax.servlet.http.HttpServletResponse response)
    • getProduct

      @RequestMapping(value="/{productCode}", method=GET) @Cacheable(value="productCache", key="T(de.hybris.platform.commercewebservicescommons.cache.CommerceCacheKeyGenerator).generateKey(true,true,#productCode,#fields)") @ResponseBody public ProductWsDTO getProduct(@PathVariable String productCode, @RequestParam(defaultValue="DEFAULT") String fields)
    • getStoreProductStock

      @RequestMapping(value="/{productCode}/stock/{storeName}", method=GET) @ResponseBody public StockWsDTO getStoreProductStock(@PathVariable String baseSiteId, @PathVariable String productCode, @PathVariable String storeName, @RequestParam(defaultValue="DEFAULT") String fields)
    • getLocationProductStock

      @RequestMapping(value="/{productCode}/stock", method=GET) @ResponseBody public StoreFinderStockSearchPageWsDTO getLocationProductStock(@PathVariable String productCode, @RequestParam(required=false) String location, @RequestParam(required=false) Double latitude, @RequestParam(required=false) Double longitude, @RequestParam(required=false,defaultValue="0") int currentPage, @RequestParam(required=false,defaultValue="20") int pageSize, @RequestParam(defaultValue="DEFAULT") String fields, javax.servlet.http.HttpServletResponse response)
    • countProductStockByLocation

      @RequestMapping(value="/{productCode}/stock", method=HEAD) public void countProductStockByLocation(@PathVariable String productCode, @RequestParam(required=false) String location, @RequestParam(required=false) Double latitude, @RequestParam(required=false) Double longitude, javax.servlet.http.HttpServletResponse response)
    • doSearchProductStockByLocation

      protected StoreFinderStockSearchPageData doSearchProductStockByLocation(String productCode, String location, Double latitude, Double longitude, int currentPage, int pageSize)
    • getProductReviews

      @RequestMapping(value="/{productCode}/reviews", method=GET) @ResponseBody public ReviewListWsDTO getProductReviews(@PathVariable String productCode, @RequestParam(required=false) Integer maxCount, @RequestParam(defaultValue="DEFAULT") String fields)
    • createProductReview

      @Deprecated(since="2005", forRemoval=true) @RequestMapping(value="/{productCode}/reviews", method=POST) @ResponseStatus(CREATED) @ResponseBody public ReviewWsDTO createProductReview(@PathVariable String productCode, @RequestParam(defaultValue="DEFAULT") String fields, javax.servlet.http.HttpServletRequest request)
      Deprecated, for removal: This API element is subject to removal in a future version.
      since 2005. Please use createProductReview(String, ReviewWsDTO, String) instead.
    • createProductReview

      @RequestMapping(value="/{productCode}/reviews", method=POST, consumes={"application/json","application/xml"}) @ResponseStatus(CREATED) @ResponseBody public ReviewWsDTO createProductReview(@PathVariable String productCode, @RequestBody ReviewWsDTO review, @RequestParam(defaultValue="DEFAULT") String fields)
    • getProductReferences

      @RequestMapping(value="/{productCode}/references", method=GET) @ResponseBody public ProductReferenceListWsDTO getProductReferences(@PathVariable String productCode, @RequestParam(required=false,defaultValue="2147483647") int pageSize, @RequestParam(required=false) String referenceType, @RequestParam(defaultValue="DEFAULT") String fields)
    • getProductReferenceTypeEnums

      protected List<ProductReferenceTypeEnum> getProductReferenceTypeEnums(String referenceType)
    • createPageableData

      protected PageableData createPageableData(int currentPage, int pageSize, String sort)
    • createGeoPoint

      protected GeoPoint createGeoPoint(Double latitude, Double longitude)
    • getSuggestions

      @RequestMapping(value="/suggestions", method=GET) @ResponseBody public SuggestionListWsDTO getSuggestions(@RequestParam String term, @RequestParam(defaultValue="10") int max, @RequestParam(defaultValue="DEFAULT") String fields)
    • getExpressUpdateProducts

      @Secured("ROLE_TRUSTED_CLIENT") @RequestMapping(value="/expressupdate", method=GET) @ResponseBody public ProductExpressUpdateElementListWsDTO getExpressUpdateProducts(@RequestParam String timestamp, @RequestParam(required=false) String catalog, @RequestParam(defaultValue="DEFAULT") String fields)
    • filterExpressUpdateQueue

      protected void filterExpressUpdateQueue(List<ProductExpressUpdateElementData> products, List<String> catalogInfo)
    • validateAndSplitCatalog

      protected List<String> validateAndSplitCatalog(String catalog)