Skip to content

Commit 34c91ae

Browse files
committed
Sftp uses ConnectionProvider
1 parent 820f3b1 commit 34c91ae

2 files changed

Lines changed: 10 additions & 2 deletions

File tree

src/Adapter/Builder/SftpAdapterDefinitionBuilder.php

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@
1212
namespace League\FlysystemBundle\Adapter\Builder;
1313

1414
use League\Flysystem\PhpseclibV2\SftpAdapter;
15+
use League\Flysystem\PhpseclibV2\SftpConnectionProvider;
1516
use Symfony\Component\DependencyInjection\Definition;
1617
use Symfony\Component\OptionsResolver\OptionsResolver;
1718

@@ -70,6 +71,12 @@ protected function configureOptions(OptionsResolver $resolver)
7071
protected function configureDefinition(Definition $definition, array $options)
7172
{
7273
$definition->setClass(SftpAdapter::class);
73-
$definition->setArgument(0, $options);
74+
$definition->setArgument(0,
75+
(new Definition(SftpConnectionProvider::class))
76+
->setFactory([SftpConnectionProvider::class, 'fromArray'])
77+
->addArgument($options)
78+
->setShared(false)
79+
);
80+
$definition->setArgument(1, $options['root']);
7481
}
7582
}

tests/Adapter/Builder/SftpAdapterDefinitionBuilderTest.php

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -78,6 +78,7 @@ public function testOptionsBehavior()
7878
];
7979

8080
$this->assertSame(SftpAdapter::class, $definition->getClass());
81-
$this->assertSame($expected, $definition->getArgument(0));
81+
$this->assertSame($expected, $definition->getArgument(0)->getArgument(0));
82+
$this->assertSame($expected['root'], $definition->getArgument(1));
8283
}
8384
}

0 commit comments

Comments
 (0)