Why Gemfury? Push, build, and install  RubyGems npm packages Python packages Maven artifacts PHP packages Go Modules Debian packages RPM packages NuGet packages

Repository URL to install this package:

Details    
crazyfactory/jobs / examples / 02_simple_runtime_processor.php
Size: Mime:
<?php

use CrazyFactory\Jobs\JobConfig;
use CrazyFactory\Jobs\Processors\SimpleRuntimeProcessor;
use CrazyFactory\Jobs\Utils\Format;

require_once __DIR__.'/../vendor/autoload.php';

// instantiate the manager
$jobManager = new \CrazyFactory\Jobs\JobManager();

// create a primitice job configuration :)
$jobConfig = new JobConfig([
    'name' => 'dance',
    'cmd' => 'php ' . __DIR__ . '/jobs/dance_job.php',
    'processRuntimeEvery' => 1,
]);

// Add it to the manager
$jobManager->withJob($jobConfig);


// Add a simple result processor to applaud!
$jobManager->withRuntimeProcessor(new SimpleRuntimeProcessor(function($seconds) {
    echo "\n[PROCESSOR] running for " . Format::secondsToTimeElapsedString($seconds) . "\n";
}));

// Execute by name
$jobManager->run('dance');