From 7175bc7b7bc3af5529e93d0817fa5703f82e9f14 Mon Sep 17 00:00:00 2001 From: Alexander Schranz Date: Mon, 22 Dec 2025 18:59:28 +0100 Subject: [PATCH] Use converter to convert xml to php --- src/Resources/config/attributes.php | 12 ++++ .../config/cache_control_listener.php | 27 +++++++ src/Resources/config/cache_manager.php | 24 +++++++ .../config/cache_manager_commands.php | 24 +++++++ src/Resources/config/cache_tagging.php | 35 +++++++++ .../config/cache_tagging_commands.php | 12 ++++ src/Resources/config/cache_tagging_twig.php | 12 ++++ src/Resources/config/cloudflare.php | 18 +++++ src/Resources/config/cloudfront.php | 15 ++++ src/Resources/config/fastly.php | 18 +++++ src/Resources/config/flash_message.php | 12 ++++ .../config/invalidation_listener.php | 17 +++++ src/Resources/config/matcher.php | 71 +++++++++++++++++++ src/Resources/config/nginx.php | 17 +++++ src/Resources/config/nginx_proxy.php | 14 ++++ src/Resources/config/noop.php | 11 +++ src/Resources/config/symfony.php | 17 +++++ src/Resources/config/user_context.php | 46 ++++++++++++ src/Resources/config/varnish.php | 17 +++++ src/Resources/config/varnish_proxy.php | 14 ++++ 20 files changed, 433 insertions(+) create mode 100644 src/Resources/config/attributes.php create mode 100644 src/Resources/config/cache_control_listener.php create mode 100644 src/Resources/config/cache_manager.php create mode 100644 src/Resources/config/cache_manager_commands.php create mode 100644 src/Resources/config/cache_tagging.php create mode 100644 src/Resources/config/cache_tagging_commands.php create mode 100644 src/Resources/config/cache_tagging_twig.php create mode 100644 src/Resources/config/cloudflare.php create mode 100644 src/Resources/config/cloudfront.php create mode 100644 src/Resources/config/fastly.php create mode 100644 src/Resources/config/flash_message.php create mode 100644 src/Resources/config/invalidation_listener.php create mode 100644 src/Resources/config/matcher.php create mode 100644 src/Resources/config/nginx.php create mode 100644 src/Resources/config/nginx_proxy.php create mode 100644 src/Resources/config/noop.php create mode 100644 src/Resources/config/symfony.php create mode 100644 src/Resources/config/user_context.php create mode 100644 src/Resources/config/varnish.php create mode 100644 src/Resources/config/varnish_proxy.php diff --git a/src/Resources/config/attributes.php b/src/Resources/config/attributes.php new file mode 100644 index 00000000..49435355 --- /dev/null +++ b/src/Resources/config/attributes.php @@ -0,0 +1,12 @@ +services(); + $parameters = $container->parameters(); + + $services->set('fos_http_cache.event_listener.attributes', \FOS\HttpCacheBundle\EventListener\AttributesListener::class) + ->args([service('controller_resolver')]) + ->tag('kernel.event_subscriber'); +}; diff --git a/src/Resources/config/cache_control_listener.php b/src/Resources/config/cache_control_listener.php new file mode 100644 index 00000000..44df8917 --- /dev/null +++ b/src/Resources/config/cache_control_listener.php @@ -0,0 +1,27 @@ +services(); + $parameters = $container->parameters(); + + $services->set('fos_http_cache.event_listener.cache_control', \FOS\HttpCacheBundle\EventListener\CacheControlListener::class) + ->public() + ->args([ + '%fos_http_cache.debug_header%', + '%fos_http_cache.ttl_header%', + ]) + ->tag('kernel.event_subscriber'); + + $services->alias(\FOS\HttpCacheBundle\EventListener\CacheControlListener::class, 'fos_http_cache.event_listener.cache_control') + ->public(); + + $services->set('fos_http_cache.response_matcher.cache_control.cacheable_response', \FOS\HttpCacheBundle\Http\ResponseMatcher\CacheableResponseMatcher::class) + ->private() + ->abstract(); + + $services->set('fos_http_cache.response_matcher.cache_control.expression', \FOS\HttpCacheBundle\Http\ResponseMatcher\ExpressionResponseMatcher::class) + ->private() + ->abstract(); +}; diff --git a/src/Resources/config/cache_manager.php b/src/Resources/config/cache_manager.php new file mode 100644 index 00000000..5f64f5dd --- /dev/null +++ b/src/Resources/config/cache_manager.php @@ -0,0 +1,24 @@ +services(); + $parameters = $container->parameters(); + + $services->set('fos_http_cache.cache_manager', \FOS\HttpCacheBundle\CacheManager::class) + ->public() + ->args([ + service('fos_http_cache.default_proxy_client'), + service('router'), + ]) + ->call('setEventDispatcher', [service('event_dispatcher')->ignoreOnInvalid()]) + ->call('setGenerateUrlType', ['%fos_http_cache.cache_manager.generate_url_type%']); + + $services->alias(\FOS\HttpCacheBundle\CacheManager::class, 'fos_http_cache.cache_manager') + ->public(); + + $services->set('fos_http_cache.event_listener.log', \FOS\HttpCache\EventListener\LogListener::class) + ->abstract() + ->args([service('logger')]); +}; diff --git a/src/Resources/config/cache_manager_commands.php b/src/Resources/config/cache_manager_commands.php new file mode 100644 index 00000000..5a85bb07 --- /dev/null +++ b/src/Resources/config/cache_manager_commands.php @@ -0,0 +1,24 @@ +services(); + $parameters = $container->parameters(); + + $services->set('fos_http_cache.command.invalidate_path', \FOS\HttpCacheBundle\Command\InvalidatePathCommand::class) + ->args([service('fos_http_cache.cache_manager')]) + ->tag('console.command'); + + $services->set('fos_http_cache.command.invalidate_regex', \FOS\HttpCacheBundle\Command\InvalidateRegexCommand::class) + ->args([service('fos_http_cache.cache_manager')]) + ->tag('console.command'); + + $services->set('fos_http_cache.command.refresh_path', \FOS\HttpCacheBundle\Command\RefreshPathCommand::class) + ->args([service('fos_http_cache.cache_manager')]) + ->tag('console.command'); + + $services->set('fos_http_cache.command.clear', \FOS\HttpCacheBundle\Command\ClearCommand::class) + ->args([service('fos_http_cache.cache_manager')]) + ->tag('console.command'); +}; diff --git a/src/Resources/config/cache_tagging.php b/src/Resources/config/cache_tagging.php new file mode 100644 index 00000000..f0da077d --- /dev/null +++ b/src/Resources/config/cache_tagging.php @@ -0,0 +1,35 @@ +services(); + $parameters = $container->parameters(); + + $services->set('fos_http_cache.tag_handler.header_formatter', \FOS\HttpCache\TagHeaderFormatter\CommaSeparatedTagHeaderFormatter::class) + ->private() + ->args([ + '%fos_http_cache.tag_handler.response_header%', + '%fos_http_cache.tag_handler.separator%', + ]); + + $services->set('fos_http_cache.http.symfony_response_tagger', \FOS\HttpCacheBundle\Http\SymfonyResponseTagger::class) + ->public() + ->args([['header_formatter' => service('fos_http_cache.tag_handler.header_formatter'), 'strict' => '%fos_http_cache.tag_handler.strict%']]); + + $services->alias(\FOS\HttpCacheBundle\Http\SymfonyResponseTagger::class, 'fos_http_cache.http.symfony_response_tagger') + ->public(); + + $services->alias(\FOS\HttpCache\ResponseTagger::class, 'fos_http_cache.http.symfony_response_tagger') + ->public(); + + $services->set('fos_http_cache.event_listener.tag', \FOS\HttpCacheBundle\EventListener\TagListener::class) + ->args([ + service('fos_http_cache.cache_manager'), + service('fos_http_cache.http.symfony_response_tagger'), + service('fos_http_cache.rule_matcher.cacheable'), + service('fos_http_cache.rule_matcher.must_invalidate'), + service('fos_http_cache.tag_handler.expression_language')->ignoreOnInvalid(), + ]) + ->tag('kernel.event_subscriber'); +}; diff --git a/src/Resources/config/cache_tagging_commands.php b/src/Resources/config/cache_tagging_commands.php new file mode 100644 index 00000000..70b34408 --- /dev/null +++ b/src/Resources/config/cache_tagging_commands.php @@ -0,0 +1,12 @@ +services(); + $parameters = $container->parameters(); + + $services->set('fos_http_cache.command.invalidate_tag', \FOS\HttpCacheBundle\Command\InvalidateTagCommand::class) + ->args([service('fos_http_cache.cache_manager')]) + ->tag('console.command', ['command' => 'fos:httpcache:invalidate:tag']); +}; diff --git a/src/Resources/config/cache_tagging_twig.php b/src/Resources/config/cache_tagging_twig.php new file mode 100644 index 00000000..c72258e6 --- /dev/null +++ b/src/Resources/config/cache_tagging_twig.php @@ -0,0 +1,12 @@ +services(); + $parameters = $container->parameters(); + + $services->set('fos_http_cache.twig.tag_extension', \FOS\HttpCacheBundle\Twig\CacheTagExtension::class) + ->args([service('fos_http_cache.http.symfony_response_tagger')]) + ->tag('twig.extension'); +}; diff --git a/src/Resources/config/cloudflare.php b/src/Resources/config/cloudflare.php new file mode 100644 index 00000000..21462a9b --- /dev/null +++ b/src/Resources/config/cloudflare.php @@ -0,0 +1,18 @@ +services(); + $parameters = $container->parameters(); + + $services->set('fos_http_cache.proxy_client.cloudflare', \FOS\HttpCache\ProxyClient\Cloudflare::class) + ->public() + ->lazy() + ->args([ + service('fos_http_cache.proxy_client.cloudflare.http_dispatcher'), + '%fos_http_cache.proxy_client.cloudflare.options%', + '', + '', + ]); +}; diff --git a/src/Resources/config/cloudfront.php b/src/Resources/config/cloudfront.php new file mode 100644 index 00000000..2cb535a7 --- /dev/null +++ b/src/Resources/config/cloudfront.php @@ -0,0 +1,15 @@ +services(); + $parameters = $container->parameters(); + + $services->set('fos_http_cache.proxy_client.cloudfront', \JeanBeru\HttpCacheCloudFront\Proxy\CloudFront::class) + ->public() + ->args([ + service('fos_http_cache.proxy_client.cloudfront.cloudfront_client'), + '%fos_http_cache.proxy_client.cloudfront.options%', + ]); +}; diff --git a/src/Resources/config/fastly.php b/src/Resources/config/fastly.php new file mode 100644 index 00000000..0319fd7b --- /dev/null +++ b/src/Resources/config/fastly.php @@ -0,0 +1,18 @@ +services(); + $parameters = $container->parameters(); + + $services->set('fos_http_cache.proxy_client.fastly', \FOS\HttpCache\ProxyClient\Fastly::class) + ->private() + ->lazy() + ->args([ + service('fos_http_cache.proxy_client.fastly.http_dispatcher'), + '%fos_http_cache.proxy_client.fastly.options%', + '', + '', + ]); +}; diff --git a/src/Resources/config/flash_message.php b/src/Resources/config/flash_message.php new file mode 100644 index 00000000..273caedd --- /dev/null +++ b/src/Resources/config/flash_message.php @@ -0,0 +1,12 @@ +services(); + $parameters = $container->parameters(); + + $services->set('fos_http_cache.event_listener.flash_message', \FOS\HttpCacheBundle\EventListener\FlashMessageListener::class) + ->args(['%fos_http_cache.event_listener.flash_message.options%']) + ->tag('kernel.event_subscriber'); +}; diff --git a/src/Resources/config/invalidation_listener.php b/src/Resources/config/invalidation_listener.php new file mode 100644 index 00000000..c84bb562 --- /dev/null +++ b/src/Resources/config/invalidation_listener.php @@ -0,0 +1,17 @@ +services(); + $parameters = $container->parameters(); + + $services->set('fos_http_cache.event_listener.invalidation', \FOS\HttpCacheBundle\EventListener\InvalidationListener::class) + ->args([ + service('fos_http_cache.cache_manager'), + service('router'), + service('fos_http_cache.rule_matcher.must_invalidate'), + service('fos_http_cache.invalidation.expression_language')->ignoreOnInvalid(), + ]) + ->tag('kernel.event_subscriber'); +}; diff --git a/src/Resources/config/matcher.php b/src/Resources/config/matcher.php new file mode 100644 index 00000000..67f6b1a2 --- /dev/null +++ b/src/Resources/config/matcher.php @@ -0,0 +1,71 @@ +services(); + $parameters = $container->parameters(); + + $services->set('fos_http_cache.request_matcher', \Symfony\Component\HttpFoundation\ChainRequestMatcher::class) + ->private() + ->abstract(); + + $services->set('fos_http_cache.request_matcher.path', \Symfony\Component\HttpFoundation\RequestMatcher\PathRequestMatcher::class) + ->private() + ->abstract(); + + $services->set('fos_http_cache.request_matcher.host', \Symfony\Component\HttpFoundation\RequestMatcher\HostRequestMatcher::class) + ->private() + ->abstract(); + + $services->set('fos_http_cache.request_matcher.methods', \Symfony\Component\HttpFoundation\RequestMatcher\MethodRequestMatcher::class) + ->private() + ->abstract(); + + $services->set('fos_http_cache.request_matcher.ips', \Symfony\Component\HttpFoundation\RequestMatcher\IpsRequestMatcher::class) + ->private() + ->abstract(); + + $services->set('fos_http_cache.request_matcher.attributes', \Symfony\Component\HttpFoundation\RequestMatcher\AttributesRequestMatcher::class) + ->private() + ->abstract(); + + $services->set('fos_http_cache.request_matcher.query_string', \FOS\HttpCacheBundle\Http\RequestMatcher\QueryStringRequestMatcher::class) + ->private() + ->abstract(); + + $services->set('fos_http_cache.rule_matcher', \FOS\HttpCacheBundle\Http\RuleMatcher::class) + ->private() + ->abstract() + ->args([ + '', + '', + ]); + + $services->set('fos_http_cache.rule_matcher.cacheable', \FOS\HttpCacheBundle\Http\RuleMatcher::class) + ->private() + ->args([ + service('fos_http_cache.request_matcher.cacheable'), + service('fos_http_cache.response_matcher.cacheable'), + ]); + + $services->set('fos_http_cache.rule_matcher.must_invalidate', \FOS\HttpCacheBundle\Http\RuleMatcher::class) + ->private() + ->args([ + service('fos_http_cache.request_matcher.unsafe'), + service('fos_http_cache.response_matcher.non_error'), + ]); + + $services->set('fos_http_cache.request_matcher.cacheable', \FOS\HttpCacheBundle\Http\RequestMatcher\CacheableRequestMatcher::class) + ->private(); + + $services->set('fos_http_cache.request_matcher.unsafe', \FOS\HttpCacheBundle\Http\RequestMatcher\UnsafeRequestMatcher::class) + ->private(); + + $services->set('fos_http_cache.response_matcher.cacheable', \FOS\HttpCacheBundle\Http\ResponseMatcher\CacheableResponseMatcher::class) + ->private() + ->args(['%fos_http_cache.cacheable.response.additional_status%']); + + $services->set('fos_http_cache.response_matcher.non_error', \FOS\HttpCacheBundle\Http\ResponseMatcher\NonErrorResponseMatcher::class) + ->private(); +}; diff --git a/src/Resources/config/nginx.php b/src/Resources/config/nginx.php new file mode 100644 index 00000000..17e8e35d --- /dev/null +++ b/src/Resources/config/nginx.php @@ -0,0 +1,17 @@ +services(); + $parameters = $container->parameters(); + + $services->set('fos_http_cache.proxy_client.nginx', \FOS\HttpCache\ProxyClient\Nginx::class) + ->public() + ->args([ + service('fos_http_cache.proxy_client.nginx.http_dispatcher'), + '%fos_http_cache.proxy_client.nginx.options%', + '', + '', + ]); +}; diff --git a/src/Resources/config/nginx_proxy.php b/src/Resources/config/nginx_proxy.php new file mode 100644 index 00000000..e2417123 --- /dev/null +++ b/src/Resources/config/nginx_proxy.php @@ -0,0 +1,14 @@ +services(); + $parameters = $container->parameters(); + + $services->set('fos_http_cache.test.proxy_server.nginx', \FOS\HttpCache\Test\Proxy\NginxProxy::class) + ->args(['%fos_http_cache.test.proxy_server.nginx.config_file%']) + ->call('setBinary', ['%fos_http_cache.test.proxy_server.nginx.binary%']) + ->call('setPort', ['%fos_http_cache.test.proxy_server.nginx.port%']) + ->call('setIp', ['%fos_http_cache.test.proxy_server.nginx.ip%']); +}; diff --git a/src/Resources/config/noop.php b/src/Resources/config/noop.php new file mode 100644 index 00000000..7a511752 --- /dev/null +++ b/src/Resources/config/noop.php @@ -0,0 +1,11 @@ +services(); + $parameters = $container->parameters(); + + $services->set('fos_http_cache.proxy_client.noop', \FOS\HttpCache\ProxyClient\Noop::class) + ->public(); +}; diff --git a/src/Resources/config/symfony.php b/src/Resources/config/symfony.php new file mode 100644 index 00000000..0720e79c --- /dev/null +++ b/src/Resources/config/symfony.php @@ -0,0 +1,17 @@ +services(); + $parameters = $container->parameters(); + + $services->set('fos_http_cache.proxy_client.symfony', \FOS\HttpCache\ProxyClient\Symfony::class) + ->public() + ->args([ + service('fos_http_cache.proxy_client.symfony.http_dispatcher'), + '%fos_http_cache.proxy_client.symfony.options%', + '', + '', + ]); +}; diff --git a/src/Resources/config/user_context.php b/src/Resources/config/user_context.php new file mode 100644 index 00000000..39f6a96d --- /dev/null +++ b/src/Resources/config/user_context.php @@ -0,0 +1,46 @@ +services(); + $parameters = $container->parameters(); + + $services->set('fos_http_cache.user_context.hash_generator', \FOS\HttpCache\UserContext\DefaultHashGenerator::class); + + $services->set('fos_http_cache.user_context.request_matcher', \FOS\HttpCacheBundle\UserContext\RequestMatcher::class) + ->args([ + '', + '', + ]); + + $services->set('fos_http_cache.event_listener.user_context', \FOS\HttpCacheBundle\EventListener\UserContextListener::class) + ->args([ + service('fos_http_cache.user_context.request_matcher'), + service('fos_http_cache.user_context.hash_generator'), + service('fos_http_cache.user_context.anonymous_request_matcher'), + service('fos_http_cache.http.symfony_response_tagger')->ignoreOnInvalid(), + '%fos_http_cache.event_listener.user_context.options%', + true, + ]) + ->tag('kernel.event_subscriber'); + + $services->set('fos_http_cache.user_context.role_provider', \FOS\HttpCacheBundle\UserContext\RoleProvider::class) + ->abstract() + ->args([service('security.token_storage')->ignoreOnInvalid()]); + + $services->set('fos_http_cache.user_context_invalidator', \FOS\HttpCacheBundle\UserContextInvalidator::class) + ->args([service('fos_http_cache.default_proxy_client')]); + + $services->set('fos_http_cache.user_context.session_logout_handler', \FOS\HttpCacheBundle\Security\Http\Logout\ContextInvalidationSessionLogoutHandler::class) + ->private() + ->args([service('fos_http_cache.user_context_invalidator')]); + + $services->set('fos_http_cache.user_context.switch_user_listener', \FOS\HttpCacheBundle\EventListener\SwitchUserListener::class) + ->private() + ->args([service('fos_http_cache.user_context_invalidator')]) + ->tag('kernel.event_subscriber'); + + $services->set('fos_http_cache.user_context.anonymous_request_matcher', \FOS\HttpCache\UserContext\AnonymousRequestMatcher::class) + ->args([[]]); +}; diff --git a/src/Resources/config/varnish.php b/src/Resources/config/varnish.php new file mode 100644 index 00000000..629cdb5d --- /dev/null +++ b/src/Resources/config/varnish.php @@ -0,0 +1,17 @@ +services(); + $parameters = $container->parameters(); + + $services->set('fos_http_cache.proxy_client.varnish', \FOS\HttpCache\ProxyClient\Varnish::class) + ->public() + ->args([ + service('fos_http_cache.proxy_client.varnish.http_dispatcher'), + '%fos_http_cache.proxy_client.varnish.options%', + '', + '', + ]); +}; diff --git a/src/Resources/config/varnish_proxy.php b/src/Resources/config/varnish_proxy.php new file mode 100644 index 00000000..407903f3 --- /dev/null +++ b/src/Resources/config/varnish_proxy.php @@ -0,0 +1,14 @@ +services(); + $parameters = $container->parameters(); + + $services->set('fos_http_cache.test.proxy_server.varnish', \FOS\HttpCache\Test\Proxy\VarnishProxy::class) + ->args(['%fos_http_cache.test.proxy_server.varnish.config_file%']) + ->call('setBinary', ['%fos_http_cache.test.proxy_server.varnish.binary%']) + ->call('setPort', ['%fos_http_cache.test.proxy_server.varnish.port%']) + ->call('setIp', ['%fos_http_cache.test.proxy_server.varnish.ip%']); +};