Skip to content

Commit

Permalink
Store InvocationBuilderListenerStage into Runtime not to look up buil…
Browse files Browse the repository at this point in the history
…der listeners each request

Signed-off-by: jansupol <jan.supol@oracle.com>
  • Loading branch information
jansupol authored and senivam committed Dec 20, 2022
1 parent 8c731ee commit 3a364bc
Show file tree
Hide file tree
Showing 2 changed files with 10 additions and 3 deletions.
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/*
* Copyright (c) 2012, 2020 Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2012, 2022 Oracle and/or its affiliates. All rights reserved.
*
* This program and the accompanying materials are made available under the
* terms of the Eclipse Public License v. 2.0, which is available at
Expand Down Expand Up @@ -81,6 +81,7 @@ class ClientRuntime implements JerseyClient.ShutdownHook, ClientExecutor {

private final InvocationInterceptorStages.PreInvocationInterceptorStage preInvocationInterceptorStage;
private final InvocationInterceptorStages.PostInvocationInterceptorStage postInvocationInterceptorStage;
private final InvocationBuilderListenerStage invocationBuilderListenerStage;

/**
* Create new client request processing runtime.
Expand All @@ -94,6 +95,8 @@ public ClientRuntime(final ClientConfig config, final Connector connector, final
Provider<Ref<ClientRequest>> clientRequest =
() -> injectionManager.getInstance(new GenericType<Ref<ClientRequest>>() {}.getType());

invocationBuilderListenerStage = new InvocationBuilderListenerStage(injectionManager);

RequestProcessingInitializationStage requestProcessingInitializationStage =
new RequestProcessingInitializationStage(clientRequest, bootstrapBag.getMessageBodyWorkers(), injectionManager);

Expand Down Expand Up @@ -399,4 +402,8 @@ public Connector getConnector() {
InjectionManager getInjectionManager() {
return injectionManager;
}

InvocationBuilderListenerStage getInvocationBuilderListenerStage() {
return invocationBuilderListenerStage;
}
}
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/*
* Copyright (c) 2012, 2021 Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2012, 2022 Oracle and/or its affiliates. All rights reserved.
*
* This program and the accompanying materials are made available under the
* terms of the Eclipse Public License v. 2.0, which is available at
Expand Down Expand Up @@ -368,7 +368,7 @@ public String toString() {
}

private static JerseyInvocation.Builder onBuilder(JerseyInvocation.Builder builder) {
new InvocationBuilderListenerStage(builder.request().getInjectionManager()).invokeListener(builder);
builder.request().getClientRuntime().getInvocationBuilderListenerStage().invokeListener(builder);
return builder;
}
}

0 comments on commit 3a364bc

Please sign in to comment.