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 \DeliciousBrains\WP_Offload_Media\Gcp\Google\Cloud\Core\Batch\SimpleJob($identifier, [$this, 'run'], $id, $options); }); try { $result = $configStorage->save($config); } finally { $configStorage->unlock(); } return $result; } private function defaultConfigStorage() { if ($this->isSysvIPCLoaded() && $this->isDaemonRunning()) { return new \DeliciousBrains\WP_Offload_Media\Gcp\Google\Cloud\Core\Batch\SysvConfigStorage(); } else { return \DeliciousBrains\WP_Offload_Media\Gcp\Google\Cloud\Core\Batch\InMemoryConfigStorage::getInstance(); } } }