/**
  * singleton pattern
  *
  * @return PlentyItemDataPushItems
  */
 public static function getInstance()
 {
     if (!isset(self::$instance) || !self::$instance instanceof PlentyItemDataPushItems) {
         self::$instance = new PlentyItemDataPushItems();
     }
     return self::$instance;
 }
 public function execute()
 {
     /*
      * collect some texts for new items
      */
     $plentyItemDataCollectorWilliamShakespeare = new PlentyItemDataCollectorWilliamShakespeare();
     $plentyItemDataCollectorWilliamShakespeare->setQuantity($this->getQuantity());
     $plentyItemDataCollectorWilliamShakespeare->setLang($this->getLang());
     $plentyItemDataCollectorWilliamShakespeare->execute();
     $this->itemList = $plentyItemDataCollectorWilliamShakespeare->getItemList();
     /*
      * add prices, availability options ...
      */
     $this->addMoreData();
     /*
      * push items to api
      */
     PlentyItemDataPushItems::getInstance()->setWarehouseId($this->warehouseId)->pushItems($this->itemList);
 }