Core/src/Batch/SimpleJobTrait.php
private function setSimpleJobProperties(array $options = [])
    {
        if (!isset($options['identifier'])) {
            throw new \InvalidArgumentException(
                'A valid identifier is required in order to register a job.'
            );
        }

        $options += [
            'configStorage' => null,
        ];

        $this->setSerializableClientOptions($options);
        $identifier = $options['identifier'];
        $configStorage = $options['configStorage'] ?: $this->defaultConfigStorage();

        $result = $configStorage->lock();
        if ($result === false) {
            return false;
        }
        $config = $configStorage->load();
        $config->registerJob(
            $identifier,
            function ($id) use ($identifier, $options) {
                return new SimpleJob($identifier, [$this, 'run'], $id, $options);
            }
        );
        try {
            $result = $configStorage->save($config);
        } finally {
            $configStorage->unlock();
        }
        return $result;
    }
private function setSimpleJobProperties(array $options = [])
    {
        if (!isset($options['identifier'])) {
            throw new \InvalidArgumentException(
                'A valid identifier is required in order to register a job.'
            );
        }

        $options += [
            'configStorage' => null,
        ];

        $this->setSerializableClientOptions($options);
        $identifier = $options['identifier'];
        $configStorage = $options['configStorage'] ?: $this->defaultConfigStorage();

        $result = $configStorage->lock();
        if ($result === false) {
            return false;
        }
        $config = $configStorage->load();
        $config->registerJob(
            $identifier,
            function ($id) use ($identifier, $options) {
                return new SimpleJob($identifier, [$this, 'run'], $id, $options);
            }
        );
        try {
            $result = $configStorage->save($config);
        } finally {
            $configStorage->unlock();
        }
        return $result;
    }
private function setSimpleJobProperties ( array $ options = [ ] ) { if ( ! isset ( $ options [ 'identifier' ] ) ) { throw new \ InvalidArgumentException ( 'A valid identifier is required in order to register a job.' ) ; } $ options += [ 'configStorage' => null , ] ; $ this -> setSerializableClientOptions ( $ options ) ; $ identifier = $ options [ 'identifier' ] ; $ configStorage = $ options [ 'configStorage' ] ? : $ this -> defaultConfigStorage ( ) ; $ result = $ configStorage -> lock ( ) ; if ( $ result === false ) { return false ; } $ config = $ configStorage -> load ( ) ; $ config -> registerJob ( $ identifier , function ( $ id ) use ( $ identifier , $ options ) { return new SimpleJob ( $ identifier , [ $ this , 'run' ] , $ id , $ options ) ; } ) ; try { $ result = $ configStorage -> save ( $ config ) ; } finally { $ configStorage -> unlock ( ) ; } return $ result ; }
Registers this object as a SimpleJob.

@param array $options [optional] {
Configuration options.

@type string $identifier An identifier for the simple job. This
value must be unique across all job configs.
@type ConfigStorageInterface $configStorage The configuration storage
used to save configuration.
@type int $numWorkers The number of workers for this job.
@type array $clientConfig A config used to construct the client upon
which requests will be made.
@type ClosureSerializerInterface $closureSerializer An implementation
responsible for serializing closures used in the
`$clientConfig`. This is especially important when using the
batch daemon. **Defaults to**
{@see Google\Cloud\Core\Batch\OpisClosureSerializer} if the
`opis/closure` library is installed.
}
Registers this object as a SimpleJob .