Mam 4 klasy: A, B, C, D. Chciałbym, żeby B i C były singletonami, ale tylko w obrębie obiektu A. Obiekty klasy A i D mają być prototypami. Czyli mniej więcej:
A A2
/ \ / \
B C B2 C2
| / \ | / \
D D2 B D3 D4 B2
| |
D D3
Jak (jeśli się da) to uzyskać za pomocą wstrzykiwania zależności i adnotacji Scope("signleton/prototype")? I że jak jakiś singleton posiada prototyp, to gdzieś indziej wstrzyknięty ten singleton powinien posiadać wszędzie ten sam prototyp?