diff options
Diffstat (limited to 'jdisc_core/src/main')
7 files changed, 27 insertions, 6 deletions
diff --git a/jdisc_core/src/main/java/com/yahoo/jdisc/NoopSharedResource.java b/jdisc_core/src/main/java/com/yahoo/jdisc/NoopSharedResource.java index 7f4fe96d769..214840aab63 100644 --- a/jdisc_core/src/main/java/com/yahoo/jdisc/NoopSharedResource.java +++ b/jdisc_core/src/main/java/com/yahoo/jdisc/NoopSharedResource.java @@ -12,6 +12,10 @@ public class NoopSharedResource implements SharedResource { public final ResourceReference refer() { return References.NOOP_REFERENCE; } + @Override + public final ResourceReference refer(Object context) { + return References.NOOP_REFERENCE; + } @Override public final void release() { diff --git a/jdisc_core/src/main/java/com/yahoo/jdisc/ProxyRequestHandler.java b/jdisc_core/src/main/java/com/yahoo/jdisc/ProxyRequestHandler.java index 6e385535e40..4e9e45f2f6e 100644 --- a/jdisc_core/src/main/java/com/yahoo/jdisc/ProxyRequestHandler.java +++ b/jdisc_core/src/main/java/com/yahoo/jdisc/ProxyRequestHandler.java @@ -63,6 +63,11 @@ class ProxyRequestHandler implements DelegatedRequestHandler { } @Override + public ResourceReference refer(Object context) { + return delegate.refer(context); + } + + @Override public void release() { delegate.release(); } @@ -89,7 +94,7 @@ class ProxyRequestHandler implements DelegatedRequestHandler { Objects.requireNonNull(delegate, "delegate"); this.request = request; this.delegate = delegate; - this.requestReference = request.refer(); + this.requestReference = request.refer(this); } @Override @@ -121,7 +126,7 @@ class ProxyRequestHandler implements DelegatedRequestHandler { Objects.requireNonNull(delegate, "delegate"); this.request = request; this.delegate = delegate; - this.requestReference = request.refer(); + this.requestReference = request.refer(this); } @Override @@ -169,7 +174,7 @@ class ProxyRequestHandler implements DelegatedRequestHandler { public ProxyCompletionHandler(SharedResource request, CompletionHandler delegate) { this.delegate = delegate; - this.requestReference = request.refer(); + this.requestReference = request.refer(this); } @Override diff --git a/jdisc_core/src/main/java/com/yahoo/jdisc/Request.java b/jdisc_core/src/main/java/com/yahoo/jdisc/Request.java index eeb787e59dd..a6e6e734e6f 100644 --- a/jdisc_core/src/main/java/com/yahoo/jdisc/Request.java +++ b/jdisc_core/src/main/java/com/yahoo/jdisc/Request.java @@ -121,7 +121,7 @@ public class Request extends AbstractResource { creationTime = parent.container().currentTimeMillis(); serverRequest = false; setUri(uri); - parentReference = this.parent.refer(); + parentReference = this.parent.refer(this); } /** Returns the {@link Container} for which this Request was created */ diff --git a/jdisc_core/src/main/java/com/yahoo/jdisc/SharedResource.java b/jdisc_core/src/main/java/com/yahoo/jdisc/SharedResource.java index dee0f8ee410..70bfec36a26 100644 --- a/jdisc_core/src/main/java/com/yahoo/jdisc/SharedResource.java +++ b/jdisc_core/src/main/java/com/yahoo/jdisc/SharedResource.java @@ -52,7 +52,9 @@ public interface SharedResource { * * @see ResourceReference#close() */ - ResourceReference refer(); + default ResourceReference refer() { + return refer(null); + } /** * <p>Creates a reference to this resource. You call this method to prevent an object from being diff --git a/jdisc_core/src/main/java/com/yahoo/jdisc/core/ContainerSnapshot.java b/jdisc_core/src/main/java/com/yahoo/jdisc/core/ContainerSnapshot.java index becfa94e71f..33bec0ec6dc 100644 --- a/jdisc_core/src/main/java/com/yahoo/jdisc/core/ContainerSnapshot.java +++ b/jdisc_core/src/main/java/com/yahoo/jdisc/core/ContainerSnapshot.java @@ -101,6 +101,11 @@ class ContainerSnapshot extends AbstractResource implements Container { } @Override + public ResourceReference refer(Object context) { + return delegate.refer(context); + } + + @Override public void release() { delegate.release(); } diff --git a/jdisc_core/src/main/java/com/yahoo/jdisc/core/TimeoutManagerImpl.java b/jdisc_core/src/main/java/com/yahoo/jdisc/core/TimeoutManagerImpl.java index a6d6e32df06..33ed23c9eee 100644 --- a/jdisc_core/src/main/java/com/yahoo/jdisc/core/TimeoutManagerImpl.java +++ b/jdisc_core/src/main/java/com/yahoo/jdisc/core/TimeoutManagerImpl.java @@ -145,6 +145,11 @@ public class TimeoutManagerImpl { } @Override + public ResourceReference refer(Object context) { + return delegate.refer(context); + } + + @Override public void release() { delegate.release(); } diff --git a/jdisc_core/src/main/java/com/yahoo/jdisc/handler/ThreadedRequestHandler.java b/jdisc_core/src/main/java/com/yahoo/jdisc/handler/ThreadedRequestHandler.java index 6e2895f118b..97e68c72658 100644 --- a/jdisc_core/src/main/java/com/yahoo/jdisc/handler/ThreadedRequestHandler.java +++ b/jdisc_core/src/main/java/com/yahoo/jdisc/handler/ThreadedRequestHandler.java @@ -150,7 +150,7 @@ public abstract class ThreadedRequestHandler extends AbstractRequestHandler { this.request = request; this.content = content; this.responseHandler = responseHandler; - this.requestReference = request.refer(); + this.requestReference = request.refer(this); } @Override |