Post
#1
|
|
|
Grupa: Zarejestrowani Postów: 119 Pomógł: 0 Dołączył: 10.10.2015 Skąd: Warszawa Ostrzeżenie: (0%)
|
w dokumentacji są dwa słowa o dekoratorze:
- dekorator nadpisuje ale nie likwiduje nadpisywanej usługi - stara nazwa (dekorowanej usługi) jest aliasem dla nowej nazwy (usługi dekoratora) Nie rozumiem jaka jest korzyść używania dekoratora przy nadpisywaniu usług w Extension. Co mogę takiego zrobić dekoratorem czego nie mógłbym zrobić zwykłą edycją usługi? Przecież i tak dekorator będzie wywoływany starą nazwą usługi, więc nie mogę już w projekcie użyć starej wersji dekorowanej usługi. edit. i po co używać factory skoro mogę dowolnie edytować usługę w Extension? Ten post edytował koszykarze 27.07.2016, 23:38:27 |
|
|
|
![]() |
Post
#2
|
|
|
Grupa: Zarejestrowani Postów: 119 Pomógł: 0 Dołączył: 10.10.2015 Skąd: Warszawa Ostrzeżenie: (0%)
|
Oto moje wnioski:
tworząc dekorator za pomocą new DefinitionDecorator: - mam nową usługę z nową nazwą dziedzicząc definicję old - mam w projekcie dostęp do starej i nowej usługi - nowa nazwa usługi nie nadpisuje starej - używam klasy zdefiniowanej w starej usłudze - tu chodzi tylko o udekorowanie definicji usługi, tak by można było użyć w projekcie i starej i nowej usługi. tworząc dekorator za pomocą $container->register()->setDecoratedService : - mam nową usługę ze starą nazwą i zmienioną definicją - mam w projekcie dostęp tylko do tej jednej usługi - nowa nazwa usługi nadpisuje starą - podaję nazwę nowej klasy, tam wstrzykuję stary serwis i wykorzystuję jego funkcjonalność - w projekcie stara usługa jest nadpisana ale w Extension i CompilerPass mogę wielokrotnie użyć definicji starej usługi do tworzenia nowych dekoratorów. - to jest prawdziwy dekorator klas Ten post edytował koszykarze 29.07.2016, 17:04:09 |
|
|
|
koszykarze [SF]Po co mi dekorator w nadpisywaniu usług w Extension? przecież mogę nadpisać usługę dowolnie bez dekoratora 27.07.2016, 22:26:57
destroyerr Wiesz o tym, że nadpisywanie to co innego niż deko... 28.07.2016, 07:08:05
koszykarze no ale jak nie nadpisuje skoro nadpisuje.
poniżs... 28.07.2016, 20:39:49
destroyerr Strasznie mieszasz. W pierwszym Twoim przykładzie ... 28.07.2016, 21:11:56
koszykarze masz rację, pomyliłem słowa w poprzednim poście. ... 28.07.2016, 23:40:09
destroyerr Cytatskoro alternatywa dla dziedziczenia to wolałb... 29.07.2016, 09:08:33 ![]() ![]() |
|
Aktualny czas: 28.12.2025 - 07:48 |