getParameters() public method

Get parameters (and fallback to job)
public getParameters ( ) : mixed
return mixed
コード例 #1
0
 /**
  * Reindex community indexers
  *
  * @param Aoe_Scheduler_Model_Schedule $schedule
  * @return Aoe_EeIndexerStats_Model_Observer
  */
 public function reindexCeIndexer(Aoe_Scheduler_Model_Schedule $schedule)
 {
     if ($parameters = $schedule->getParameters()) {
         $codes = json_decode($parameters);
         foreach ($codes as $code) {
             if ($process = Mage::getModel('index/indexer')->getProcessByCode($code)) {
                 /* @var $process Mage_Index_Model_Process */
                 $process->reindexAll();
             }
         }
     } else {
         throw new Enterprise_Index_Exception('Set the cron parameters (Ex. ["catalog_category_flat","catalog_product_flat"]) to run the indexing');
     }
     return $this;
 }
コード例 #2
0
ファイル: Test.php プロジェクト: aoepeople/aoe_scheduler
 /**
  * General purpose test task.
  * Behavior can be controlled via parameters
  *
  * @param Aoe_Scheduler_Model_Schedule $schedule
  * @return string
  * @throws Exception
  */
 public function run(Aoe_Scheduler_Model_Schedule $schedule)
 {
     $parameters = $schedule->getParameters();
     if ($parameters) {
         $parameters = json_decode($parameters, true);
     }
     // fake duration
     $duration = 0;
     if ($parameters && isset($parameters['duration'])) {
         $duration = $parameters['duration'];
     }
     sleep($duration);
     /* // testing the error log feature...
        array_keys('ssdsd');
        error_log( "Hello, errors!" );
        $t = I_AM_NOT_DEFINED;
        */
     if ($parameters && $parameters['outcome'] == 'error') {
         return 'ERROR: This schedule has failed.';
     }
     if ($parameters && $parameters['outcome'] == 'nothing') {
         return 'NOTHING: Did not do anything';
     }
     if ($parameters && $parameters['outcome'] == 'repeat') {
         return 'REPEAT';
     }
     if ($parameters && $parameters['outcome'] == 'exception') {
         throw new Exception('This is a dummy exception');
     }
     // Simulating ETA;
     //        $starttime = time();
     //        // $endtime = $starttime + rand(180, 360);
     //        $endtime = $starttime + $duration;
     //        $schedule
     //            ->setEta(strftime('%Y-%m-%d %H:%M:%S', $endtime))
     //            ->save();
     //        while ($endtime > time()) {
     //            sleep(5);
     //            $schedule
     //                ->setProgressMessage('Work in progress. Time spent: ' . (time() - $starttime))
     //                ->setEta(strftime('%Y-%m-%d %H:%M:%S', $endtime))
     //                ->save();
     //        }
     //
     //        $schedule
     //            ->setProgressMessage('')
     //            ->save();
 }