- java.lang.Object
-
- jdk.dynalink.linker.support.CompositeGuardingDynamicLinker
-
- All Implemented Interfaces:
GuardingDynamicLinker
public class CompositeGuardingDynamicLinker extends Object implements GuardingDynamicLinker
AGuardingDynamicLinkerthat delegates sequentially to a list of other guarding dynamic linkers in itsgetGuardedInvocation(LinkRequest, LinkerServices).
-
-
Constructor Summary
Constructors Constructor Description CompositeGuardingDynamicLinker(Iterable<? extends GuardingDynamicLinker> linkers)Creates a new composite linker.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description GuardedInvocationgetGuardedInvocation(LinkRequest linkRequest, LinkerServices linkerServices)Delegates the call to its component linkers.
-
-
-
Constructor Detail
-
CompositeGuardingDynamicLinker
public CompositeGuardingDynamicLinker(Iterable<? extends GuardingDynamicLinker> linkers)
Creates a new composite linker.- Parameters:
linkers- a list of component linkers.- Throws:
NullPointerException- iflinkersor any of its elements are null.
-
-
Method Detail
-
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:
getGuardedInvocationin 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
-
-