oksana-c / d8_decorators

Examples of using Symfony service decorators from our blog

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

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.

About

Examples of using Symfony service decorators from our blog


Languages

Language:PHP 100.0%