https://github.com/phase2/d8_decorators
Examples of using Symfony service decorators from our blog
https://github.com/phase2/d8_decorators
Last synced: 7 months ago
JSON representation
Examples of using Symfony service decorators from our blog
- Host: GitHub
- URL: https://github.com/phase2/d8_decorators
- Owner: phase2
- Created: 2016-10-19T14:26:35.000Z (over 9 years ago)
- Default Branch: master
- Last Pushed: 2021-07-08T16:39:27.000Z (over 4 years ago)
- Last Synced: 2025-05-15T18:51:35.386Z (10 months ago)
- Language: PHP
- Size: 7.81 KB
- Stars: 24
- Watchers: 4
- Forks: 7
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
This gives several examples of using Symfony decorators in Drupal 8.
See the Phase2 blog for details.
To play with this, first enable the `test_decorator_core` module, which
provides the core service being overridden.
Then, enable different combination of the other decorator modules and run
the `drush php-eval "test_decorator_core()"` command to see which order the
different services run.
For example, enable `test_decorator_a` and run `drush php-eval "test_decorator_core()"` and you should see:
```
Decorator A Public
Core Protected
Core Public
```
which shows that the test_decorator_a ran first followed by the normal
core service.
## test_decorator_a
A simple decorator that extends the core service.
## test_decorator_inter
Implements the core service interface rather than subclassing.
## test_decorator_lower
A subclass decorator with a lower priority than decorator_a.
## test_decorator_higher
A subclass decorator with a higher priorty than decorator_a.
## test_decorator_chain
Yet another subclass decorator with the same priority as decorator_a.
## test_decorator_protect
A subclass decorator that overrides a protected method.