Zasięgi

Implementacja wstrzykiwania zależności dostarcza dwa rodzaje zasięgów: prototype i singleton. Pierwszy z nich jest domyślnym zasięgiem. Jego implementacja opiera się o wspomniany już wcześniej adapter CoreComponentAdapter, który przy każdym żądaniu dostarczenia komponentu, tworzy jego nową instancję. Do implementacji zasięgu singleton wykorzystano adapter dostarczany przez Pico: CachingComponentAdapter, który tworzony jest na podstawie obiektu typu CoreComponentAdapter. Przy pierwszym żądaniu dostarczenia komponentu, tworzy on jego instancję wykorzystując do tego celu wewnętrzny adapter. Instancja ta jest przechowywana w adapterze i zwracana przy każdym kolejnym żądaniu.


Rysunek: Implementacja zasięgu singleton

Attachments: