diff options
author | Morten Tokle <mortent@verizonmedia.com> | 2021-04-21 08:42:04 +0200 |
---|---|---|
committer | Morten Tokle <mortent@verizonmedia.com> | 2021-04-21 08:42:04 +0200 |
commit | f36017d3f2709e2fa3e555269a4116482129ee2e (patch) | |
tree | ee214beda7621d24717a00771e9129160e4a2a9b /jdisc_core/src/main/java/com/yahoo/jdisc/handler | |
parent | fe1dfc345aa85b593ba536fa2607594751bb8d51 (diff) |
Get request handler spec through delegate
Diffstat (limited to 'jdisc_core/src/main/java/com/yahoo/jdisc/handler')
-rw-r--r-- | jdisc_core/src/main/java/com/yahoo/jdisc/handler/DelegatedRequestHandler.java | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/jdisc_core/src/main/java/com/yahoo/jdisc/handler/DelegatedRequestHandler.java b/jdisc_core/src/main/java/com/yahoo/jdisc/handler/DelegatedRequestHandler.java new file mode 100644 index 00000000000..540fe03accf --- /dev/null +++ b/jdisc_core/src/main/java/com/yahoo/jdisc/handler/DelegatedRequestHandler.java @@ -0,0 +1,15 @@ +// Copyright Verizon Media. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. + +package com.yahoo.jdisc.handler; + +public interface DelegatedRequestHandler extends RequestHandler { + RequestHandler getDelegate(); + + default RequestHandler getDelegateRecursive() { + RequestHandler delegate = getDelegate(); + while(delegate instanceof DelegatedRequestHandler) { + delegate = ((DelegatedRequestHandler) delegate).getDelegate(); + } + return delegate; + } +} |