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 / src / Processors / SimpleResultProcessor.php
Size: Mime:
<?php

namespace CrazyFactory\Jobs\Processors;


use CrazyFactory\Jobs\IJobResultProcessor;
use CrazyFactory\Jobs\JobConfig;
use CrazyFactory\Jobs\JobResult;

class SimpleResultProcessor implements IJobResultProcessor
{
    protected $fn = null;

    /**
     * SimpleResultProcessor constructor.
     *
     * @param callable $fn
     */
    public function __construct(callable $fn)
    {
        $this->fn = $fn;
    }

    /**
     * @param JobResult $jobResult
     * @param JobConfig $jobConfig
     *
     * @return boolean|void
     */
    public function process(JobResult $jobResult, JobConfig $jobConfig)
    {
        if (is_callable($this->fn)) {
            return call_user_func_array($this->fn, func_get_args());
        }

        return null;
    }
}