/** * {@inheritdoc} */ protected function getConfig(array $config) : array { if (!array_key_exists('database', $config)) { throw new InvalidArgumentException('The gridfs connector requires database configuration.'); } return Arr::only($config, ['database']); }
/** * {@inheritdoc} */ protected function getConfig(array $config) : array { if (!array_key_exists('prefix', $config)) { $config['prefix'] = null; } return Arr::only($config, ['prefix']); }
/** * Sanitize a dataset using rules. * * @param array $rules * @param array $data * * @return array */ public function sanitize(array $rules, array $data) : array { list($data, $rules) = $this->runGlobalSanitizers($rules, $data); $availableRules = Arr::only($rules, array_keys($data)); foreach ($availableRules as $field => $ruleset) { $data[$field] = $this->sanitizeField($data, $field, $ruleset); } return $data; }
/** * {@inheritdoc} */ protected function getClient(array $config) { if (!array_key_exists('baseUri', $config)) { throw new InvalidArgumentException('The WebDav connector requires baseUri configuration.'); } if (!array_key_exists('prefix', $config)) { $config['prefix'] = null; } return new Client(Arr::only($config, ['prefix', 'baseUri'])); }
/** * Get the configuration. * * @param string[] $config * * @throws \InvalidArgumentException * * @return string[] */ protected function getConfig(array $config) : array { if (!array_key_exists('path', $config)) { throw new InvalidArgumentException('The zip connector requires path configuration.'); } if (!array_key_exists('archive', $config)) { $config['archive'] = new ZipArchive(); } if (!array_key_exists('prefix', $config)) { $config['prefix'] = null; } return Arr::only($config, ['path', 'archive', 'prefix']); }
/** * {@inheritdoc} */ protected function getConfig(array $config) : array { if (!array_key_exists('prefix', $config)) { $config['prefix'] = null; } if (!array_key_exists('bucket', $config)) { throw new InvalidArgumentException('The awss3 connector requires a bucket configuration.'); } if (!array_key_exists('options', $config)) { $config['options'] = []; } return Arr::only($config, ['bucket', 'prefix', 'options']); }
/** * {@inheritdoc} */ protected function getConfig(array $config) { if (!array_key_exists('host', $config)) { throw new InvalidArgumentException('The sftp connector requires host configuration.'); } if (!array_key_exists('port', $config)) { throw new InvalidArgumentException('The sftp connector requires port configuration.'); } if (!array_key_exists('username', $config)) { throw new InvalidArgumentException('The sftp connector requires username configuration.'); } if (!array_key_exists('password', $config)) { throw new InvalidArgumentException('The sftp connector requires password configuration.'); } return Arr::only($config, ['host', 'port', 'username', 'password']); }
/** * {@inheritdoc} */ protected function getAuth(array $config) : array { if (!array_key_exists('username', $config) || !array_key_exists('apiKey', $config)) { throw new InvalidArgumentException('The rackspace connector requires authentication.'); } if (!array_key_exists('endpoint', $config)) { throw new InvalidArgumentException('The rackspace connector requires endpoint configuration.'); } if (!array_key_exists('region', $config)) { throw new InvalidArgumentException('The rackspace connector requires region configuration.'); } if (!array_key_exists('container', $config)) { throw new InvalidArgumentException('The rackspace connector requires container configuration.'); } return Arr::only($config, ['username', 'apiKey', 'endpoint', 'region', 'container', 'internal']); }
/** * Get the configuration. * * @param array $config * * @throws \InvalidArgumentException * * @return string[] */ protected function getConfig(array $config) : array { if (!array_key_exists('path', $config)) { throw new InvalidArgumentException('The local connector requires path configuration.'); } if (!array_key_exists('write_flags', $config)) { $config['write_flags'] = LOCK_EX; } if (!array_key_exists('link_handling', $config)) { $config['link_handling'] = Local::DISALLOW_LINKS; } if (!array_key_exists('permissions', $config)) { $config['permissions'] = []; } return Arr::only($config, ['path', 'write_flags', 'link_handling', 'permissions']); }
/** * Create an instance of the Amazon SES Swift Transport driver. * * @param array $config * * @return \Viserio\Mail\Transport\Ses */ protected function createSesDriver(array $config) : SesTransport { $config += ['version' => 'latest', 'service' => 'email']; if ($config['key'] && $config['secret']) { $config['credentials'] = Arr::only($config, ['key', 'secret']); } return new SesTransport(new SesClient($config)); }
/** * Create Sqs connection. * * @return \Viserio\Queue\Connectors\SqsQueue */ protected function createSqsConnection(array $config) : SqsQueue { $config = array_merge(['version' => 'latest', 'http' => ['timeout' => 60, 'connect_timeout' => 60]], $config); if ($config['key'] && $config['secret']) { $config['credentials'] = Arr::only($config, ['key', 'secret']); } return new SqsQueue(new SqsClient($config), $config['queue'], Arr::get($config, 'prefix', '')); }
/** * Get the items with the specified keys. * * @param mixed $keys * * @return static */ public function only($keys) : Collection { $keys = is_array($keys) ? $keys : func_get_args(); return new static(Arr::only($this->items, $keys)); }