Skip to content

Commit 0c02a40

Browse files
committed
feature #30645 Alias for each assets package (gpenverne)
This PR was merged into the 4.3-dev branch. Discussion ---------- Alias for each assets package | Q | A | ------------- | --- | Branch? | master <!-- see below --> | Bug fix? | no | New feature? | yes <!-- don't forget to update src/**/CHANGELOG.md files --> | BC breaks? | ? <!-- see https://symfony.com/bc --> | Deprecations? | no <!-- don't forget to update UPGRADE-*.md and src/**/CHANGELOG.md files --> | Tests pass? | yes <!-- please add some, will be required by reviewers --> | Fixed tickets | <!-- #-prefixed issue number(s), if any --> | License | MIT | Doc PR | <!-- required for new features --> Add autowiring by type + name on assets packages ```yaml framework: assets: packages: xxx: base_urls: 'xxxx' ``` ```php <?php class MyService { private $xxxPackage; public function __construct(PackageInterface $xxxPackage) { $this->xxxPackage = $xxxPackage; ... } public function myMethod(): string { return $this->xxxPackage->getUrl('some-image.png'); } } ``` instead of: ```php <?php class MyService { private $packages; public function __construct(Packages $packages) { $this->packages = $packages; ... } public function myMethod(): string { return $this->packages->getPackage('xxx')->getUrl('some-image.png'); } } ``` Commits ------- e8b9856 Alias for each assets package
2 parents 8952c02 + e8b9856 commit 0c02a40

File tree

1 file changed

+2
-0
lines changed

1 file changed

+2
-0
lines changed

src/Symfony/Bundle/FrameworkBundle/DependencyInjection/FrameworkExtension.php

+2
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@
2323
use Symfony\Bundle\FrameworkBundle\Routing\AnnotatedRouteControllerLoader;
2424
use Symfony\Bundle\FrameworkBundle\Routing\RedirectableUrlMatcher;
2525
use Symfony\Bundle\FullStack;
26+
use Symfony\Component\Asset\PackageInterface;
2627
use Symfony\Component\BrowserKit\AbstractBrowser;
2728
use Symfony\Component\Cache\Adapter\AbstractAdapter;
2829
use Symfony\Component\Cache\Adapter\AdapterInterface;
@@ -996,6 +997,7 @@ private function registerAssetsConfiguration(array $config, ContainerBuilder $co
996997
}
997998

998999
$container->setDefinition('assets._package_'.$name, $this->createPackageDefinition($package['base_path'], $package['base_urls'], $version));
1000+
$container->registerAliasForArgument('assets._package_'.$name, PackageInterface::class, $name.'.package');
9991001
$namedPackages[$name] = new Reference('assets._package_'.$name);
10001002
}
10011003

0 commit comments

Comments
 (0)