original_string: protected function _getProductData(Product $product, ProductIterator $children)
      {
          $categoryIds = $this->categoryRepository->getCategoryIds($product);
          $productData = new IndexDocument(array(
              'id' => $product->getSolrId(), // primary identifier, must be unique
              'product_id' => $product->getId(),
              'category' => $categoryIds, // @todo get category ids from parent anchor categories as well
              'category_name_t_mv' => $this->categoryRepository->getCategoryNames($categoryIds, $product->getStoreId()),
              'store_id' => $product->getStoreId(),
              'content_type' => self::CONTENT_TYPE,
              'is_visible_in_catalog_i' => intval($product->isVisibleInCatalog()),
              'is_visible_in_search_i' => intval($product->isVisibleInSearch()),
              'has_special_price_i' => intval($product->hasSpecialPrice()),
              'is_in_stock_i' => intval($product->isInStock()),
          ));
  
          $this->_addBoostToProductData($product, $productData);
  
          $this->_addFacetsToProductData($product, $productData, $children);
  
          $this->_addSearchDataToProductData($product, $productData, $children);
  
          $this->_addSortingDataToProductData($product, $productData);
  
          $this->_addResultHtmlToProductData($product, $productData);
  
          $this->_addCategoryProductPositionsToProductData($product, $productData);
  
          $this->eventDispatcher->dispatch('integernet_solr_get_product_data', array(
              'product' => $product,
              'product_data' => $productData,
              'children' => $children,
          ));
  
          return $productData;
      }
code: protected function _getProductData(Product $product, ProductIterator $children)
      {
          $categoryIds = $this->categoryRepository->getCategoryIds($product);
          $productData = new IndexDocument(array(
              'id' => $product->getSolrId(), // primary identifier, must be unique
              'product_id' => $product->getId(),
              'category' => $categoryIds, // @todo get category ids from parent anchor categories as well
              'category_name_t_mv' => $this->categoryRepository->getCategoryNames($categoryIds, $product->getStoreId()),
              'store_id' => $product->getStoreId(),
              'content_type' => self::CONTENT_TYPE,
              'is_visible_in_catalog_i' => intval($product->isVisibleInCatalog()),
              'is_visible_in_search_i' => intval($product->isVisibleInSearch()),
              'has_special_price_i' => intval($product->hasSpecialPrice()),
              'is_in_stock_i' => intval($product->isInStock()),
          ));
  
          $this->_addBoostToProductData($product, $productData);
  
          $this->_addFacetsToProductData($product, $productData, $children);
  
          $this->_addSearchDataToProductData($product, $productData, $children);
  
          $this->_addSortingDataToProductData($product, $productData);
  
          $this->_addResultHtmlToProductData($product, $productData);
  
          $this->_addCategoryProductPositionsToProductData($product, $productData);
  
          $this->eventDispatcher->dispatch('integernet_solr_get_product_data', array(
              'product' => $product,
              'product_data' => $productData,
              'children' => $children,
          ));
  
          return $productData;
      }
code_tokens: protected function _getProductData ( Product $ product , ProductIterator $ children ) { $ categoryIds = $ this -> categoryRepository -> getCategoryIds ( $ product ) ; $ productData = new IndexDocument ( array ( 'id' => $ product -> getSolrId ( ) , // primary identifier, must be unique 'product_id' => $ product -> getId ( ) , 'category' => $ categoryIds , // @todo get category ids from parent anchor categories as well 'category_name_t_mv' => $ this -> categoryRepository -> getCategoryNames ( $ categoryIds , $ product -> getStoreId ( ) ) , 'store_id' => $ product -> getStoreId ( ) , 'content_type' => self :: CONTENT_TYPE , 'is_visible_in_catalog_i' => intval ( $ product -> isVisibleInCatalog ( ) ) , 'is_visible_in_search_i' => intval ( $ product -> isVisibleInSearch ( ) ) , 'has_special_price_i' => intval ( $ product -> hasSpecialPrice ( ) ) , 'is_in_stock_i' => intval ( $ product -> isInStock ( ) ) , ) ) ; $ this -> _addBoostToProductData ( $ product , $ productData ) ; $ this -> _addFacetsToProductData ( $ product , $ productData , $ children ) ; $ this -> _addSearchDataToProductData ( $ product , $ productData , $ children ) ; $ this -> _addSortingDataToProductData ( $ product , $ productData ) ; $ this -> _addResultHtmlToProductData ( $ product , $ productData ) ; $ this -> _addCategoryProductPositionsToProductData ( $ product , $ productData ) ; $ this -> eventDispatcher -> dispatch ( 'integernet_solr_get_product_data' , array ( 'product' => $ product , 'product_data' => $ productData , 'children' => $ children , ) ) ; return $ productData ; }
docstring: Generate single product data for Solr
  
  @param Product $product
  @param ProductIterator $children
  @return IndexDocument
docstring_tokens: Generate single product data for Solr