Package dagger.producers
Class Produced<T>
java.lang.Object
dagger.producers.Produced<T>
An interface that represents the result of a production of type
T
,
or an exception that was thrown during that production. For any type T
that can be
injected, you can also inject Produced<T>
, which enables handling of any exceptions that
were thrown during the production of T
.
For example:
@Produces Html getResponse(
UserInfo criticalInfo, Produced<ExtraInfo> noncriticalInfo) {
try {
return new Html(criticalInfo, noncriticalInfo.get());
} catch (ExecutionException e) {
logger.warning(e, "Noncritical info");
return new Html(criticalInfo);
}
}
- Since:
- 2.0
-
Method Summary
Modifier and TypeMethodDescriptionabstract boolean
TwoProduced
objects compare equal if both are successful with equal values, or both are failed with equal exceptions.static <T> Produced<T>
abstract T
get()
Returns the result of a production.abstract int
hashCode()
Returns an appropriate hash code to matchequals(Object)
.static <T> Produced<T>
successful
(T value) Returns a successfulProduced
, whoseget()
will return the given value.
-
Method Details
-
get
Returns the result of a production.- Throws:
ExecutionException
- if the production threw an exception
-
equals
TwoProduced
objects compare equal if both are successful with equal values, or both are failed with equal exceptions. -
hashCode
public abstract int hashCode()Returns an appropriate hash code to matchequals(Object)
. -
successful
Returns a successfulProduced
, whoseget()
will return the given value. -
failed
-