1 package dst.ass2.di.type;
3 import static dst.ass2.di.annotation.Scope.PROTOTYPE;
5 import dst.ass2.di.annotation.Component;
6 import dst.ass2.di.annotation.ComponentId;
7 import dst.ass2.di.annotation.Inject;
9 @Component(scope = PROTOTYPE)
10 public class ComplexComponent {
14 @Inject(required = false)
16 @Inject(required = false)
17 public Invalid invalid;
19 @Inject(required = true)
20 public SimpleSingleton singleton;
21 @Inject(specificType = SimpleSingleton.class)
22 public Object unknownSingleton;
24 @Inject(specificType = SimpleSingleton.class, required = false)
25 public SimpleComponent singletonPrototype;