hiqdev\assetpackagist\repositories\PackageRepository::save PHP Method

save() public method

public save ( AssetPackage $package ) : integer
$package hiqdev\assetpackagist\models\AssetPackage
return integer
    public function save(AssetPackage $package)
    {
        if ($this->exists($package)) {
            return $this->update($package);
        } else {
            return $this->insert($package);
        }
    }

Usage Example

 /**
  * Synchronizes file system packages to the database
  */
 public function actionSyncToDb()
 {
     $packages = $this->packageStorage->listPackages();
     foreach ($packages as $name => $data) {
         $message = "Package %N{$name}%n ";
         $package = AssetPackage::fromFullName($name);
         $package->load();
         $message .= $this->packageRepository->exists($package) ? 'already exists. %BUpdated.%n' : 'does not exist. %GCreated.%n';
         $this->packageRepository->save($package);
         $this->stdout(Console::renderColoredString($message . "\n"));
     }
 }