/// <summary> /// Creates the query to see which products are active for a given catalog, i.e. scope. /// </summary> /// <param name="criteria">Search criteria.</param> /// <returns></returns> /// <exception cref="System.ArgumentException">criteria cannot be null;criteria</exception> /// <exception cref="System.ArgumentException">criteria.Scope cannot be null or empty;criteria.Scope</exception> public virtual SearchAvailableProductsBaseRequest CreateProductRequest(SearchCriteria criteria) { if (criteria == null) { throw new ArgumentNullException(nameof(criteria)); } if (string.IsNullOrWhiteSpace(criteria.Scope)) { throw new ArgumentException(GetMessageOfNullWhiteSpace(nameof(criteria.Scope)), nameof(criteria)); } if (criteria is CategorySearchCriteria categoryCriteria) { return(new SearchAvailableProductsByCategoryRequest() { Query = CreateQuery(criteria.Scope), CategoryName = categoryCriteria.CategoryId }); } else if (criteria is SearchBySkusCriteria searchBySkusCriteria) { var request = new SearchAvailableProductsRequest { Query = CreateQuery(searchBySkusCriteria) }; return(request); } return(CreateProductRequest(criteria.Scope)); }
/// <summary> /// Creates the query to see which products are active for a given catalog, i.e. scope. /// </summary> /// <param name="scopeId">The scope identifier.</param> /// <returns></returns> /// <exception cref="System.ArgumentException">scope id cannot be null or empty;scopeId</exception> public virtual SearchAvailableProductsRequest CreateProductRequest(string scopeId) { if (string.IsNullOrWhiteSpace(scopeId)) { throw new ArgumentException("scope id cannot be null or empty", "scopeId"); } var request = new SearchAvailableProductsRequest { Query = CreateQuery(scopeId) }; return(request); }
/// <summary> /// Creates the query to see which products are active for a given catalog, i.e. scope. /// </summary> /// <param name="scopeId">The scope identifier.</param> /// <returns></returns> /// <exception cref="System.ArgumentException">scope id cannot be null or empty;scopeId</exception> public virtual SearchAvailableProductsRequest CreateProductRequest(string scopeId) { if (string.IsNullOrWhiteSpace(scopeId)) { throw new ArgumentException(GetMessageOfNullWhiteSpace(), nameof(scopeId)); } var request = new SearchAvailableProductsRequest { Query = CreateQuery(scopeId) }; return(request); }