/**
  * @param array $row
  * @param OrderProductsList $list_of_product_list
  * @return OrderProductsList
  * @throws MonkeyDataMissingInputException
  */
 public function setProductList($row, $list_of_product_list)
 {
     $order_id = $row['order_id'];
     unset($row['order_id']);
     $product_bean = new ProductBean($row);
     $product_bean->validate();
     if ($product_list_bean = $list_of_product_list->getBeanById($order_id)) {
         $product_list_bean->getProduct_list()->addBean($product_bean);
         $list_of_product_list->addBean($product_list_bean);
     } else {
         $product_list = new ProductsList();
         $product_list->addBean($product_bean);
         $product_list_bean = new OrderProductBeans(array("id" => $order_id, "product_list" => $product_list));
         $list_of_product_list->addBean($product_list_bean);
     }
     return $list_of_product_list;
 }