Skip to content

Commit b5f0caa

Browse files
authored
Use a visibility converter service instead of a string (#309)
1 parent 23d7186 commit b5f0caa

File tree

5 files changed

+16
-3
lines changed

5 files changed

+16
-3
lines changed

doc/adapter_async_aws_s3.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ the S3 client at [async-aws.com](https://async-aws.com/clients/) or use the
88
```yml
99
services:
1010
acme.async.portable_visibility_converter:
11-
class: League\Flysystem\AsyncAwsS3\PortableVisibilityConverter:
11+
class: League\Flysystem\AsyncAwsS3\PortableVisibilityConverter
1212

1313
acme.async_s3_client:
1414
class: AsyncAws\S3\S3Client

doc/adapter_awss3.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,9 @@ This version requires you to use the "v4" of the signature.
1111

1212
```yml
1313
services:
14+
acme.awss3v3.portable_visibility_converter:
15+
class: League\Flysystem\AwsS3V3\PortableVisibilityConverter
16+
1417
acme.s3_client:
1518
class: Aws\S3\S3Client
1619
arguments:
@@ -32,6 +35,7 @@ oneup_flysystem:
3235
client: acme.s3_client
3336
bucket: 'bucket-name'
3437
prefix: 'path/prefix' # Optional path prefix, you can set empty string
38+
visibilityConverter: acme.awss3v3.portable_visibility_converter
3539
```
3640

3741
For more details on the other parameters, take a look at the [Flysystem documentation](https://flysystem.thephpleague.com/v2/docs/adapter/aws-s3-v3/).

doc/adapter_ftp.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,9 @@ You have to provide at least a value for the `host` key.
66
```yml
77
# app/config/config.yml
88
oneup_flysystem:
9+
acme.ftp.portable_visibility_converter:
10+
class: League\Flysystem\UnixVisibility\PortableVisibilityConverter
11+
912
adapters:
1013
my_adapter:
1114
ftp:
@@ -14,6 +17,7 @@ oneup_flysystem:
1417
root: '/upload' # required
1518
username: 'username' # required
1619
password: 'password' # required
20+
visibilityConverter: acme.ftp.portable_visibility_converter
1721
```
1822
1923
For more details on the other parameters, take a look at the [Flysystem documentation](https://flysystem.thephpleague.com/v2/docs/adapter/ftp/).

src/DependencyInjection/Factory/Adapter/AwsS3V3Factory.php

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,12 +19,14 @@ public function getKey(): string
1919

2020
public function create(ContainerBuilder $container, string $id, array $config): void
2121
{
22+
$visibilityConverter = $config['visibilityConverter'] ? new Reference($config['visibilityConverter']) : null;
23+
2224
$container
2325
->setDefinition($id, new ChildDefinition('oneup_flysystem.adapter.awss3v3'))
2426
->replaceArgument(0, new Reference($config['client']))
2527
->replaceArgument(1, $config['bucket'])
2628
->replaceArgument(2, $config['prefix'])
27-
->replaceArgument(3, $config['visibilityConverter'])
29+
->replaceArgument(3, $visibilityConverter)
2830
->replaceArgument(4, $config['mimeTypeDetector'])
2931
->replaceArgument(5, (array) $config['options'])
3032
->replaceArgument(6, $config['streamReads'])

src/DependencyInjection/Factory/Adapter/FtpFactory.php

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@
1010
use Symfony\Component\DependencyInjection\ChildDefinition;
1111
use Symfony\Component\DependencyInjection\ContainerBuilder;
1212
use Symfony\Component\DependencyInjection\Definition;
13+
use Symfony\Component\DependencyInjection\Reference;
1314

1415
class FtpFactory implements AdapterFactoryInterface
1516
{
@@ -20,6 +21,8 @@ public function getKey(): string
2021

2122
public function create(ContainerBuilder $container, string $id, array $config): void
2223
{
24+
$visibilityConverter = $config['visibilityConverter'] ? new Reference($config['visibilityConverter']) : null;
25+
2326
$container
2427
->setDefinition($id, new ChildDefinition('oneup_flysystem.adapter.ftp'))
2528
->replaceArgument(0,
@@ -30,7 +33,7 @@ public function create(ContainerBuilder $container, string $id, array $config):
3033
)
3134
->replaceArgument(1, $config['connectionProvider'])
3235
->replaceArgument(2, $config['connectivityChecker'])
33-
->replaceArgument(3, $config['visibilityConverter'])
36+
->replaceArgument(3, $visibilityConverter)
3437
->replaceArgument(4, $config['mimeTypeDetector'])
3538
;
3639
}

0 commit comments

Comments
 (0)