public final class InjectorBindings extends java.lang.Object implements BindingPublisher
Modifier and Type | Field and Description |
---|---|
private RankingFunction |
function |
private com.google.inject.Injector |
injector |
private static com.google.inject.Binding<?>[] |
NO_BINDINGS |
private static com.google.inject.TypeLiteral<java.lang.Object> |
OBJECT_TYPE_LITERAL |
private com.google.inject.Binding<?>[] |
wildcards |
Constructor and Description |
---|
InjectorBindings(com.google.inject.Injector injector) |
InjectorBindings(com.google.inject.Injector injector,
RankingFunction function) |
Modifier and Type | Method and Description |
---|---|
boolean |
equals(java.lang.Object rhs) |
com.google.inject.Injector |
getInjector() |
private com.google.inject.Binding<?>[] |
getWildcardBindings() |
int |
hashCode() |
private static <T,S> boolean |
isAssignableFrom(com.google.inject.TypeLiteral<T> type,
com.google.inject.Binding<S> binding) |
int |
maxBindingRank()
Estimates the maximum rank this publisher may assign to a
Binding . |
private <T> void |
publishExactMatches(com.google.inject.TypeLiteral<T> type,
BindingSubscriber<T> subscriber) |
private <T,S> void |
publishGenericMatches(com.google.inject.TypeLiteral<T> type,
BindingSubscriber<T> subscriber,
java.lang.Class<S> rawType) |
private <T> void |
publishWildcardMatches(com.google.inject.TypeLiteral<T> type,
BindingSubscriber<T> subscriber) |
<T> void |
subscribe(BindingSubscriber<T> subscriber)
Subscribes the given
BindingSubscriber to receive Binding s. |
java.lang.String |
toString() |
<T> void |
unsubscribe(BindingSubscriber<T> subscriber)
Stops the given
BindingSubscriber from receiving Binding s. |
private static final com.google.inject.TypeLiteral<java.lang.Object> OBJECT_TYPE_LITERAL
private static final com.google.inject.Binding<?>[] NO_BINDINGS
private final com.google.inject.Injector injector
private final RankingFunction function
private volatile com.google.inject.Binding<?>[] wildcards
public InjectorBindings(com.google.inject.Injector injector, RankingFunction function)
public InjectorBindings(com.google.inject.Injector injector)
public com.google.inject.Injector getInjector()
public <T> void subscribe(BindingSubscriber<T> subscriber)
BindingPublisher
BindingSubscriber
to receive Binding
s.subscribe
in interface BindingPublisher
subscriber
- The subscriberpublic <T> void unsubscribe(BindingSubscriber<T> subscriber)
BindingPublisher
BindingSubscriber
from receiving Binding
s.unsubscribe
in interface BindingPublisher
subscriber
- The subscriberpublic int maxBindingRank()
BindingPublisher
Binding
.maxBindingRank
in interface BindingPublisher
public int hashCode()
hashCode
in class java.lang.Object
public boolean equals(java.lang.Object rhs)
equals
in class java.lang.Object
public java.lang.String toString()
toString
in class java.lang.Object
private static <T,S> boolean isAssignableFrom(com.google.inject.TypeLiteral<T> type, com.google.inject.Binding<S> binding)
private <T> void publishExactMatches(com.google.inject.TypeLiteral<T> type, BindingSubscriber<T> subscriber)
private <T,S> void publishGenericMatches(com.google.inject.TypeLiteral<T> type, BindingSubscriber<T> subscriber, java.lang.Class<S> rawType)
private <T> void publishWildcardMatches(com.google.inject.TypeLiteral<T> type, BindingSubscriber<T> subscriber)
private com.google.inject.Binding<?>[] getWildcardBindings()