java.lang.Object
jdk.dynalink.linker.support.CompositeGuardingDynamicLinker
- All Implemented Interfaces:
GuardingDynamicLinker
A
GuardingDynamicLinker
that delegates sequentially to a list of
other guarding dynamic linkers in its
getGuardedInvocation(LinkRequest, LinkerServices)
.-
Constructor Summary
ConstructorDescriptionCompositeGuardingDynamicLinker
(Iterable<? extends GuardingDynamicLinker> linkers) Creates a new composite linker. -
Method Summary
Modifier and TypeMethodDescriptiongetGuardedInvocation
(LinkRequest linkRequest, LinkerServices linkerServices) Delegates the call to its component linkers.
-
Constructor Details
-
CompositeGuardingDynamicLinker
Creates a new composite linker.- Parameters:
linkers
- a list of component linkers.- Throws:
NullPointerException
- iflinkers
or any of its elements are null.
-
-
Method Details
-
getGuardedInvocation
public GuardedInvocation getGuardedInvocation(LinkRequest linkRequest, LinkerServices linkerServices) throws Exception Delegates the call to its component linkers. The first non-null value returned from a component linker is returned. If no component linker returns a non-null invocation, null is returned.- Specified by:
getGuardedInvocation
in interfaceGuardingDynamicLinker
- Parameters:
linkRequest
- the object describing the request for linking a particular invocationlinkerServices
- linker services- Returns:
- the first non-null return value from a component linker, or null if none of the components returned a non-null.
- Throws:
Exception
- if the operation fails for whatever reason
-