|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
D
- the descriptor type.R
- the resource type it resolves to.@ThreadSafe public interface Function<D,R>
A Function that resolves Descriptors (of type D) to a Resource (of type R).
Semantically, this could be a Factory, Generator, Builder, Closure, Transformer, Resolver or
something else entirely. No particular guarantees are implied by this interface apart from
idempotence (see below). Specifically, implementations may or may not return or accept null and
can optionally block until elements are available or throw runtime
exceptions
if the input is not acceptable for some reason. Any clients that require a firmer
contract should subclass this interface and document their requirements.
It is expected that for any two calls to get(Object)
D the returned resource will be
semantically the same, ie. that the call is effectively idempotent. Any implementation that
violates this should document the fact. It is not necessary that the resolved object is the same
instance or even implements #equals(Object)
and #hashCode()
however.
As this interface requires idempotence implementations should be reentrant and thread-safe.
Method Summary | |
---|---|
R |
get(D input)
Resolves an output |
Method Detail |
---|
R get(D input)
input
- an object of type D.
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |