Class ResteasyProviderFactoryImpl
- All Implemented Interfaces:
Configurable<ResteasyProviderFactory>,Configuration,Providers,HeaderValueProcessor
- Direct Known Subclasses:
LocalResteasyProviderFactory,ThreadLocalResteasyProviderFactory
- Version:
- $Revision: 1 $
- Author:
- Bill Burke
-
Nested Class Summary
Nested classes/interfaces inherited from class jakarta.ws.rs.ext.RuntimeDelegate
RuntimeDelegate.HeaderDelegate<T> -
Field Summary
FieldsModifier and TypeFieldDescriptionprotected SnapshotMap<Type,ContextInjector> protected booleanprotected booleanprotected booleanprotected SnapshotMap<Class<?>,Map<Class<?>, Integer>> protected ClientHelperprotected SnapshotMap<Type,ContextInjector> protected Map<Class<?>,MediaTypeMap<SortedKey<ContextResolver>>> protected SnapshotSet<Feature>protected SnapshotMap<Class<?>,RuntimeDelegate.HeaderDelegate> protected booleanprotected InjectorFactoryprotected booleanprotected SnapshotMap<String,Object> protected SnapshotSet<Class<?>>protected SnapshotSet<Object>protected booleanprotected ResourceBuilderprotected ServerHelperprotected Set<ExtSortedKey<ParamConverterProvider>>protected StatisticsControllerImplprotected SnapshotMap<Class<?>,Class<? extends StringParameterUnmarshaller>> Fields inherited from class jakarta.ws.rs.ext.RuntimeDelegate
JAXRS_RUNTIME_DELEGATE_PROPERTY -
Constructor Summary
ConstructorsConstructorDescriptionResteasyProviderFactoryImpl(boolean defaultExceptionManagerEnabled) Creates a new factory.ResteasyProviderFactoryImpl(RuntimeType runtimeType) Create factory optimized for a ClientResteasyProviderFactoryImpl(RuntimeType runtimeType, ResteasyProviderFactory parent) Create factory optimized for a specific RuntimeType that is a copy of its parent (shallow copy if possible) -
Method Summary
Modifier and TypeMethodDescriptionvoidaddContextInjector(Class provider) voidaddContextResolver(Class provider, boolean isBuiltin, int priority) voidaddFeature(Class<? extends Feature> provider) voidaddHeaderDelegate(Class provider) voidaddHeaderDelegate(Class<? extends RuntimeDelegate.HeaderDelegate> provider, Class<?> headerClass) voidaddHeaderDelegate(Class clazz, RuntimeDelegate.HeaderDelegate header) protected voidaddHeaderDelegateIfAbsent(Class clazz, RuntimeDelegate.HeaderDelegate header) voidaddInjectorFactory(Class provider) voidaddParameterConverterProvider(Class provider, boolean isBuiltin, int priority) voidaddResourceClassProcessor(Class<ResourceClassProcessor> processorClass, int priority) voidaddStringParameterUnmarshaller(Class<? extends StringParameterUnmarshaller> provider) bootstrap(Application application, SeBootstrap.Configuration configuration) Perform startup of the application in Java SE environments.bootstrap(Class<? extends Application> clazz, SeBootstrap.Configuration configuration) Perform startup of the application in Java SE environments.Create a new instance of aSeBootstrap.Configuration.Builder.<T> TcreateEndpoint(Application applicationConfig, Class<T> endpointType) This is a spec method that is unsupported.createEntityPartBuilder(String partName) Create a new instance of aEntityPart.Builder.createHeaderDelegate(Class<T> tClass) Obtain an instance of aRuntimeDelegate.HeaderDelegatefor the supplied class.Create a new instance of aLink.Builder.<T> TcreateProviderInstance(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.Create a new instance of aResponse.ResponseBuilder.<T> StringParameterUnmarshaller<T>createStringParameterUnmarshaller(Class<T> clazz) Create a new instance of aUriBuilder.Create a new instance of aVariant.VariantListBuilder.<T> AsyncClientResponseProvider<T>getAsyncClientResponseProvider(Class<T> type) <T> AsyncResponseProvider<T>getAsyncResponseProvider(Class<T> type) <T> AsyncStreamProvider<T>getAsyncStreamProvider(Class<T> type) Get the immutable set of registered JAX-RS component (such as provider, root resource orfeature) classes to be instantiated, injected and utilized in the scope of the configurable instance.<T> MessageBodyReader<T>getClientMessageBodyReader(Class<T> type, Type genericType, Annotation[] annotations, MediaType mediaType) protected MediaTypeMap<SortedKey<MessageBodyReader>><T> MessageBodyWriter<T>getClientMessageBodyWriter(Class<T> type, Type genericType, Annotation[] annotations, MediaType mediaType) protected MediaTypeMap<SortedKey<MessageBodyWriter>>getConcreteMediaTypeFromMessageBodyWriters(Class<?> type, Type genericType, Annotation[] annotations, MediaType mediaType) Get a live view of an internal configuration state of this configurable instance.<T> TgetContextData(Class<T> type) <T> TgetContextData(Class<T> rawType, Type genericType, Annotation[] annotations, boolean unwrapAsync) <T> ContextResolver<T>getContextResolver(Class<T> contextType, MediaType mediaType) Get a context resolver for a particular type of context and media type.protected Map<Class<?>,MediaTypeMap<SortedKey<ContextResolver>>> getContextResolvers(Class<?> clazz, MediaType type) getContracts(Class<?> componentClass) Get the extension contract registration information for a component of a given class.<T extends Throwable>
ExceptionMapper<T>getExceptionMapper(Class<T> type) Get an exception mapping provider for a particular class of exception.<T extends Throwable>
ExceptionMapper<T>getExceptionMapperForClass(Class<T> type) getHeaderDelegate(Class<?> aClass) Checks to see if RuntimeDelegate is a ResteasyProviderFactory If it is, then use that, otherwise use this.protected Map<Class<?>,RuntimeDelegate.HeaderDelegate> Get the immutable set of registered JAX-RS component (such as provider orfeature) instances to be utilized by the configurable instance.<T> MessageBodyReader<T>getMessageBodyReader(Class<T> type, Type genericType, Annotation[] annotations, MediaType mediaType) Always returns server MBRs.<T> MessageBodyWriter<T>getMessageBodyWriter(Class<T> type, Type genericType, Annotation[] annotations, MediaType mediaType) Always gets server MBW.getParamConverter(Class clazz, Type genericType, Annotation[] annotations) Map<MessageBodyWriter<?>,Class<?>> getPossibleMessageBodyWritersMap(Class type, Type genericType, Annotation[] annotations, MediaType accept) Get the immutable bag of configuration properties.getProperty(String name) Get the value for the property with a given name.Returns an immutablecollectioncontaining the property names available within the context of the current configuration instance.Gets provide classes.Gets provider instances.Get the runtime type of this configuration context.<I extends RxInvoker>
RxInvokerProvider<I>getRxInvokerProvider(Class<I> clazz) getRxInvokerProviderFromReactiveClass(Class<?> clazz) <T> MessageBodyReader<T>getServerMessageBodyReader(Class<T> type, Type genericType, Annotation[] annotations, MediaType mediaType) Deprecated.<T> MessageBodyReader<T>getServerMessageBodyReader(Class<T> type, Type genericType, Annotation[] annotations, MediaType mediaType, RESTEasyTracingLogger tracingLogger) protected MediaTypeMap<SortedKey<MessageBodyReader>><T> MessageBodyWriter<T>getServerMessageBodyWriter(Class<T> type, Type genericType, Annotation[] annotations, MediaType mediaType) Deprecated.<T> MessageBodyWriter<T>getServerMessageBodyWriter(Class<T> type, Type genericType, Annotation[] annotations, MediaType mediaType, RESTEasyTracingLogger tracingLogger) protected MediaTypeMap<SortedKey<MessageBodyWriter>>protected Set<ExtSortedKey<ParamConverterProvider>>protected Map<Class<?>,Class<? extends StringParameterUnmarshaller>> Returns an exception mapper which handles the generic throwable which is typically the default exception mapper.booleanhasProperty(String name) Check whether the property with a given name is configured.protected voidvoidprotected voidinitializeCommon(ResteasyProviderFactoryImpl parent, boolean lockSnapshots, boolean snapFirst) <T> TinjectedInstance(Class<? extends T> clazz) Property and constructor injection using the InjectorFactory.<T> TinjectedInstance(Class<? extends T> clazz, HttpRequest request, HttpResponse response) Property and constructor injection using the InjectorFactory.voidinjectProperties(Object obj) voidinjectProperties(Object obj, HttpRequest request, HttpResponse response) booleanbooleanIndicates whether the default exception manager is enabled.booleanCheck if a particularfeatureinstance has been previously enabled in the runtime configuration context.booleanCheck if afeatureinstance offeatureClassclass has been previously enabled in the runtime configuration context.protected booleanbooleanisReactive(Class<?> clazz) booleanbooleanisRegistered(Class<?> componentClass) Check if a JAX-RS component of the suppliedcomponentClassclass has been previously registered in the runtime configuration context.booleanisRegistered(Object component) Check if a particular JAX-RScomponentinstance (such as providers orfeatures) has been previously registered in the runtime configuration context.voidSet the new configuration property, if already set, the existing value of the property will be updated.Register a class of a custom JAX-RS component (such as an extension provider or afeaturemeta-provider) to be instantiated and used in the scope of this configurable context.Register a class of a custom JAX-RS component (such as an extension provider or afeaturemeta-provider) to be instantiated and used in the scope of this configurable context.Register a class of a custom JAX-RS component (such as an extension provider or afeaturemeta-provider) to be instantiated and used in the scope of this configurable context.Register a class of a custom JAX-RS component (such as an extension provider or afeaturemeta-provider) to be instantiated and used in the scope of this configurable context.Register an instance of a custom JAX-RS component (such as an extension provider or afeaturemeta-provider) to be instantiated and used in the scope of this configurable context.Register an instance of a custom JAX-RS component (such as an extension provider or afeaturemeta-provider) to be instantiated and used in the scope of this configurable context.Register an instance of a custom JAX-RS component (such as an extension provider or afeaturemeta-provider) to be instantiated and used in the scope of this configurable context.Register an instance of a custom JAX-RS component (such as an extension provider or afeaturemeta-provider) to be instantiated and used in the scope of this configurable context.protected voidvoidregisterProvider(Class provider) voidregisterProvider(Class provider, boolean isBuiltin) Register a @Provider class.voidregisterProvider(Class provider, Integer priorityOverride, boolean isBuiltin, Map<Class<?>, Integer> contracts) voidregisterProviderInstance(Object provider) Register a @Provider object.voidregisterProviderInstance(Object provider, Map<Class<?>, Integer> contracts, Integer priorityOverride, boolean builtIn) voidsetBuiltinsRegistered(boolean builtinsRegistered) voidsetInjectorFactory(InjectorFactory injectorFactory) setProperties(Map<String, Object> properties) voidsetRegisterBuiltins(boolean registerBuiltins) toHeaderString(Object object) Convert an object to a header string.toString(Object object, Class clazz, Type genericType, Annotation[] annotations) Convert an object to a string.Methods inherited from class org.jboss.resteasy.spi.ResteasyProviderFactory
clearInstanceIfEqual, getInstance, isA, isA, newInstance, peekInstance, setInstance, setRegisterBuiltinByDefaultMethods inherited from class jakarta.ws.rs.ext.RuntimeDelegate
setInstance
-
Field Details
-
clientHelper
-
serverHelper
-
providerClasses
-
providerInstances
-
classContracts
-
properties
-
headerDelegates
-
contextInjectors
-
asyncContextInjectors
-
stringParameterUnmarshallers
protected SnapshotMap<Class<?>,Class<? extends StringParameterUnmarshaller>> stringParameterUnmarshallers -
enabledFeatures
-
attachedContextResolvers
protected boolean attachedContextResolvers -
contextResolvers
-
attachedParamConverterProviders
protected boolean attachedParamConverterProviders -
sortedParamConverterProviders
-
alreadyEstablishedNullHeaderDelegate
-
builtinsRegistered
protected boolean builtinsRegistered -
registerBuiltins
protected boolean registerBuiltins -
injectorFactory
-
resourceBuilder
-
initialized
protected boolean initialized -
lockSnapshots
protected boolean lockSnapshots -
statisticsController
-
-
Constructor Details
-
ResteasyProviderFactoryImpl
public ResteasyProviderFactoryImpl() -
ResteasyProviderFactoryImpl
public ResteasyProviderFactoryImpl(boolean defaultExceptionManagerEnabled) Creates a new factory.- Parameters:
defaultExceptionManagerEnabled-trueif the default exception manager should be enabled
-
ResteasyProviderFactoryImpl
Create factory optimized for a Client- Parameters:
runtimeType-
-
ResteasyProviderFactoryImpl
Create factory optimized for a specific RuntimeType that is a copy of its parent (shallow copy if possible)- Parameters:
runtimeType-parent-
-
-
Method Details
-
registerBuiltin
protected void registerBuiltin()- Specified by:
registerBuiltinin classResteasyProviderFactory
-
initializeCommon
protected void initializeCommon(ResteasyProviderFactoryImpl parent, boolean lockSnapshots, boolean snapFirst) -
initialize
protected void initialize() -
lockSnapshots
public void lockSnapshots() -
getServerDynamicFeatures
- Specified by:
getServerDynamicFeaturesin classResteasyProviderFactory
-
getClientDynamicFeatures
- Specified by:
getClientDynamicFeaturesin classResteasyProviderFactory
-
getServerMessageBodyReaders
-
getServerMessageBodyWriters
-
getClientMessageBodyReaders
-
getClientMessageBodyWriters
-
getAsyncResponseProviders
- Specified by:
getAsyncResponseProvidersin classResteasyProviderFactory
-
getAsyncStreamProviders
- Specified by:
getAsyncStreamProvidersin classResteasyProviderFactory
-
getAsyncClientResponseProviders
- Specified by:
getAsyncClientResponseProvidersin classResteasyProviderFactory
-
getContextInjectors
- Specified by:
getContextInjectorsin classResteasyProviderFactory
-
getAsyncContextInjectors
- Specified by:
getAsyncContextInjectorsin classResteasyProviderFactory
-
getContextResolvers
-
getSortedParamConverterProviders
-
getStringParameterUnmarshallers
protected Map<Class<?>,Class<? extends StringParameterUnmarshaller>> getStringParameterUnmarshallers() -
getProviderClasses
Gets provide classes.- Specified by:
getProviderClassesin classResteasyProviderFactory- Returns:
- set of provider classes
-
getProviderInstances
Gets provider instances.- Specified by:
getProviderInstancesin classResteasyProviderFactory- Returns:
- set of provider instances
-
getClassContracts
-
getContextData
public <T> T getContextData(Class<T> rawType, Type genericType, Annotation[] annotations, boolean unwrapAsync) - Specified by:
getContextDatain classResteasyProviderFactory
-
isRegisterBuiltins
public boolean isRegisterBuiltins()- Specified by:
isRegisterBuiltinsin classResteasyProviderFactory
-
setRegisterBuiltins
public void setRegisterBuiltins(boolean registerBuiltins) - Specified by:
setRegisterBuiltinsin classResteasyProviderFactory
-
getInjectorFactory
- Specified by:
getInjectorFactoryin classResteasyProviderFactory
-
setInjectorFactory
- Specified by:
setInjectorFactoryin classResteasyProviderFactory
-
getServerReaderInterceptorRegistry
- Specified by:
getServerReaderInterceptorRegistryin classResteasyProviderFactory
-
getServerWriterInterceptorRegistry
- Specified by:
getServerWriterInterceptorRegistryin classResteasyProviderFactory
-
getContainerRequestFilterRegistry
- Specified by:
getContainerRequestFilterRegistryin classResteasyProviderFactory
-
getContainerResponseFilterRegistry
- Specified by:
getContainerResponseFilterRegistryin classResteasyProviderFactory
-
getClientReaderInterceptorRegistry
- Specified by:
getClientReaderInterceptorRegistryin classResteasyProviderFactory
-
getClientWriterInterceptorRegistry
- Specified by:
getClientWriterInterceptorRegistryin classResteasyProviderFactory
-
getClientRequestFilterRegistry
- Specified by:
getClientRequestFilterRegistryin classResteasyProviderFactory
-
getClientResponseFilters
- Specified by:
getClientResponseFiltersin classResteasyProviderFactory
-
isBuiltinsRegistered
public boolean isBuiltinsRegistered()- Specified by:
isBuiltinsRegisteredin classResteasyProviderFactory
-
setBuiltinsRegistered
public void setBuiltinsRegistered(boolean builtinsRegistered) - Specified by:
setBuiltinsRegisteredin classResteasyProviderFactory
-
createUriBuilder
Description copied from class:RuntimeDelegateCreate a new instance of aUriBuilder.- Specified by:
createUriBuilderin classRuntimeDelegate- Returns:
- new
UriBuilderinstance. - See Also:
-
createResponseBuilder
Description copied from class:RuntimeDelegateCreate a new instance of aResponse.ResponseBuilder.- Specified by:
createResponseBuilderin classRuntimeDelegate- Returns:
- new
ResponseBuilderinstance. - See Also:
-
createVariantListBuilder
Description copied from class:RuntimeDelegateCreate a new instance of aVariant.VariantListBuilder.- Specified by:
createVariantListBuilderin classRuntimeDelegate- Returns:
- new
VariantListBuilderinstance. - See Also:
-
createHeaderDelegate
Description copied from class:RuntimeDelegateObtain an instance of aRuntimeDelegate.HeaderDelegatefor the supplied class. An implementation is required to support the following values for type:CacheControl,Cookie,EntityTag,Link,NewCookie,MediaTypeandjava.util.Date.- Specified by:
createHeaderDelegatein classRuntimeDelegate- Type Parameters:
T- header type.- Parameters:
tClass- the class of the header.- Returns:
- an instance of
HeaderDelegatefor the supplied type. - See Also:
-
getHeaderDelegates
-
addHeaderDelegate
- Specified by:
addHeaderDelegatein classResteasyProviderFactory
-
addHeaderDelegateIfAbsent
-
getServerMessageBodyReader
@Deprecated public <T> MessageBodyReader<T> getServerMessageBodyReader(Class<T> type, Type genericType, Annotation[] annotations, MediaType mediaType) Deprecated.- Specified by:
getServerMessageBodyReaderin classResteasyProviderFactory
-
getServerMessageBodyReader
public <T> MessageBodyReader<T> getServerMessageBodyReader(Class<T> type, Type genericType, Annotation[] annotations, MediaType mediaType, RESTEasyTracingLogger tracingLogger) -
getMessageBodyReader
public <T> MessageBodyReader<T> getMessageBodyReader(Class<T> type, Type genericType, Annotation[] annotations, MediaType mediaType) Always returns server MBRs.- Specified by:
getMessageBodyReaderin interfaceProviders- Type Parameters:
T- type- Parameters:
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 byClass.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 byClass.getParameterAnnotations.mediaType- the media type of the data that will be read.- Returns:
- message reader
-
getClientMessageBodyReader
public <T> MessageBodyReader<T> getClientMessageBodyReader(Class<T> type, Type genericType, Annotation[] annotations, MediaType mediaType) - Specified by:
getClientMessageBodyReaderin classResteasyProviderFactory
-
addStringParameterUnmarshaller
-
getContextResolvers
- Specified by:
getContextResolversin classResteasyProviderFactory
-
getParamConverter
- Specified by:
getParamConverterin classResteasyProviderFactory
-
createStringParameterUnmarshaller
- Specified by:
createStringParameterUnmarshallerin classResteasyProviderFactory
-
registerProvider
- Specified by:
registerProviderin classResteasyProviderFactory
-
toString
Convert an object to a string. First try StringConverter then, object.ToString()- Specified by:
toStringin classResteasyProviderFactory- Parameters:
object- objectclazz- classgenericType- generic typeannotations- array of annotation- Returns:
- string representation
-
toHeaderString
Description copied from interface:HeaderValueProcessorConvert an object to a header string. First try StringConverter, then HeaderDelegate, then object.toString().- Specified by:
toHeaderStringin interfaceHeaderValueProcessor- Parameters:
object- header object- Returns:
- header string representation
-
getHeaderDelegate
Checks to see if RuntimeDelegate is a ResteasyProviderFactory If it is, then use that, otherwise use this.- Specified by:
getHeaderDelegatein classResteasyProviderFactory- Parameters:
aClass- class of the header- Returns:
- header delegate
-
registerProvider
Register a @Provider class. Can be a MessageBodyReader/Writer or ExceptionMapper.- Specified by:
registerProviderin classResteasyProviderFactory- Parameters:
provider- provider classisBuiltin- built-in
-
registerProvider
public void registerProvider(Class provider, Integer priorityOverride, boolean isBuiltin, Map<Class<?>, Integer> contracts) - Specified by:
registerProviderin classResteasyProviderFactory
-
getMutableProviderClasses
-
addHeaderDelegate
-
getClientHelper
-
getServerHelper
-
addHeaderDelegate
public void addHeaderDelegate(Class<? extends RuntimeDelegate.HeaderDelegate> provider, Class<?> headerClass) -
addFeature
-
addInjectorFactory
public void addInjectorFactory(Class provider) throws InstantiationException, IllegalAccessException -
addContextInjector
-
addContextResolver
-
addParameterConverterProvider
-
registerProviderInstance
Register a @Provider object. Can be a MessageBodyReader/Writer or ExceptionMapper.- Specified by:
registerProviderInstancein classResteasyProviderFactory- Parameters:
provider- provider instance
-
registerProviderInstance
public void registerProviderInstance(Object provider, Map<Class<?>, Integer> contracts, Integer priorityOverride, boolean builtIn) - Specified by:
registerProviderInstancein classResteasyProviderFactory
-
getExceptionMapper
Description copied from interface:ProvidersGet an exception mapping provider for a particular class of exception. Returns the provider whose generic type is the nearest superclass oftype.- Specified by:
getExceptionMapperin interfaceProviders- Type Parameters:
T- type of the exception handled by the exception mapping provider.- Parameters:
type- the class of exception.- Returns:
- an
ExceptionMapperfor the supplied type ornullif none is found.
-
getExceptionMapperForClass
-
getAsyncResponseProvider
- Specified by:
getAsyncResponseProviderin classResteasyProviderFactory
-
getAsyncClientResponseProvider
- Specified by:
getAsyncClientResponseProviderin classResteasyProviderFactory
-
getAsyncStreamProvider
- Specified by:
getAsyncStreamProviderin classResteasyProviderFactory
-
getConcreteMediaTypeFromMessageBodyWriters
public MediaType getConcreteMediaTypeFromMessageBodyWriters(Class<?> type, Type genericType, Annotation[] annotations, MediaType mediaType) - Specified by:
getConcreteMediaTypeFromMessageBodyWritersin classResteasyProviderFactory
-
getPossibleMessageBodyWritersMap
public Map<MessageBodyWriter<?>,Class<?>> getPossibleMessageBodyWritersMap(Class type, Type genericType, Annotation[] annotations, MediaType accept) - Specified by:
getPossibleMessageBodyWritersMapin classResteasyProviderFactory
-
getServerMessageBodyWriter
@Deprecated public <T> MessageBodyWriter<T> getServerMessageBodyWriter(Class<T> type, Type genericType, Annotation[] annotations, MediaType mediaType) Deprecated.- Specified by:
getServerMessageBodyWriterin classResteasyProviderFactory
-
getServerMessageBodyWriter
public <T> MessageBodyWriter<T> getServerMessageBodyWriter(Class<T> type, Type genericType, Annotation[] annotations, MediaType mediaType, RESTEasyTracingLogger tracingLogger) -
getMessageBodyWriter
public <T> MessageBodyWriter<T> getMessageBodyWriter(Class<T> type, Type genericType, Annotation[] annotations, MediaType mediaType) Always gets server MBW.- Specified by:
getMessageBodyWriterin interfaceProviders- Type Parameters:
T- type- Parameters:
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 byField.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 byField.getDeclaredAnnotations.mediaType- the media type of the data that will be written.- Returns:
- message writer
-
getClientMessageBodyWriter
public <T> MessageBodyWriter<T> getClientMessageBodyWriter(Class<T> type, Type genericType, Annotation[] annotations, MediaType mediaType) - Specified by:
getClientMessageBodyWriterin classResteasyProviderFactory
-
createEndpoint
public <T> T createEndpoint(Application applicationConfig, Class<T> endpointType) throws IllegalArgumentException, UnsupportedOperationException This is a spec method that is unsupported. It is an optional method anyways.- Specified by:
createEndpointin classRuntimeDelegate- Type Parameters:
T- endpoint type.- Parameters:
applicationConfig- applicationendpointType- endpoint type- Returns:
- endpoint
- Throws:
IllegalArgumentException- if applicationConfig is nullUnsupportedOperationException- allways throw since this method is not supported
-
getContextResolver
Description copied from interface:ProvidersGet a context resolver for a particular type of context and media type. The set of resolvers is first filtered by comparing the supplied value ofmediaTypewith the value of each resolver'sProduces, ensuring the generic type of the context resolver is assignable to the supplied value ofcontextType, and eliminating those that do not match. If only one resolver matches the criteria then it is returned. If more than one resolver matches then the list of matching resolvers is ordered with those with the best matching values ofProduces(x/y > x/* > */*) sorted first. A proxy is returned that delegates calls toContextResolver.getContext(java.lang.Class)to each matching context resolver in order and returns the first non-null value it obtains or null if all matching context resolvers return null.- Specified by:
getContextResolverin interfaceProviders- Type Parameters:
T- type of the context.- Parameters:
contextType- the class of context desired.mediaType- the media type of data for which a context is required.- Returns:
- a matching context resolver instance or
nullif no matching context providers are found.
-
createProviderInstance
Create an instance of a class using provider allocation rules of the specification as well as the InjectorFactory only does constructor injection.- Specified by:
createProviderInstancein classResteasyProviderFactory- Type Parameters:
T- type- Parameters:
clazz- class- Returns:
- provider instance of type T
-
injectedInstance
Property and constructor injection using the InjectorFactory.- Specified by:
injectedInstancein classResteasyProviderFactory- Type Parameters:
T- type- Parameters:
clazz- class- Returns:
- instance of type T
-
injectedInstance
Property and constructor injection using the InjectorFactory.- Specified by:
injectedInstancein classResteasyProviderFactory- Type Parameters:
T- type- Parameters:
clazz- classrequest- http requestresponse- http response- Returns:
- instance of type T
-
getMutableProperties
- Specified by:
getMutablePropertiesin classResteasyProviderFactory
-
getProperties
Description copied from interface:ConfigurationGet the immutable bag of configuration properties.- Specified by:
getPropertiesin interfaceConfiguration- Returns:
- the immutable view of configuration properties.
-
getProperty
Description copied from interface:ConfigurationGet the value for the property with a given name.- Specified by:
getPropertyin interfaceConfiguration- Parameters:
name- property name.- Returns:
- the property value for the specified property name or
nullif the property with such name is not configured.
-
setProperties
- Specified by:
setPropertiesin classResteasyProviderFactory
-
property
Description copied from interface:ConfigurableSet the new configuration property, if already set, the existing value of the property will be updated. Setting anullvalue into a property effectively removes the property from the property bag.- Specified by:
propertyin interfaceConfigurable<ResteasyProviderFactory>- Parameters:
name- property name.value- (new) property value.nullvalue removes the property with the given name.- Returns:
- the updated configurable instance.
-
getEnabledFeatures
- Specified by:
getEnabledFeaturesin classResteasyProviderFactory
-
register
Description copied from interface:ConfigurableRegister a class of a custom JAX-RS component (such as an extension provider or afeaturemeta-provider) to be instantiated and used in the scope of this configurable context. Implementations SHOULD warn about and ignore registrations that do not conform to the requirements of supported JAX-RS component types in the given configurable context. Any subsequent registration attempts for a component type, for which a class or instance-based registration already exists in the system MUST be rejected by the JAX-RS implementation and a warning SHOULD be raised to inform the user about the rejected registration. The registered JAX-RS component class is registered as a contract provider of all the recognized JAX-RS or implementation-specific extension contracts including meta-provider contracts, such asFeatureorDynamicFeature.As opposed to component instances registered via
Configurable.register(Object)method, the lifecycle of components registered using this class-basedregister(...)method is fully managed by the JAX-RS implementation or any underlying IoC container supported by the implementation.- Specified by:
registerin interfaceConfigurable<ResteasyProviderFactory>- Parameters:
providerClass- JAX-RS component class to be configured in the scope of this configurable context.- Returns:
- the updated configurable context.
-
register
Description copied from interface:ConfigurableRegister an instance of a custom JAX-RS component (such as an extension provider or afeaturemeta-provider) to be instantiated and used in the scope of this configurable context. Implementations SHOULD warn about and ignore registrations that do not conform to the requirements of supported JAX-RS component types in the given configurable context. Any subsequent registration attempts for a component type, for which a class or instance-based registration already exists in the system MUST be rejected by the JAX-RS implementation and a warning SHOULD be raised to inform the user about the rejected registration. The registered JAX-RS component is registered as a contract provider of all the recognized JAX-RS or implementation-specific extension contracts including meta-provider contracts, such asFeatureorDynamicFeature.As opposed to components registered via
Configurable.register(Class)method, the lifecycle of providers registered using this instance-basedregister(...)is not managed by JAX-RS runtime. The same registered component instance is used during the whole lifespan of the configurable context. Fields and properties of all registered JAX-RS component instances are injected with their declared dependencies (seeContext) by the JAX-RS runtime prior to use.- Specified by:
registerin interfaceConfigurable<ResteasyProviderFactory>- Parameters:
provider- JAX-RS component instance to be configured in the scope of this configurable context.- Returns:
- the updated configurable context.
-
register
Description copied from interface:ConfigurableRegister a class of a custom JAX-RS component (such as an extension provider or afeaturemeta-provider) to be instantiated and used in the scope of this configurable context.This registration method provides the same functionality as
Configurable.register(Class)except that any priority specified on the registered JAX-RS component class viajakarta.annotation.Priorityannotation is overridden with the suppliedpriorityvalue.Note that in case the priority is not applicable to a particular provider contract implemented by the class of the registered component, the supplied
priorityvalue will be ignored for that contract.- Specified by:
registerin interfaceConfigurable<ResteasyProviderFactory>- Parameters:
componentClass- JAX-RS component class to be configured in the scope of this configurable context.priority- the overriding priority for the registered component and all the provider contracts the component implements.- Returns:
- the updated configurable context.
-
register
Description copied from interface:ConfigurableRegister a class of a custom JAX-RS component (such as an extension provider or afeaturemeta-provider) to be instantiated and used in the scope of this configurable context.This registration method provides the same functionality as
Configurable.register(Class)except the JAX-RS component class is only registered as a provider of the listed extension provider or meta-providercontracts. All explicitly enumerated contract types must represent a class or an interface implemented or extended by the registered component. Contracts that are notassignable fromthe registered component class MUST be ignored and implementations SHOULD raise a warning to inform users about the ignored contract(s).- Specified by:
registerin interfaceConfigurable<ResteasyProviderFactory>- Parameters:
componentClass- JAX-RS component class to be configured in the scope of this configurable context.contracts- the specific extension provider or meta-provider contracts implemented by the component for which the component should be registered. Implementations MUST ignore attempts to register a component class for an empty ornullcollection of contracts via this method and SHOULD raise a warning about such event.- Returns:
- the updated configurable context.
-
register
Description copied from interface:ConfigurableRegister an instance of a custom JAX-RS component (such as an extension provider or afeaturemeta-provider) to be instantiated and used in the scope of this configurable context.This registration method provides the same functionality as
Configurable.register(Object)except that any priority specified on the registered JAX-RS component class viajakarta.annotation.Priorityannotation is overridden with the suppliedpriorityvalue.Note that in case the priority is not applicable to a particular provider contract implemented by the class of the registered component, the supplied
priorityvalue will be ignored for that contract.- Specified by:
registerin interfaceConfigurable<ResteasyProviderFactory>- Parameters:
component- JAX-RS component instance to be configured in the scope of this configurable context.priority- the overriding priority for the registered component and all the provider contracts the component implements.- Returns:
- the updated configurable context.
-
register
Description copied from interface:ConfigurableRegister an instance of a custom JAX-RS component (such as an extension provider or afeaturemeta-provider) to be instantiated and used in the scope of this configurable context.This registration method provides the same functionality as
Configurable.register(Object)except the JAX-RS component class is only registered as a provider of the listed extension provider or meta-providercontracts. All explicitly enumerated contract types must represent a class or an interface implemented or extended by the registered component. Contracts that are notassignable fromthe registered component class MUST be ignored and implementations SHOULD raise a warning to inform users about the ignored contract(s).- Specified by:
registerin interfaceConfigurable<ResteasyProviderFactory>- Parameters:
component- JAX-RS component instance to be configured in the scope of this configurable context.contracts- the specific extension provider or meta-provider contracts implemented by the component for which the component should be registered. Implementations MUST ignore attempts to register a component class for an empty ornullcollection of contracts via this method and SHOULD raise a warning about such event.- Returns:
- the updated configurable context.
-
register
Description copied from interface:ConfigurableRegister a class of a custom JAX-RS component (such as an extension provider or afeaturemeta-provider) to be instantiated and used in the scope of this configurable context.This registration method provides same functionality as
Configurable.register(Class, Class[])except that any priority specified on the registered JAX-RS component class viajakarta.annotation.Priorityannotation is overridden for each extension provider contract type separately with an integer priority value specified as a value in the supplied map of [contract type, priority] pairs.Note that in case a priority is not applicable to a provider contract registered for the JAX-RS component, the supplied priority value is ignored for such contract.
- Specified by:
registerin interfaceConfigurable<ResteasyProviderFactory>- Parameters:
componentClass- JAX-RS component class to be configured in the scope of this configurable context.contracts- map of the specific extension provider and meta-provider contracts and their associated priorities for which the JAX-RS component is registered. All contracts in the map must represent a class or an interface implemented or extended by the JAX-RS component. Contracts that are notassignable fromthe registered component class MUST be ignored and implementations SHOULD raise a warning to inform users about the ignored contract(s).- Returns:
- the updated configurable context.
-
register
Description copied from interface:ConfigurableRegister an instance of a custom JAX-RS component (such as an extension provider or afeaturemeta-provider) to be instantiated and used in the scope of this configurable context.This registration method provides same functionality as
Configurable.register(Object, Class[])except that any priority specified on the registered JAX-RS component class viajakarta.annotation.Priorityannotation is overridden for each extension provider contract type separately with an integer priority value specified as a value in the supplied map of [contract type, priority] pairs.Note that in case a priority is not applicable to a provider contract registered for the JAX-RS component, the supplied priority value is ignored for such contract.
- Specified by:
registerin interfaceConfigurable<ResteasyProviderFactory>- Parameters:
component- JAX-RS component instance to be configured in the scope of this configurable context.contracts- map of the specific extension provider and meta-provider contracts and their associated priorities for which the JAX-RS component is registered. All contracts in the map must represent a class or an interface implemented or extended by the JAX-RS component. Contracts that are notassignable fromthe registered component class MUST be ignored and implementations SHOULD raise a warning to inform users about the ignored contract(s).- Returns:
- the updated configurable context.
-
getConfiguration
Description copied from interface:ConfigurableGet a live view of an internal configuration state of this configurable instance. Any changes made using methods of thisConfigurableinstance will be reflected in the returnedConfigurationinstance.The returned
Configurationinstance and the collection data it provides are not thread-safe wrt. modification made using methods on the parent configurable object.- Specified by:
getConfigurationin interfaceConfigurable<ResteasyProviderFactory>- Returns:
- configuration live view of the internal configuration state.
-
getRuntimeType
Description copied from interface:ConfigurationGet the runtime type of this configuration context.- Specified by:
getRuntimeTypein interfaceConfiguration- Returns:
- configuration context runtime type.
-
getPropertyNames
Description copied from interface:ConfigurationReturns an immutablecollectioncontaining the property names available within the context of the current configuration instance.Use the
Configuration.getProperty(java.lang.String)method with a property name to get the value of a property.- Specified by:
getPropertyNamesin interfaceConfiguration- Returns:
- an immutable
collectionof property names. - See Also:
-
isEnabled
Description copied from interface:ConfigurationCheck if a particularfeatureinstance has been previously enabled in the runtime configuration context.Method returns
trueonly in case an instance equal to thefeatureinstance is already present among the features previously successfully enabled in the configuration context.- Specified by:
isEnabledin interfaceConfiguration- Parameters:
feature- a feature instance to test for.- Returns:
trueif the feature instance has been previously enabled in this configuration context,falseotherwise.
-
isEnabled
Description copied from interface:ConfigurationCheck if afeatureinstance offeatureClassclass has been previously enabled in the runtime configuration context.Method returns
truein case any instance of thefeatureClassclass is already present among the features previously successfully enabled in the configuration context.- Specified by:
isEnabledin interfaceConfiguration- Parameters:
featureClass- a feature class to test for.- Returns:
trueif a feature of a given class has been previously enabled in this configuration context,falseotherwise.
-
isRegistered
Description copied from interface:ConfigurationCheck if a particular JAX-RScomponentinstance (such as providers orfeatures) has been previously registered in the runtime configuration context.Method returns
trueonly in case an instance equal to thecomponentinstance is already present among the components previously registered in the configuration context.- Specified by:
isRegisteredin interfaceConfiguration- Parameters:
component- a component instance to test for.- Returns:
trueif the component instance has been previously registered in this configuration context,falseotherwise.- See Also:
-
isRegistered
Description copied from interface:ConfigurationCheck if a JAX-RS component of the suppliedcomponentClassclass has been previously registered in the runtime configuration context.Method returns
truein case a component of the suppliedcomponentClassclass is already present among the previously registered component classes or instances in the configuration context.- Specified by:
isRegisteredin interfaceConfiguration- Parameters:
componentClass- a component class to test for.- Returns:
trueif a component of a given class has been previously registered in this configuration context,falseotherwise.- See Also:
-
getContracts
Description copied from interface:ConfigurationGet the extension contract registration information for a component of a given class. For component classes that are not configured in this configuration context the method returns an emptyMap. Method does not returnnull.- Specified by:
getContractsin interfaceConfiguration- Parameters:
componentClass- a component class for which to get contracts.- Returns:
- map of extension contracts and their priorities for which the component class is registered. May return an empty map in case the component has not been registered for any extension contract supported by the implementation.
-
getClasses
Description copied from interface:ConfigurationGet the immutable set of registered JAX-RS component (such as provider, root resource orfeature) classes to be instantiated, injected and utilized in the scope of the configurable instance. In contrast toApplication.getClasses()this method returns a complete runtime view and therefore also includes auto-discovered components.For each component type, there can be only a single class-based or instance-based registration present in the configuration context at any given time.
- Specified by:
getClassesin interfaceConfiguration- Returns:
- the immutable set of registered JAX-RS component classes. The returned value may be empty but will never be
null. - See Also:
-
getInstances
Description copied from interface:ConfigurationGet the immutable set of registered JAX-RS component (such as provider orfeature) instances to be utilized by the configurable instance. Fields and properties of returned instances are injected with their declared dependencies (seeContext) by the runtime prior to use.For each component type, there can be only a single class-based or instance-based registration present in the configuration context at any given time.
- Specified by:
getInstancesin interfaceConfiguration- Returns:
- the immutable set of registered JAX-RS component instances. The returned value may be empty but will never be
null. - See Also:
-
createLinkBuilder
Description copied from class:RuntimeDelegateCreate a new instance of aLink.Builder.- Specified by:
createLinkBuilderin classRuntimeDelegate- Returns:
- new
Link.Builderinstance. - See Also:
-
hasProperty
Description copied from interface:ConfigurationCheck whether the property with a given name is configured.- Specified by:
hasPropertyin interfaceConfiguration- Parameters:
name- property name.- Returns:
falseif the property with such name is not configured,trueotherwise.
-
createConfigurationBuilder
Description copied from class:RuntimeDelegateCreate a new instance of aSeBootstrap.Configuration.Builder.This method is not intended to be invoked by applications. Call
SeBootstrap.Configuration.builder()instead.- Specified by:
createConfigurationBuilderin classRuntimeDelegate- Returns:
- new
SeBootstrap.Configuration.Builderinstance. - See Also:
-
bootstrap
public CompletionStage<SeBootstrap.Instance> bootstrap(Application application, SeBootstrap.Configuration configuration) Description copied from class:RuntimeDelegatePerform startup of the application in Java SE environments.This method is not intended to be invoked by applications. Call
SeBootstrap.start(Application, SeBootstrap.Configuration)instead.- Specified by:
bootstrapin classRuntimeDelegate- Parameters:
application- The application to start up.configuration- The bootstrap configuration.- Returns:
CompletionStageasynchronously producing handle of the running applicationinstance.
-
bootstrap
public CompletionStage<SeBootstrap.Instance> bootstrap(Class<? extends Application> clazz, SeBootstrap.Configuration configuration) Description copied from class:RuntimeDelegatePerform startup of the application in Java SE environments.This method is not intended to be invoked by applications. Call
SeBootstrap.start(Class, SeBootstrap.Configuration)instead.- Specified by:
bootstrapin classRuntimeDelegate- Parameters:
clazz- The application class to instantiate and start.configuration- The bootstrap configuration.- Returns:
CompletionStageasynchronously producing handle of the running applicationinstance.
-
createEntityPartBuilder
Description copied from class:RuntimeDelegateCreate a new instance of aEntityPart.Builder.This method is not intended to be invoked by applications. Call
EntityPart.withName(String)instead.- Specified by:
createEntityPartBuilderin classRuntimeDelegate- Parameters:
partName- name for this part within the multipart body.- Returns:
- new
EntityPart.Builderinstance with specified part name - Throws:
IllegalArgumentException- ifpartNameisnull.
-
getRxInvokerProvider
- Specified by:
getRxInvokerProviderin classResteasyProviderFactory
-
getRxInvokerProviderFromReactiveClass
- Specified by:
getRxInvokerProviderFromReactiveClassin classResteasyProviderFactory
-
isReactive
- Specified by:
isReactivein classResteasyProviderFactory
-
addResourceClassProcessor
-
getResourceBuilder
- Specified by:
getResourceBuilderin classResteasyProviderFactory
-
getContextData
- Specified by:
getContextDatain classResteasyProviderFactory
-
initializeClientProviders
- Specified by:
initializeClientProvidersin classResteasyProviderFactory
-
injectProperties
- Specified by:
injectPropertiesin classResteasyProviderFactory
-
injectProperties
- Specified by:
injectPropertiesin classResteasyProviderFactory
-
getStatisticsController
- Specified by:
getStatisticsControllerin classResteasyProviderFactory
-
getThrowableExceptionMapper
Description copied from class:ResteasyProviderFactoryReturns an exception mapper which handles the generic throwable which is typically the default exception mapper.- Overrides:
getThrowableExceptionMapperin classResteasyProviderFactory- Returns:
- an exception mapper which handles a
Throwable
-
isOnServer
protected boolean isOnServer()- Specified by:
isOnServerin classResteasyProviderFactory
-
isDefaultExceptionManagerEnabled
public boolean isDefaultExceptionManagerEnabled()Indicates whether the default exception manager is enabled.- Returns:
trueif the default exception is enabled, otherwisefalse
-