com.groupbyinc.flux.common.inject.Initializer.class Maven / Gradle / Ivy
???? 4 ? -com/groupbyinc/flux/common/inject/Initializer java/lang/Object Initializer.java Acom/groupbyinc/flux/common/inject/Initializer$InjectableReference InjectableReference creatingThread Ljava/lang/Thread; ready %Ljava/util/concurrent/CountDownLatch; pendingInjection Ljava/util/Map; iLjava/util/Map;>; ()V
java/lang/Thread
currentThread ()Ljava/lang/Thread;
#java/util/concurrent/CountDownLatch (I)V
! java/util/IdentityHashMap #
$
& this /Lcom/groupbyinc/flux/common/inject/Initializer; requestInjection ?(Lcom/groupbyinc/flux/common/inject/InjectorImpl;Ljava/lang/Object;Ljava/lang/Object;Ljava/util/Set;)Lcom/groupbyinc/flux/common/inject/Initializable; java/util/Objects , requireNonNull &(Ljava/lang/Object;)Ljava/lang/Object; . /
- 0
java/util/Set 2 isEmpty ()Z 4 5 3 6 .com/groupbyinc/flux/common/inject/InjectorImpl 8 membersInjectorStore 8Lcom/groupbyinc/flux/common/inject/MembersInjectorStore; : ; 9 < 6com/groupbyinc/flux/common/inject/MembersInjectorStore > hasTypeListeners @ 5
? A 0com/groupbyinc/flux/common/inject/Initializables C of E(Ljava/lang/Object;)Lcom/groupbyinc/flux/common/inject/Initializable; E F
D G ?(Lcom/groupbyinc/flux/common/inject/Initializer;Lcom/groupbyinc/flux/common/inject/InjectorImpl;Ljava/lang/Object;Ljava/lang/Object;)V I
J
java/util/Map L put 8(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; N O M P injector 0Lcom/groupbyinc/flux/common/inject/InjectorImpl; instance TT; Ljava/lang/Object; source injectionPoints GLjava/util/Set; Ljava/util/Set;
initializable HLcom/groupbyinc/flux/common/inject/Initializer$InjectableReference; CLcom/groupbyinc/flux/common/inject/Initializer$InjectableReference; validateOustandingInjections 6(Lcom/groupbyinc/flux/common/inject/internal/Errors;)V :com/groupbyinc/flux/common/inject/internal/ErrorsException ` values ()Ljava/util/Collection; b c M d java/util/Collection f iterator ()Ljava/util/Iterator; h i g j java/util/Iterator l hasNext n 5 m o next ()Ljava/lang/Object; q r m s validate u _
v 1com/groupbyinc/flux/common/inject/internal/Errors x getErrors 5()Lcom/groupbyinc/flux/common/inject/internal/Errors; z {
a | merge h(Lcom/groupbyinc/flux/common/inject/internal/Errors;)Lcom/groupbyinc/flux/common/inject/internal/Errors; ~
y ? e