diff options
Diffstat (limited to 'src/jdk/internal/dynalink/support/LinkRequestImpl.java')
-rw-r--r-- | src/jdk/internal/dynalink/support/LinkRequestImpl.java | 22 |
1 files changed, 19 insertions, 3 deletions
diff --git a/src/jdk/internal/dynalink/support/LinkRequestImpl.java b/src/jdk/internal/dynalink/support/LinkRequestImpl.java index c2b0092b..2d4c0b18 100644 --- a/src/jdk/internal/dynalink/support/LinkRequestImpl.java +++ b/src/jdk/internal/dynalink/support/LinkRequestImpl.java @@ -95,18 +95,24 @@ import jdk.internal.dynalink.linker.LinkRequest; public class LinkRequestImpl implements LinkRequest { private final CallSiteDescriptor callSiteDescriptor; + private final Object callSiteToken; private final Object[] arguments; private final boolean callSiteUnstable; + private final int linkCount; /** * Creates a new link request. * * @param callSiteDescriptor the descriptor for the call site being linked + * @param callSiteToken the opaque token for the call site being linked. + * @param linkCount how many times this callsite has been linked/relinked * @param callSiteUnstable true if the call site being linked is considered unstable * @param arguments the arguments for the invocation */ - public LinkRequestImpl(CallSiteDescriptor callSiteDescriptor, boolean callSiteUnstable, Object... arguments) { + public LinkRequestImpl(final CallSiteDescriptor callSiteDescriptor, final Object callSiteToken, final int linkCount, final boolean callSiteUnstable, final Object... arguments) { this.callSiteDescriptor = callSiteDescriptor; + this.callSiteToken = callSiteToken; + this.linkCount = linkCount; this.callSiteUnstable = callSiteUnstable; this.arguments = arguments; } @@ -127,17 +133,27 @@ public class LinkRequestImpl implements LinkRequest { } @Override + public Object getCallSiteToken() { + return callSiteToken; + } + + @Override public boolean isCallSiteUnstable() { return callSiteUnstable; } @Override + public int getLinkCount() { + return linkCount; + } + + @Override public LinkRequest withoutRuntimeContext() { return this; } @Override - public LinkRequest replaceArguments(CallSiteDescriptor newCallSiteDescriptor, Object[] newArguments) { - return new LinkRequestImpl(newCallSiteDescriptor, callSiteUnstable, newArguments); + public LinkRequest replaceArguments(final CallSiteDescriptor newCallSiteDescriptor, final Object[] newArguments) { + return new LinkRequestImpl(newCallSiteDescriptor, callSiteToken, linkCount, callSiteUnstable, newArguments); } } |