class S3fsServiceProvider in S3 File System 4.0.x
Same name and namespace in other branches
- 8.3 src/S3fsServiceProvider.php \Drupal\s3fs\S3fsServiceProvider
- 8.2 src/S3fsServiceProvider.php \Drupal\s3fs\S3fsServiceProvider
The stream wrapper class.
In the docs for this class, anywhere you see "<scheme>", it can mean either "s3" or "public", depending on which stream is currently being serviced.
Hierarchy
- class \Drupal\Core\DependencyInjection\ServiceProviderBase implements ServiceModifierInterface, ServiceProviderInterface
- class \Drupal\s3fs\S3fsServiceProvider
Expanded class hierarchy of S3fsServiceProvider
File
- src/
S3fsServiceProvider.php, line 16
Namespace
Drupal\s3fsView source
class S3fsServiceProvider extends ServiceProviderBase {
/**
* Modifies existing service definitions.
*
* @param \Drupal\Core\DependencyInjection\ContainerBuilder $container
* The ContainerBuilder whose service definitions can be altered.
*/
public function alter(ContainerBuilder $container) {
if (Settings::get('s3fs.use_s3_for_public')) {
// Replace the public stream wrapper with S3fsStream.
$container
->getDefinition('stream_wrapper.public')
->setClass('Drupal\\s3fs\\StreamWrapper\\PublicS3fsStream');
// Fix CSS static urls.
$container
->getDefinition('asset.css.optimizer')
->setClass('Drupal\\s3fs\\Asset\\S3fsCssOptimizer')
->addArgument(new Reference('config.factory'));
}
if (Settings::get('s3fs.use_s3_for_private') && $container
->hasDefinition('stream_wrapper.private')) {
// Replace the private stream wrapper with S3fsStream.
$container
->getDefinition('stream_wrapper.private')
->setClass('Drupal\\s3fs\\StreamWrapper\\PrivateS3fsStream');
}
}
/**
* Register dynamic service definitions.
*
* @param \Drupal\Core\DependencyInjection\ContainerBuilder $container
* The ContainerBuilder whose service definitions can be checked.
*/
public function register(ContainerBuilder $container) {
if ($container
->hasDefinition('advagg.optimizer.css') && Settings::get('s3fs.use_s3_for_public')) {
$container
->register('s3fs.advagg.css_subscriber', 'Drupal\\s3fs\\EventSubscriber\\S3fsAdvAggSubscriber')
->addTag('event_subscriber')
->setArguments([
new Reference('config.factory'),
]);
}
}
}
Members
Name![]() |
Modifiers | Type | Description | Overrides |
---|---|---|---|---|
S3fsServiceProvider:: |
public | function |
Modifies existing service definitions. Overrides ServiceProviderBase:: |
|
S3fsServiceProvider:: |
public | function |
Register dynamic service definitions. Overrides ServiceProviderBase:: |