public class ResteasyProviderFactory extends javax.ws.rs.ext.RuntimeDelegate implements javax.ws.rs.ext.Providers, HeaderValueProcessor, javax.ws.rs.core.Configurable<ResteasyProviderFactory>, javax.ws.rs.core.Configuration
Modifier and Type | Class and Description |
---|---|
protected static class |
ResteasyProviderFactory.SortedKey<T>
Allow us to sort message body implementations that are more specific for their types
i.e.
|
Modifier and Type | Field and Description |
---|---|
protected boolean |
builtinsRegistered |
protected java.util.Map<java.lang.Class<?>,java.util.Map<java.lang.Class<?>,java.lang.Integer>> |
classContracts |
protected java.util.Set<javax.ws.rs.container.DynamicFeature> |
clientDynamicFeatures |
protected java.util.List<ClientErrorInterceptor> |
clientErrorInterceptors |
protected java.util.Map<java.lang.Class<?>,ClientExceptionMapper> |
clientExceptionMappers |
protected InterceptorRegistry<ClientExecutionInterceptor> |
clientExecutionInterceptorRegistry |
protected MediaTypeMap<ResteasyProviderFactory.SortedKey<javax.ws.rs.ext.MessageBodyReader>> |
clientMessageBodyReaders |
protected MediaTypeMap<ResteasyProviderFactory.SortedKey<javax.ws.rs.ext.MessageBodyWriter>> |
clientMessageBodyWriters |
protected ReaderInterceptorRegistry |
clientReaderInterceptorRegistry |
protected JaxrsInterceptorRegistry<javax.ws.rs.client.ClientRequestFilter> |
clientRequestFilters |
protected ClientResponseFilterRegistry |
clientResponseFilters |
protected WriterInterceptorRegistry |
clientWriterInterceptorRegistry |
protected ContainerRequestFilterRegistry |
containerRequestFilterRegistry |
protected ContainerResponseFilterRegistry |
containerResponseFilterRegistry |
protected java.util.Map<java.lang.Class<?>,MediaTypeMap<ResteasyProviderFactory.SortedKey<javax.ws.rs.ext.ContextResolver>>> |
contextResolvers |
protected static ThreadLocalStack<java.util.Map<java.lang.Class<?>,java.lang.Object>> |
contextualData |
protected java.util.Set<javax.ws.rs.core.Feature> |
enabledFeatures |
protected java.util.Map<java.lang.Class<?>,javax.ws.rs.ext.ExceptionMapper> |
exceptionMappers |
protected java.util.Set<java.lang.Class<?>> |
featureClasses |
protected java.util.Set<java.lang.Object> |
featureInstances |
protected java.util.Map<java.lang.Class<?>,javax.ws.rs.ext.RuntimeDelegate.HeaderDelegate> |
headerDelegates |
protected InjectorFactory |
injectorFactory |
protected static ResteasyProviderFactory |
instance |
protected static int |
maxForwards |
protected java.util.List<javax.ws.rs.ext.ParamConverterProvider> |
paramConverterProviders |
protected ResteasyProviderFactory |
parent |
protected static java.util.concurrent.atomic.AtomicReference<ResteasyProviderFactory> |
pfr |
protected LegacyPrecedence |
precedence |
protected java.util.Map<java.lang.String,java.lang.Object> |
properties |
protected java.util.Set<java.lang.Class<?>> |
providerClasses |
protected java.util.Set<java.lang.Object> |
providerInstances |
(package private) static java.lang.Object |
RD_LOCK |
static boolean |
registerBuiltinByDefault |
protected boolean |
registerBuiltins |
protected java.util.Set<javax.ws.rs.container.DynamicFeature> |
serverDynamicFeatures |
protected MediaTypeMap<ResteasyProviderFactory.SortedKey<javax.ws.rs.ext.MessageBodyReader>> |
serverMessageBodyReaders |
protected MediaTypeMap<ResteasyProviderFactory.SortedKey<javax.ws.rs.ext.MessageBodyWriter>> |
serverMessageBodyWriters |
protected ReaderInterceptorRegistry |
serverReaderInterceptorRegistry |
protected WriterInterceptorRegistry |
serverWriterInterceptorRegistry |
protected java.util.Map<java.lang.Class<?>,StringConverter> |
stringConverters |
protected java.util.Map<java.lang.Class<?>,java.lang.Class<? extends StringParameterUnmarshaller>> |
stringParameterUnmarshallers |
Constructor and Description |
---|
ResteasyProviderFactory() |
ResteasyProviderFactory(ResteasyProviderFactory parent)
Copies a specific component registry when a new
provider is added.
|
ResteasyProviderFactory(ResteasyProviderFactory parent,
boolean local)
If local is true, copies components needed by client configuration,
so that parent is not referenced.
|
Modifier and Type | Method and Description |
---|---|
void |
addClientErrorInterceptor(ClientErrorInterceptor handler)
Add a
ClientErrorInterceptor to this provider factory instance. |
void |
addClientExceptionMapper(java.lang.Class<? extends ClientExceptionMapper<?>> providerClass) |
void |
addClientExceptionMapper(ClientExceptionMapper<?> provider) |
void |
addClientExceptionMapper(ClientExceptionMapper<?> provider,
java.lang.Class<?> providerClass) |
void |
addClientExceptionMapper(ClientExceptionMapper<?> provider,
java.lang.reflect.Type exceptionType) |
protected void |
addClientMessageBodyReader(ResteasyProviderFactory.SortedKey<javax.ws.rs.ext.MessageBodyReader> key,
javax.ws.rs.Consumes consumeMime) |
protected void |
addClientMessageBodyWriter(javax.ws.rs.Produces consumeMime,
ResteasyProviderFactory.SortedKey<javax.ws.rs.ext.MessageBodyWriter> key) |
static java.util.Map<java.lang.Class<?>,java.lang.Object> |
addContextDataLevel() |
protected void |
addContextResolver(java.lang.Class<? extends javax.ws.rs.ext.ContextResolver> resolver,
boolean builtin) |
protected void |
addContextResolver(javax.ws.rs.ext.ContextResolver provider) |
protected void |
addContextResolver(javax.ws.rs.ext.ContextResolver provider,
boolean builtin) |
protected void |
addContextResolver(javax.ws.rs.ext.ContextResolver provider,
java.lang.Class providerClass,
boolean builtin) |
protected void |
addContextResolver(javax.ws.rs.ext.ContextResolver provider,
java.lang.reflect.Type typeParameter,
java.lang.Class providerClass,
boolean builtin) |
protected void |
addExceptionMapper(java.lang.Class<? extends javax.ws.rs.ext.ExceptionMapper> providerClass) |
protected void |
addExceptionMapper(javax.ws.rs.ext.ExceptionMapper provider) |
protected void |
addExceptionMapper(javax.ws.rs.ext.ExceptionMapper provider,
java.lang.Class providerClass) |
protected void |
addExceptionMapper(javax.ws.rs.ext.ExceptionMapper provider,
java.lang.reflect.Type exceptionType) |
void |
addHeaderDelegate(java.lang.Class clazz,
javax.ws.rs.ext.RuntimeDelegate.HeaderDelegate header) |
protected void |
addMessageBodyReader(java.lang.Class<? extends javax.ws.rs.ext.MessageBodyReader> provider,
boolean isBuiltin) |
protected void |
addMessageBodyReader(javax.ws.rs.ext.MessageBodyReader provider) |
protected void |
addMessageBodyReader(javax.ws.rs.ext.MessageBodyReader provider,
boolean isBuiltin) |
protected void |
addMessageBodyReader(javax.ws.rs.ext.MessageBodyReader provider,
java.lang.Class<?> providerClass,
boolean isBuiltin)
Specify the provider class.
|
protected void |
addMessageBodyWriter(java.lang.Class<? extends javax.ws.rs.ext.MessageBodyWriter> provider,
boolean isBuiltin) |
protected void |
addMessageBodyWriter(javax.ws.rs.ext.MessageBodyWriter provider) |
protected void |
addMessageBodyWriter(javax.ws.rs.ext.MessageBodyWriter provider,
java.lang.Class<?> providerClass,
boolean isBuiltin)
Specify the provider class.
|
protected void |
addServerMessageBodyReader(ResteasyProviderFactory.SortedKey<javax.ws.rs.ext.MessageBodyReader> key,
javax.ws.rs.Consumes consumeMime) |
protected void |
addServerMessageBodyWriter(javax.ws.rs.Produces consumeMime,
ResteasyProviderFactory.SortedKey<javax.ws.rs.ext.MessageBodyWriter> key) |
protected void |
addStringConverter(java.lang.Class<? extends StringConverter> resolver) |
protected void |
addStringConverter(StringConverter provider) |
protected void |
addStringConverter(StringConverter provider,
java.lang.Class providerClass) |
protected void |
addStringConverter(StringConverter provider,
java.lang.reflect.Type typeParameter) |
void |
addStringParameterUnmarshaller(java.lang.Class<? extends StringParameterUnmarshaller> provider) |
void |
appendInterceptorPrecedence(java.lang.String precedence)
Deprecated.
|
static void |
clearContextData() |
static void |
clearInstanceIfEqual(ResteasyProviderFactory factory) |
<T> ConstructorInjector |
createConstructorInjector(java.lang.Class<? extends T> clazz) |
<T> T |
createEndpoint(javax.ws.rs.core.Application applicationConfig,
java.lang.Class<T> endpointType)
this is a spec method that is unsupported.
|
<T> javax.ws.rs.ext.RuntimeDelegate.HeaderDelegate<T> |
createHeaderDelegate(java.lang.Class<T> tClass) |
protected <T> javax.ws.rs.ext.RuntimeDelegate.HeaderDelegate<T> |
createHeaderDelegateFromInterfaces(java.lang.Class<?>[] interfaces) |
javax.ws.rs.core.Link.Builder |
createLinkBuilder() |
<T> T |
createProviderInstance(java.lang.Class<? extends T> clazz)
Create an instance of a class using provider allocation rules of the specification as well as the InjectorFactory
only does constructor injection
|
javax.ws.rs.core.Response.ResponseBuilder |
createResponseBuilder() |
<T> StringParameterUnmarshaller<T> |
createStringParameterUnmarshaller(java.lang.Class<T> clazz) |
javax.ws.rs.core.UriBuilder |
createUriBuilder() |
javax.ws.rs.core.Variant.VariantListBuilder |
createVariantListBuilder() |
java.util.Map<java.lang.Class<?>,java.util.Map<java.lang.Class<?>,java.lang.Integer>> |
getClassContracts() |
java.util.Set<java.lang.Class<?>> |
getClasses() |
java.util.Set<javax.ws.rs.container.DynamicFeature> |
getClientDynamicFeatures() |
java.util.List<ClientErrorInterceptor> |
getClientErrorInterceptors()
Return the list of currently registered
ClientErrorInterceptor instances. |
<T extends java.lang.Throwable> |
getClientExceptionMapper(java.lang.Class<T> type) |
protected java.util.Map<java.lang.Class<?>,ClientExceptionMapper> |
getClientExceptionMappers() |
InterceptorRegistry<ClientExecutionInterceptor> |
getClientExecutionInterceptorRegistry() |
<T> javax.ws.rs.ext.MessageBodyReader<T> |
getClientMessageBodyReader(java.lang.Class<T> type,
java.lang.reflect.Type genericType,
java.lang.annotation.Annotation[] annotations,
javax.ws.rs.core.MediaType mediaType) |
protected MediaTypeMap<ResteasyProviderFactory.SortedKey<javax.ws.rs.ext.MessageBodyReader>> |
getClientMessageBodyReaders() |
<T> javax.ws.rs.ext.MessageBodyWriter<T> |
getClientMessageBodyWriter(java.lang.Class<T> type,
java.lang.reflect.Type genericType,
java.lang.annotation.Annotation[] annotations,
javax.ws.rs.core.MediaType mediaType) |
protected MediaTypeMap<ResteasyProviderFactory.SortedKey<javax.ws.rs.ext.MessageBodyWriter>> |
getClientMessageBodyWriters() |
ReaderInterceptorRegistry |
getClientReaderInterceptorRegistry() |
JaxrsInterceptorRegistry<javax.ws.rs.client.ClientRequestFilter> |
getClientRequestFilters() |
ClientResponseFilterRegistry |
getClientResponseFilters() |
WriterInterceptorRegistry |
getClientWriterInterceptorRegistry() |
javax.ws.rs.core.MediaType |
getConcreteMediaTypeFromMessageBodyWriters(java.lang.Class type,
java.lang.reflect.Type genericType,
java.lang.annotation.Annotation[] annotations,
javax.ws.rs.core.MediaType mediaType) |
javax.ws.rs.core.Configuration |
getConfiguration() |
ContainerRequestFilterRegistry |
getContainerRequestFilterRegistry() |
ContainerResponseFilterRegistry |
getContainerResponseFilterRegistry() |
static <T> T |
getContextData(java.lang.Class<T> type) |
static int |
getContextDataLevelCount() |
static java.util.Map<java.lang.Class<?>,java.lang.Object> |
getContextDataMap() |
private static java.util.Map<java.lang.Class<?>,java.lang.Object> |
getContextDataMap(boolean create) |
<T> javax.ws.rs.ext.ContextResolver<T> |
getContextResolver(java.lang.Class<T> contextType,
javax.ws.rs.core.MediaType mediaType) |
protected java.util.Map<java.lang.Class<?>,MediaTypeMap<ResteasyProviderFactory.SortedKey<javax.ws.rs.ext.ContextResolver>>> |
getContextResolvers() |
java.util.List<javax.ws.rs.ext.ContextResolver> |
getContextResolvers(java.lang.Class<?> clazz,
javax.ws.rs.core.MediaType type) |
java.util.Map<java.lang.Class<?>,java.lang.Integer> |
getContracts(java.lang.Class<?> componentClass) |
java.util.Collection<javax.ws.rs.core.Feature> |
getEnabledFeatures() |
<T extends java.lang.Throwable> |
getExceptionMapper(java.lang.Class<T> type) |
java.util.Map<java.lang.Class<?>,javax.ws.rs.ext.ExceptionMapper> |
getExceptionMappers() |
java.util.Set<java.lang.Class<?>> |
getFeatureClasses() |
java.util.Set<java.lang.Object> |
getFeatureInstances() |
javax.ws.rs.ext.RuntimeDelegate.HeaderDelegate |
getHeaderDelegate(java.lang.Class<?> aClass)
Checks to see if RuntimeDelegate is a ResteasyProviderFactory
If it is, then use that, otherwise use this
|
protected java.util.Map<java.lang.Class<?>,javax.ws.rs.ext.RuntimeDelegate.HeaderDelegate> |
getHeaderDelegates() |
InjectorFactory |
getInjectorFactory() |
static ResteasyProviderFactory |
getInstance()
Initializes ResteasyProviderFactory singleton if not set
|
java.util.Set<java.lang.Object> |
getInstances() |
<T> javax.ws.rs.ext.MessageBodyReader<T> |
getMessageBodyReader(java.lang.Class<T> type,
java.lang.reflect.Type genericType,
java.lang.annotation.Annotation[] annotations,
javax.ws.rs.core.MediaType mediaType)
Always returns server MBRs
|
<T> javax.ws.rs.ext.MessageBodyWriter<T> |
getMessageBodyWriter(java.lang.Class<T> type,
java.lang.reflect.Type genericType,
java.lang.annotation.Annotation[] annotations,
javax.ws.rs.core.MediaType mediaType)
Always gets server MBW
|
java.util.Map<java.lang.String,java.lang.Object> |
getMutableProperties() |
javax.ws.rs.ext.ParamConverter |
getParamConverter(java.lang.Class clazz,
java.lang.reflect.Type genericType,
java.lang.annotation.Annotation[] annotations) |
protected java.util.List<javax.ws.rs.ext.ParamConverterProvider> |
getParamConverterProviders() |
ResteasyProviderFactory |
getParent() |
java.util.Map<javax.ws.rs.ext.MessageBodyWriter<?>,java.lang.Class<?>> |
getPossibleMessageBodyWritersMap(java.lang.Class type,
java.lang.reflect.Type genericType,
java.lang.annotation.Annotation[] annotations,
javax.ws.rs.core.MediaType accept) |
protected LegacyPrecedence |
getPrecedence() |
protected int |
getPriority(java.lang.Integer override,
java.util.Map<java.lang.Class<?>,java.lang.Integer> contracts,
java.lang.Class type,
java.lang.Class<?> component) |
java.util.Map<java.lang.String,java.lang.Object> |
getProperties() |
java.lang.Object |
getProperty(java.lang.String name) |
java.util.Collection<java.lang.String> |
getPropertyNames() |
java.util.Set<java.lang.Class<?>> |
getProviderClasses()
Copy
|
java.util.Set<java.lang.Object> |
getProviderInstances()
Copy
|
javax.ws.rs.RuntimeType |
getRuntimeType() |
java.util.Set<javax.ws.rs.container.DynamicFeature> |
getServerDynamicFeatures() |
<T> javax.ws.rs.ext.MessageBodyReader<T> |
getServerMessageBodyReader(java.lang.Class<T> type,
java.lang.reflect.Type genericType,
java.lang.annotation.Annotation[] annotations,
javax.ws.rs.core.MediaType mediaType) |
protected MediaTypeMap<ResteasyProviderFactory.SortedKey<javax.ws.rs.ext.MessageBodyReader>> |
getServerMessageBodyReaders() |
<T> javax.ws.rs.ext.MessageBodyWriter<T> |
getServerMessageBodyWriter(java.lang.Class<T> type,
java.lang.reflect.Type genericType,
java.lang.annotation.Annotation[] annotations,
javax.ws.rs.core.MediaType mediaType) |
protected MediaTypeMap<ResteasyProviderFactory.SortedKey<javax.ws.rs.ext.MessageBodyWriter>> |
getServerMessageBodyWriters() |
ReaderInterceptorRegistry |
getServerReaderInterceptorRegistry() |
WriterInterceptorRegistry |
getServerWriterInterceptorRegistry() |
StringConverter |
getStringConverter(java.lang.Class<?> clazz) |
protected java.util.Map<java.lang.Class<?>,StringConverter> |
getStringConverters() |
protected java.util.Map<java.lang.Class<?>,java.lang.Class<? extends StringParameterUnmarshaller>> |
getStringParameterUnmarshallers() |
protected void |
initialize() |
<T> T |
injectedInstance(java.lang.Class<? extends T> clazz)
Property and constructor injection using the InjectorFactory
|
<T> T |
injectedInstance(java.lang.Class<? extends T> clazz,
HttpRequest request,
HttpResponse response)
Property and constructor injection using the InjectorFactory
|
void |
injectProperties(java.lang.Class declaring,
java.lang.Object obj) |
void |
injectProperties(java.lang.Object obj) |
void |
injectProperties(java.lang.Object obj,
HttpRequest request,
HttpResponse response) |
void |
insertInterceptorPrecedenceAfter(java.lang.String after,
java.lang.String newPrecedence)
Deprecated.
|
void |
insertInterceptorPrecedenceBefore(java.lang.String before,
java.lang.String newPrecedence)
Deprecated.
|
protected boolean |
isA(java.lang.Class target,
java.lang.Class type,
java.util.Map<java.lang.Class<?>,java.lang.Integer> contracts) |
protected boolean |
isA(java.lang.Object target,
java.lang.Class type,
java.util.Map<java.lang.Class<?>,java.lang.Integer> contracts) |
boolean |
isBuiltinsRegistered() |
boolean |
isEnabled(java.lang.Class<? extends javax.ws.rs.core.Feature> featureClass) |
boolean |
isEnabled(javax.ws.rs.core.Feature feature) |
boolean |
isRegisterBuiltins() |
boolean |
isRegistered(java.lang.Class<?> componentClass) |
boolean |
isRegistered(java.lang.Object component) |
static ResteasyProviderFactory |
peekInstance()
Will not initialize singleton if not set
|
static <T> T |
popContextData(java.lang.Class<T> type) |
ResteasyProviderFactory |
property(java.lang.String name,
java.lang.Object value) |
static <T> void |
pushContext(java.lang.Class<T> type,
T data) |
static void |
pushContextDataMap(java.util.Map<java.lang.Class<?>,java.lang.Object> map) |
ResteasyProviderFactory |
register(java.lang.Class<?> providerClass) |
ResteasyProviderFactory |
register(java.lang.Class<?> componentClass,
java.lang.Class<?>... contracts) |
ResteasyProviderFactory |
register(java.lang.Class<?> componentClass,
int priority) |
ResteasyProviderFactory |
register(java.lang.Class<?> componentClass,
java.util.Map<java.lang.Class<?>,java.lang.Integer> contracts) |
ResteasyProviderFactory |
register(java.lang.Object provider) |
ResteasyProviderFactory |
register(java.lang.Object component,
java.lang.Class<?>... contracts) |
ResteasyProviderFactory |
register(java.lang.Object component,
int priority) |
ResteasyProviderFactory |
register(java.lang.Object component,
java.util.Map<java.lang.Class<?>,java.lang.Integer> contracts) |
protected void |
registerDefaultInterceptorPrecedences() |
protected void |
registerDefaultInterceptorPrecedences(InterceptorRegistry registry) |
void |
registerProvider(java.lang.Class provider) |
void |
registerProvider(java.lang.Class provider,
boolean isBuiltin)
Register a @Provider class.
|
void |
registerProvider(java.lang.Class provider,
java.lang.Integer priorityOverride,
boolean isBuiltin,
java.util.Map<java.lang.Class<?>,java.lang.Integer> contracts) |
void |
registerProviderInstance(java.lang.Object provider)
Register a @Provider object.
|
void |
registerProviderInstance(java.lang.Object provider,
java.util.Map<java.lang.Class<?>,java.lang.Integer> contracts,
java.lang.Integer priorityOverride,
boolean builtIn) |
static void |
removeContextDataLevel() |
protected <T> javax.ws.rs.ext.MessageBodyReader<T> |
resolveMessageBodyReader(java.lang.Class<T> type,
java.lang.reflect.Type genericType,
java.lang.annotation.Annotation[] annotations,
javax.ws.rs.core.MediaType mediaType,
MediaTypeMap<ResteasyProviderFactory.SortedKey<javax.ws.rs.ext.MessageBodyReader>> availableReaders) |
protected <T> javax.ws.rs.ext.MessageBodyWriter<T> |
resolveMessageBodyWriter(java.lang.Class<T> type,
java.lang.reflect.Type genericType,
java.lang.annotation.Annotation[] annotations,
javax.ws.rs.core.MediaType mediaType,
MediaTypeMap<ResteasyProviderFactory.SortedKey<javax.ws.rs.ext.MessageBodyWriter>> availableWriters) |
void |
setBuiltinsRegistered(boolean builtinsRegistered) |
void |
setInjectorFactory(InjectorFactory injectorFactory) |
static void |
setInstance(ResteasyProviderFactory factory) |
ResteasyProviderFactory |
setProperties(java.util.Map<java.lang.String,?> properties) |
static void |
setRegisterBuiltinByDefault(boolean registerBuiltinByDefault) |
void |
setRegisterBuiltins(boolean registerBuiltins) |
java.lang.String |
toHeaderString(java.lang.Object object)
Convert an object to a header string.
|
java.lang.String |
toString(java.lang.Object object,
java.lang.Class clazz,
java.lang.reflect.Type genericType,
java.lang.annotation.Annotation[] annotations)
Convert an object to a string.
|
protected static java.util.concurrent.atomic.AtomicReference<ResteasyProviderFactory> pfr
protected static ThreadLocalStack<java.util.Map<java.lang.Class<?>,java.lang.Object>> contextualData
protected static int maxForwards
protected static volatile ResteasyProviderFactory instance
public static boolean registerBuiltinByDefault
protected MediaTypeMap<ResteasyProviderFactory.SortedKey<javax.ws.rs.ext.MessageBodyReader>> serverMessageBodyReaders
protected MediaTypeMap<ResteasyProviderFactory.SortedKey<javax.ws.rs.ext.MessageBodyWriter>> serverMessageBodyWriters
protected MediaTypeMap<ResteasyProviderFactory.SortedKey<javax.ws.rs.ext.MessageBodyReader>> clientMessageBodyReaders
protected MediaTypeMap<ResteasyProviderFactory.SortedKey<javax.ws.rs.ext.MessageBodyWriter>> clientMessageBodyWriters
protected java.util.Map<java.lang.Class<?>,javax.ws.rs.ext.ExceptionMapper> exceptionMappers
protected java.util.Map<java.lang.Class<?>,ClientExceptionMapper> clientExceptionMappers
protected java.util.Map<java.lang.Class<?>,MediaTypeMap<ResteasyProviderFactory.SortedKey<javax.ws.rs.ext.ContextResolver>>> contextResolvers
protected java.util.Map<java.lang.Class<?>,StringConverter> stringConverters
protected java.util.List<javax.ws.rs.ext.ParamConverterProvider> paramConverterProviders
protected java.util.Map<java.lang.Class<?>,java.lang.Class<? extends StringParameterUnmarshaller>> stringParameterUnmarshallers
protected java.util.Map<java.lang.Class<?>,java.util.Map<java.lang.Class<?>,java.lang.Integer>> classContracts
protected java.util.Map<java.lang.Class<?>,javax.ws.rs.ext.RuntimeDelegate.HeaderDelegate> headerDelegates
protected LegacyPrecedence precedence
protected ReaderInterceptorRegistry serverReaderInterceptorRegistry
protected WriterInterceptorRegistry serverWriterInterceptorRegistry
protected ContainerRequestFilterRegistry containerRequestFilterRegistry
protected ContainerResponseFilterRegistry containerResponseFilterRegistry
protected JaxrsInterceptorRegistry<javax.ws.rs.client.ClientRequestFilter> clientRequestFilters
protected ClientResponseFilterRegistry clientResponseFilters
protected ReaderInterceptorRegistry clientReaderInterceptorRegistry
protected WriterInterceptorRegistry clientWriterInterceptorRegistry
protected InterceptorRegistry<ClientExecutionInterceptor> clientExecutionInterceptorRegistry
protected java.util.List<ClientErrorInterceptor> clientErrorInterceptors
protected boolean builtinsRegistered
protected boolean registerBuiltins
protected InjectorFactory injectorFactory
protected ResteasyProviderFactory parent
protected java.util.Set<javax.ws.rs.container.DynamicFeature> serverDynamicFeatures
protected java.util.Set<javax.ws.rs.container.DynamicFeature> clientDynamicFeatures
protected java.util.Set<javax.ws.rs.core.Feature> enabledFeatures
protected java.util.Map<java.lang.String,java.lang.Object> properties
protected java.util.Set<java.lang.Class<?>> providerClasses
protected java.util.Set<java.lang.Object> providerInstances
protected java.util.Set<java.lang.Class<?>> featureClasses
protected java.util.Set<java.lang.Object> featureInstances
static final java.lang.Object RD_LOCK
public ResteasyProviderFactory()
public ResteasyProviderFactory(ResteasyProviderFactory parent)
parent
- public ResteasyProviderFactory(ResteasyProviderFactory parent, boolean local)
parent
- local
- protected void initialize()
public java.util.Set<javax.ws.rs.container.DynamicFeature> getServerDynamicFeatures()
public java.util.Set<javax.ws.rs.container.DynamicFeature> getClientDynamicFeatures()
protected MediaTypeMap<ResteasyProviderFactory.SortedKey<javax.ws.rs.ext.MessageBodyReader>> getServerMessageBodyReaders()
protected MediaTypeMap<ResteasyProviderFactory.SortedKey<javax.ws.rs.ext.MessageBodyWriter>> getServerMessageBodyWriters()
protected MediaTypeMap<ResteasyProviderFactory.SortedKey<javax.ws.rs.ext.MessageBodyReader>> getClientMessageBodyReaders()
protected MediaTypeMap<ResteasyProviderFactory.SortedKey<javax.ws.rs.ext.MessageBodyWriter>> getClientMessageBodyWriters()
public java.util.Map<java.lang.Class<?>,javax.ws.rs.ext.ExceptionMapper> getExceptionMappers()
protected java.util.Map<java.lang.Class<?>,ClientExceptionMapper> getClientExceptionMappers()
protected java.util.Map<java.lang.Class<?>,MediaTypeMap<ResteasyProviderFactory.SortedKey<javax.ws.rs.ext.ContextResolver>>> getContextResolvers()
protected java.util.Map<java.lang.Class<?>,StringConverter> getStringConverters()
protected java.util.List<javax.ws.rs.ext.ParamConverterProvider> getParamConverterProviders()
protected java.util.Map<java.lang.Class<?>,java.lang.Class<? extends StringParameterUnmarshaller>> getStringParameterUnmarshallers()
public java.util.Set<java.lang.Class<?>> getProviderClasses()
public java.util.Set<java.lang.Object> getProviderInstances()
public java.util.Map<java.lang.Class<?>,java.util.Map<java.lang.Class<?>,java.lang.Integer>> getClassContracts()
protected LegacyPrecedence getPrecedence()
public ResteasyProviderFactory getParent()
protected void registerDefaultInterceptorPrecedences(InterceptorRegistry registry)
protected void registerDefaultInterceptorPrecedences()
@Deprecated public void appendInterceptorPrecedence(java.lang.String precedence)
precedence
- @Deprecated public void insertInterceptorPrecedenceAfter(java.lang.String after, java.lang.String newPrecedence)
after
- put newPrecedence after thisnewPrecedence
- @Deprecated public void insertInterceptorPrecedenceBefore(java.lang.String before, java.lang.String newPrecedence)
before
- put newPrecedence before thisnewPrecedence
- public static <T> void pushContext(java.lang.Class<T> type, T data)
public static void pushContextDataMap(java.util.Map<java.lang.Class<?>,java.lang.Object> map)
public static java.util.Map<java.lang.Class<?>,java.lang.Object> getContextDataMap()
public static <T> T getContextData(java.lang.Class<T> type)
public static <T> T popContextData(java.lang.Class<T> type)
public static void clearContextData()
private static java.util.Map<java.lang.Class<?>,java.lang.Object> getContextDataMap(boolean create)
public static java.util.Map<java.lang.Class<?>,java.lang.Object> addContextDataLevel()
public static int getContextDataLevelCount()
public static void removeContextDataLevel()
public static ResteasyProviderFactory peekInstance()
public static void clearInstanceIfEqual(ResteasyProviderFactory factory)
public static void setInstance(ResteasyProviderFactory factory)
public static ResteasyProviderFactory getInstance()
public static void setRegisterBuiltinByDefault(boolean registerBuiltinByDefault)
public boolean isRegisterBuiltins()
public void setRegisterBuiltins(boolean registerBuiltins)
public InjectorFactory getInjectorFactory()
public void setInjectorFactory(InjectorFactory injectorFactory)
public InterceptorRegistry<ClientExecutionInterceptor> getClientExecutionInterceptorRegistry()
public ReaderInterceptorRegistry getServerReaderInterceptorRegistry()
public WriterInterceptorRegistry getServerWriterInterceptorRegistry()
public ContainerRequestFilterRegistry getContainerRequestFilterRegistry()
public ContainerResponseFilterRegistry getContainerResponseFilterRegistry()
public ReaderInterceptorRegistry getClientReaderInterceptorRegistry()
public WriterInterceptorRegistry getClientWriterInterceptorRegistry()
public JaxrsInterceptorRegistry<javax.ws.rs.client.ClientRequestFilter> getClientRequestFilters()
public ClientResponseFilterRegistry getClientResponseFilters()
public boolean isBuiltinsRegistered()
public void setBuiltinsRegistered(boolean builtinsRegistered)
public javax.ws.rs.core.UriBuilder createUriBuilder()
createUriBuilder
in class javax.ws.rs.ext.RuntimeDelegate
public javax.ws.rs.core.Response.ResponseBuilder createResponseBuilder()
createResponseBuilder
in class javax.ws.rs.ext.RuntimeDelegate
public javax.ws.rs.core.Variant.VariantListBuilder createVariantListBuilder()
createVariantListBuilder
in class javax.ws.rs.ext.RuntimeDelegate
public <T> javax.ws.rs.ext.RuntimeDelegate.HeaderDelegate<T> createHeaderDelegate(java.lang.Class<T> tClass)
createHeaderDelegate
in class javax.ws.rs.ext.RuntimeDelegate
protected <T> javax.ws.rs.ext.RuntimeDelegate.HeaderDelegate<T> createHeaderDelegateFromInterfaces(java.lang.Class<?>[] interfaces)
protected java.util.Map<java.lang.Class<?>,javax.ws.rs.ext.RuntimeDelegate.HeaderDelegate> getHeaderDelegates()
public void addHeaderDelegate(java.lang.Class clazz, javax.ws.rs.ext.RuntimeDelegate.HeaderDelegate header)
protected void addMessageBodyReader(java.lang.Class<? extends javax.ws.rs.ext.MessageBodyReader> provider, boolean isBuiltin)
protected void addMessageBodyReader(javax.ws.rs.ext.MessageBodyReader provider)
protected void addMessageBodyReader(javax.ws.rs.ext.MessageBodyReader provider, boolean isBuiltin)
protected void addMessageBodyReader(javax.ws.rs.ext.MessageBodyReader provider, java.lang.Class<?> providerClass, boolean isBuiltin)
provider
- providerClass
- isBuiltin
- protected void addServerMessageBodyReader(ResteasyProviderFactory.SortedKey<javax.ws.rs.ext.MessageBodyReader> key, javax.ws.rs.Consumes consumeMime)
protected void addClientMessageBodyReader(ResteasyProviderFactory.SortedKey<javax.ws.rs.ext.MessageBodyReader> key, javax.ws.rs.Consumes consumeMime)
protected void addMessageBodyWriter(java.lang.Class<? extends javax.ws.rs.ext.MessageBodyWriter> provider, boolean isBuiltin)
protected void addMessageBodyWriter(javax.ws.rs.ext.MessageBodyWriter provider)
protected void addMessageBodyWriter(javax.ws.rs.ext.MessageBodyWriter provider, java.lang.Class<?> providerClass, boolean isBuiltin)
provider
- providerClass
- isBuiltin
- protected void addServerMessageBodyWriter(javax.ws.rs.Produces consumeMime, ResteasyProviderFactory.SortedKey<javax.ws.rs.ext.MessageBodyWriter> key)
protected void addClientMessageBodyWriter(javax.ws.rs.Produces consumeMime, ResteasyProviderFactory.SortedKey<javax.ws.rs.ext.MessageBodyWriter> key)
public <T> javax.ws.rs.ext.MessageBodyReader<T> getServerMessageBodyReader(java.lang.Class<T> type, java.lang.reflect.Type genericType, java.lang.annotation.Annotation[] annotations, javax.ws.rs.core.MediaType mediaType)
public <T> javax.ws.rs.ext.MessageBodyReader<T> getMessageBodyReader(java.lang.Class<T> type, java.lang.reflect.Type genericType, java.lang.annotation.Annotation[] annotations, javax.ws.rs.core.MediaType mediaType)
getMessageBodyReader
in interface javax.ws.rs.ext.Providers
T
- type
- the class of the object that is to be read.genericType
- the type of object to be produced. E.g. if the
message body is to be converted into a method parameter, this will be
the formal type of the method parameter as returned by
Class.getGenericParameterTypes
.annotations
- an array of the annotations on the declaration of the
artifact that will be initialized with the produced instance. E.g. if
the message body is to be converted into a method parameter, this will
be the annotations on that parameter returned by
Class.getParameterAnnotations
.mediaType
- the media type of the data that will be read.public <T> javax.ws.rs.ext.MessageBodyReader<T> getClientMessageBodyReader(java.lang.Class<T> type, java.lang.reflect.Type genericType, java.lang.annotation.Annotation[] annotations, javax.ws.rs.core.MediaType mediaType)
protected <T> javax.ws.rs.ext.MessageBodyReader<T> resolveMessageBodyReader(java.lang.Class<T> type, java.lang.reflect.Type genericType, java.lang.annotation.Annotation[] annotations, javax.ws.rs.core.MediaType mediaType, MediaTypeMap<ResteasyProviderFactory.SortedKey<javax.ws.rs.ext.MessageBodyReader>> availableReaders)
protected void addExceptionMapper(java.lang.Class<? extends javax.ws.rs.ext.ExceptionMapper> providerClass)
protected void addExceptionMapper(javax.ws.rs.ext.ExceptionMapper provider)
protected void addExceptionMapper(javax.ws.rs.ext.ExceptionMapper provider, java.lang.Class providerClass)
protected void addExceptionMapper(javax.ws.rs.ext.ExceptionMapper provider, java.lang.reflect.Type exceptionType)
public void addClientExceptionMapper(java.lang.Class<? extends ClientExceptionMapper<?>> providerClass)
public void addClientExceptionMapper(ClientExceptionMapper<?> provider)
public void addClientExceptionMapper(ClientExceptionMapper<?> provider, java.lang.Class<?> providerClass)
public void addClientExceptionMapper(ClientExceptionMapper<?> provider, java.lang.reflect.Type exceptionType)
public void addClientErrorInterceptor(ClientErrorInterceptor handler)
ClientErrorInterceptor
to this provider factory instance.
Duplicate handlers are ignored. (For Client Proxy API only)public java.util.List<ClientErrorInterceptor> getClientErrorInterceptors()
ClientErrorInterceptor
instances.protected void addContextResolver(java.lang.Class<? extends javax.ws.rs.ext.ContextResolver> resolver, boolean builtin)
protected void addContextResolver(javax.ws.rs.ext.ContextResolver provider)
protected void addContextResolver(javax.ws.rs.ext.ContextResolver provider, boolean builtin)
protected void addContextResolver(javax.ws.rs.ext.ContextResolver provider, java.lang.Class providerClass, boolean builtin)
protected void addContextResolver(javax.ws.rs.ext.ContextResolver provider, java.lang.reflect.Type typeParameter, java.lang.Class providerClass, boolean builtin)
protected void addStringConverter(java.lang.Class<? extends StringConverter> resolver)
protected void addStringConverter(StringConverter provider)
protected void addStringConverter(StringConverter provider, java.lang.Class providerClass)
protected void addStringConverter(StringConverter provider, java.lang.reflect.Type typeParameter)
public void addStringParameterUnmarshaller(java.lang.Class<? extends StringParameterUnmarshaller> provider)
public java.util.List<javax.ws.rs.ext.ContextResolver> getContextResolvers(java.lang.Class<?> clazz, javax.ws.rs.core.MediaType type)
public javax.ws.rs.ext.ParamConverter getParamConverter(java.lang.Class clazz, java.lang.reflect.Type genericType, java.lang.annotation.Annotation[] annotations)
public StringConverter getStringConverter(java.lang.Class<?> clazz)
public <T> StringParameterUnmarshaller<T> createStringParameterUnmarshaller(java.lang.Class<T> clazz)
public void registerProvider(java.lang.Class provider)
public java.lang.String toString(java.lang.Object object, java.lang.Class clazz, java.lang.reflect.Type genericType, java.lang.annotation.Annotation[] annotations)
object
- public java.lang.String toHeaderString(java.lang.Object object)
HeaderValueProcessor
toHeaderString
in interface HeaderValueProcessor
public javax.ws.rs.ext.RuntimeDelegate.HeaderDelegate getHeaderDelegate(java.lang.Class<?> aClass)
aClass
- public void registerProvider(java.lang.Class provider, boolean isBuiltin)
provider
- protected boolean isA(java.lang.Class target, java.lang.Class type, java.util.Map<java.lang.Class<?>,java.lang.Integer> contracts)
protected boolean isA(java.lang.Object target, java.lang.Class type, java.util.Map<java.lang.Class<?>,java.lang.Integer> contracts)
protected int getPriority(java.lang.Integer override, java.util.Map<java.lang.Class<?>,java.lang.Integer> contracts, java.lang.Class type, java.lang.Class<?> component)
public void registerProvider(java.lang.Class provider, java.lang.Integer priorityOverride, boolean isBuiltin, java.util.Map<java.lang.Class<?>,java.lang.Integer> contracts)
public void registerProviderInstance(java.lang.Object provider)
provider
- public void registerProviderInstance(java.lang.Object provider, java.util.Map<java.lang.Class<?>,java.lang.Integer> contracts, java.lang.Integer priorityOverride, boolean builtIn)
public <T extends java.lang.Throwable> javax.ws.rs.ext.ExceptionMapper<T> getExceptionMapper(java.lang.Class<T> type)
getExceptionMapper
in interface javax.ws.rs.ext.Providers
public <T extends java.lang.Throwable> ClientExceptionMapper<T> getClientExceptionMapper(java.lang.Class<T> type)
public javax.ws.rs.core.MediaType getConcreteMediaTypeFromMessageBodyWriters(java.lang.Class type, java.lang.reflect.Type genericType, java.lang.annotation.Annotation[] annotations, javax.ws.rs.core.MediaType mediaType)
public java.util.Map<javax.ws.rs.ext.MessageBodyWriter<?>,java.lang.Class<?>> getPossibleMessageBodyWritersMap(java.lang.Class type, java.lang.reflect.Type genericType, java.lang.annotation.Annotation[] annotations, javax.ws.rs.core.MediaType accept)
public <T> javax.ws.rs.ext.MessageBodyWriter<T> getServerMessageBodyWriter(java.lang.Class<T> type, java.lang.reflect.Type genericType, java.lang.annotation.Annotation[] annotations, javax.ws.rs.core.MediaType mediaType)
public <T> javax.ws.rs.ext.MessageBodyWriter<T> getMessageBodyWriter(java.lang.Class<T> type, java.lang.reflect.Type genericType, java.lang.annotation.Annotation[] annotations, javax.ws.rs.core.MediaType mediaType)
getMessageBodyWriter
in interface javax.ws.rs.ext.Providers
T
- type
- the class of the object that is to be written.genericType
- the type of object to be written. E.g. if the
message body is to be produced from a field, this will be
the declared type of the field as returned by Field.getGenericType
.annotations
- an array of the annotations on the declaration of the
artifact that will be written. E.g. if the
message body is to be produced from a field, this will be
the annotations on that field returned by
Field.getDeclaredAnnotations
.mediaType
- the media type of the data that will be written.public <T> javax.ws.rs.ext.MessageBodyWriter<T> getClientMessageBodyWriter(java.lang.Class<T> type, java.lang.reflect.Type genericType, java.lang.annotation.Annotation[] annotations, javax.ws.rs.core.MediaType mediaType)
protected <T> javax.ws.rs.ext.MessageBodyWriter<T> resolveMessageBodyWriter(java.lang.Class<T> type, java.lang.reflect.Type genericType, java.lang.annotation.Annotation[] annotations, javax.ws.rs.core.MediaType mediaType, MediaTypeMap<ResteasyProviderFactory.SortedKey<javax.ws.rs.ext.MessageBodyWriter>> availableWriters)
public <T> T createEndpoint(javax.ws.rs.core.Application applicationConfig, java.lang.Class<T> endpointType) throws java.lang.IllegalArgumentException, java.lang.UnsupportedOperationException
createEndpoint
in class javax.ws.rs.ext.RuntimeDelegate
applicationConfig
- endpointType
- java.lang.IllegalArgumentException
java.lang.UnsupportedOperationException
public <T> javax.ws.rs.ext.ContextResolver<T> getContextResolver(java.lang.Class<T> contextType, javax.ws.rs.core.MediaType mediaType)
getContextResolver
in interface javax.ws.rs.ext.Providers
public <T> T createProviderInstance(java.lang.Class<? extends T> clazz)
T
- clazz
- public <T> ConstructorInjector createConstructorInjector(java.lang.Class<? extends T> clazz)
public <T> T injectedInstance(java.lang.Class<? extends T> clazz)
T
- clazz
- public <T> T injectedInstance(java.lang.Class<? extends T> clazz, HttpRequest request, HttpResponse response)
T
- clazz
- public void injectProperties(java.lang.Class declaring, java.lang.Object obj)
public void injectProperties(java.lang.Object obj)
public void injectProperties(java.lang.Object obj, HttpRequest request, HttpResponse response)
public java.util.Map<java.lang.String,java.lang.Object> getMutableProperties()
public java.util.Map<java.lang.String,java.lang.Object> getProperties()
getProperties
in interface javax.ws.rs.core.Configuration
public java.lang.Object getProperty(java.lang.String name)
getProperty
in interface javax.ws.rs.core.Configuration
public ResteasyProviderFactory setProperties(java.util.Map<java.lang.String,?> properties)
public ResteasyProviderFactory property(java.lang.String name, java.lang.Object value)
property
in interface javax.ws.rs.core.Configurable<ResteasyProviderFactory>
public java.util.Collection<javax.ws.rs.core.Feature> getEnabledFeatures()
public java.util.Set<java.lang.Class<?>> getFeatureClasses()
public java.util.Set<java.lang.Object> getFeatureInstances()
public ResteasyProviderFactory register(java.lang.Class<?> providerClass)
register
in interface javax.ws.rs.core.Configurable<ResteasyProviderFactory>
public ResteasyProviderFactory register(java.lang.Object provider)
register
in interface javax.ws.rs.core.Configurable<ResteasyProviderFactory>
public ResteasyProviderFactory register(java.lang.Class<?> componentClass, int priority)
register
in interface javax.ws.rs.core.Configurable<ResteasyProviderFactory>
public ResteasyProviderFactory register(java.lang.Class<?> componentClass, java.lang.Class<?>... contracts)
register
in interface javax.ws.rs.core.Configurable<ResteasyProviderFactory>
public ResteasyProviderFactory register(java.lang.Object component, int priority)
register
in interface javax.ws.rs.core.Configurable<ResteasyProviderFactory>
public ResteasyProviderFactory register(java.lang.Object component, java.lang.Class<?>... contracts)
register
in interface javax.ws.rs.core.Configurable<ResteasyProviderFactory>
public ResteasyProviderFactory register(java.lang.Class<?> componentClass, java.util.Map<java.lang.Class<?>,java.lang.Integer> contracts)
register
in interface javax.ws.rs.core.Configurable<ResteasyProviderFactory>
public ResteasyProviderFactory register(java.lang.Object component, java.util.Map<java.lang.Class<?>,java.lang.Integer> contracts)
register
in interface javax.ws.rs.core.Configurable<ResteasyProviderFactory>
public javax.ws.rs.core.Configuration getConfiguration()
getConfiguration
in interface javax.ws.rs.core.Configurable<ResteasyProviderFactory>
public javax.ws.rs.RuntimeType getRuntimeType()
getRuntimeType
in interface javax.ws.rs.core.Configuration
public java.util.Collection<java.lang.String> getPropertyNames()
getPropertyNames
in interface javax.ws.rs.core.Configuration
public boolean isEnabled(javax.ws.rs.core.Feature feature)
isEnabled
in interface javax.ws.rs.core.Configuration
public boolean isEnabled(java.lang.Class<? extends javax.ws.rs.core.Feature> featureClass)
isEnabled
in interface javax.ws.rs.core.Configuration
public boolean isRegistered(java.lang.Object component)
isRegistered
in interface javax.ws.rs.core.Configuration
public boolean isRegistered(java.lang.Class<?> componentClass)
isRegistered
in interface javax.ws.rs.core.Configuration
public java.util.Map<java.lang.Class<?>,java.lang.Integer> getContracts(java.lang.Class<?> componentClass)
getContracts
in interface javax.ws.rs.core.Configuration
public java.util.Set<java.lang.Class<?>> getClasses()
getClasses
in interface javax.ws.rs.core.Configuration
public java.util.Set<java.lang.Object> getInstances()
getInstances
in interface javax.ws.rs.core.Configuration
public javax.ws.rs.core.Link.Builder createLinkBuilder()
createLinkBuilder
in class javax.ws.rs.ext.RuntimeDelegate