/**
  * @param Package $package
  * @param bool $stopPropagation
  * @return $this
  */
 public function setPackage(Package $package = null, $stopPropagation = false)
 {
     if (!$stopPropagation) {
         if (!is_null($this->package)) {
             $this->package->removeProduct($this, true);
         }
         $package->addProduct($this, true);
     }
     $this->package = $package;
     return $this;
 }