Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Jeden modułowy framework i wiele Contextów
Forum PHP.pl > Forum > PHP > Object-oriented programming
starach
Witam,

Struktura mojego FW jest banalna. Każdy element jest pluginem i posiada taki sam zestaw katalogów. Pojawił się problem ładowania klas z poza serca fw czyli prawdziwych pluginów. Context->getObject('Template') pobierze obiekt o takim identyfikatorze lub sprobuje go odnaleźć w katalogu libraries frameworka, utworzyć instancje i dopiero wtedy zwrócić. Sęk w tym że niektóre biblioteki pluginów muszą być dostępne dla innych pluginów lub bibliotek aplikacji.

Widzę w związku z tym dwie drogi.

a) Zmodyfikować metodę getObject żeby szukała po wszystkich zarejestrowanych katalogach libraries. - Może zajmie mi to jakieś 30 minut.
cool.gif Zmodyfikować metodę tworzenia pluginów w systemie i zaimplementować oddzielny Context dla każdego pluginu co wydaje się być wyjściem zgodnym ze standardami i przy okazji napierdzielić się co niemiara.
c) Olać to wszystko i iść na piwo.

Łot szód aj du?
tuner
Udostępnij w tym kontekście możliwość definiowania, który plugin implementuje dany typ obiektu, np.

  1. $context->setClass('Template','Plugin1_MyTemplatesClass');


Taka konfiguracja powinna zachodzić przy rejestrowaniu pluginu. Ogólnie chodzi Ci po prostu o wstrzykiwanie zależności.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2024 Invision Power Services, Inc.