Class WebTargetValueParamProvider
- java.lang.Object
-
- org.glassfish.jersey.server.internal.inject.AbstractValueParamProvider
-
- org.glassfish.jersey.server.internal.inject.WebTargetValueParamProvider
-
- All Implemented Interfaces:
ValueParamProvider
final class WebTargetValueParamProvider extends AbstractValueParamProvider
Value supplier provider supporting theUri
injection annotation.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description private static class
WebTargetValueParamProvider.BindingModel
private static class
WebTargetValueParamProvider.ManagedClient
private static class
WebTargetValueParamProvider.WebTargetValueSupplier
-
Nested classes/interfaces inherited from interface org.glassfish.jersey.server.spi.internal.ValueParamProvider
ValueParamProvider.Priority, ValueParamProvider.PriorityType
-
-
Field Summary
Fields Modifier and Type Field Description private java.util.function.Function<java.lang.Class<? extends javax.ws.rs.core.Configuration>,javax.ws.rs.core.Configuration>
clientConfigProvider
private java.util.concurrent.ConcurrentMap<WebTargetValueParamProvider.BindingModel,Value<WebTargetValueParamProvider.ManagedClient>>
managedClients
private java.util.function.Supplier<javax.ws.rs.core.Configuration>
serverConfig
-
Constructor Summary
Constructors Constructor Description WebTargetValueParamProvider(java.util.function.Supplier<javax.ws.rs.core.Configuration> serverConfig, java.util.function.Function<java.lang.Class<? extends javax.ws.rs.core.Configuration>,javax.ws.rs.core.Configuration> clientConfigProvider)
Initialize the provider.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description private void
copyProviders(javax.ws.rs.core.Configuration source, javax.ws.rs.core.Configurable<?> target)
protected java.util.function.Function<ContainerRequest,?>
createValueProvider(Parameter parameter)
Create a value provider for the parameter.private ClientConfig
resolveConfig(java.lang.String configClassProperty, WebTargetValueParamProvider.BindingModel binding)
-
Methods inherited from class org.glassfish.jersey.server.internal.inject.AbstractValueParamProvider
get, getPriority, getValueProvider
-
-
-
-
Field Detail
-
clientConfigProvider
private final java.util.function.Function<java.lang.Class<? extends javax.ws.rs.core.Configuration>,javax.ws.rs.core.Configuration> clientConfigProvider
-
serverConfig
private final java.util.function.Supplier<javax.ws.rs.core.Configuration> serverConfig
-
managedClients
private final java.util.concurrent.ConcurrentMap<WebTargetValueParamProvider.BindingModel,Value<WebTargetValueParamProvider.ManagedClient>> managedClients
-
-
Constructor Detail
-
WebTargetValueParamProvider
public WebTargetValueParamProvider(java.util.function.Supplier<javax.ws.rs.core.Configuration> serverConfig, java.util.function.Function<java.lang.Class<? extends javax.ws.rs.core.Configuration>,javax.ws.rs.core.Configuration> clientConfigProvider)
Initialize the provider.- Parameters:
serverConfig
- server-side serverConfig.clientConfigProvider
- function which get or create a new client serverConfig according to provided class.
-
-
Method Detail
-
copyProviders
private void copyProviders(javax.ws.rs.core.Configuration source, javax.ws.rs.core.Configurable<?> target)
-
createValueProvider
protected java.util.function.Function<ContainerRequest,?> createValueProvider(Parameter parameter)
Description copied from class:AbstractValueParamProvider
Create a value provider for the parameter. May returnnull
in case the parameter is not supported by the value provider.- Specified by:
createValueProvider
in classAbstractValueParamProvider
- Parameters:
parameter
- parameter requesting the value provider instance.- Returns:
- parameter value supplier. Returns
null
if parameter is not supported.
-
resolveConfig
private ClientConfig resolveConfig(java.lang.String configClassProperty, WebTargetValueParamProvider.BindingModel binding)
-
-