ProductReadService

Implements \ProductReadServiceInterface

Class ProductReadService

category

System

package

Product

Methods

ProductReadService constructor.

__construct(\ProductRepositoryInterface $productRepo, \ProductListProviderFactoryInterface $listProviderFactory, \ProductCategoryLinkerInterface $productLinker, \UrlRewriteStorage $urlRewriteStorage) 

Arguments

$urlRewriteStorage

\UrlRewriteStorage

Returns a single UrlRewrite instance for the provided content ID and language ID or NULL if no entry was found.

findRewriteUrl(\IdType $productId, \IdType $languageId) : null|\UrlRewrite

Arguments

$productId

\IdType

$languageId

\IdType

Response

null|\UrlRewrite

Returns an UrlRewriteCollection with UrlRewrite instances for the provided rewrite url.

findUrlRewritesByRewriteUrl(\NonEmptyStringType $rewriteUrl) : \UrlRewriteCollection

Arguments

$rewriteUrl

\NonEmptyStringType

Response

\UrlRewriteCollection

Get Active Product List

getActiveProductList(\LanguageCode $languageCode, \IdType|null $categoryId = null, \IdType|null $customerStatusLimit = null) : \ProductListItemCollection

Returns an active products list.

Arguments

$languageCode

\LanguageCode

The language code.

$categoryId

\IdType|null

The category ID of the product list.

$customerStatusLimit

\IdType|null

The customers status limit.

Response

\ProductListItemCollection

Returns a paged product list.

getPagedList(\LanguageCode $languageCode, \Pager|null $pager = null, array $sorters = array()) : \ProductListItemCollection

Arguments

$languageCode

\LanguageCode

Language of location specific data.

$pager

\Pager|null

(Optional) Pager object with pagination information

$sorters

array

(Optional) array of Sorter objects with data sorting information

Response

\ProductListItemCollection

Get Product by ID

getProductById(\IdType $productId) : \StoredProductInterface

Returns a specific product, depending on the provided ID.

Arguments

$productId

\IdType

The ID of the product to return.

Response

\StoredProductInterface

The stored product.

Get Product List

getProductList(\LanguageCode $languageCode, \IdType|null $categoryId = null, \IdType|null $customerStatusLimit = null) : \ProductListItemCollection

Returns a specific product list.

Arguments

$languageCode

\LanguageCode

The language code.

$categoryId

\IdType|null

The category ID of the product list.

$customerStatusLimit

\IdType|null

The customers status limit.

Response

\ProductListItemCollection

Returns the count of all product entries.

getProductsCount() : integer

Response

integer

Returns an UrlRewriteCollection with UrlRewrite instances for the provided content ID.

getRewriteUrls(\IdType $productId) : \UrlRewriteCollection

Arguments

$productId

\IdType

Response

\UrlRewriteCollection

Filters products records by a given ProductSearchCondition object and returns an array with results.

searchProducts(\LanguageCode $languageCode, \ProductSearchCondition $condition, \Pager|null $pager = null, array $sorters = array()) : \ProductListItemCollection

Arguments

$languageCode

\LanguageCode

Language code which should be used for products descriptions etc.

$condition

\ProductSearchCondition

Conditions object for search.

$pager

\Pager|null

(Optional) Pager object with pagination information

$sorters

array

(Optional) array of Sorter objects with data sorting information

Response

\ProductListItemCollection

Count the total of filtered products.

searchProductsCount(\LanguageCode $languageCode, \ProductSearchCondition $condition) : \IntType

Arguments

$languageCode

\LanguageCode

Language code which should be used for products descriptions etc.

$condition

\ProductSearchCondition

Conditions object for search.

Response

\IntType

Properties

productRepo

productRepo : \ProductRepositoryInterface

listProviderFactory

listProviderFactory : \ProductListProviderFactoryInterface

The product category linker.

productLinker : \ProductCategoryLinkerInterface

The url rewrite storage.

urlRewriteStorage : \UrlRewriteStorage
var

Type(s)

\UrlRewriteStorage