Package org.apache.cxf.jaxrs.provider
Class ProviderFactory
java.lang.Object
org.apache.cxf.jaxrs.provider.ProviderFactory
- Direct Known Subclasses:
ServerProviderFactory
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprotected static class
protected static class
static class
protected static class
protected static class
protected static class
static class
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final String
protected static final String
static final String
protected static final String
static final String
protected Map<ProviderFactory.NameKey,
ProviderInfo<jakarta.ws.rs.ext.ReaderInterceptor>> protected static final String
protected Map<ProviderFactory.NameKey,
ProviderInfo<jakarta.ws.rs.ext.WriterInterceptor>> -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected void
addProviderToList
(List<?> list, ProviderInfo<?> provider) void
void
protected static int
compareClasses
(Class<?> expectedCls, Object o1, Object o2) protected static int
compareClasses
(Object o1, Object o2) protected static int
compareCustomStatus
(ProviderInfo<?> p1, ProviderInfo<?> p2) protected static boolean
constrainedTo
(Class<?> providerCls, jakarta.ws.rs.RuntimeType type) Checks the presence ofConstrainedTo
annotation and, if present, applicability to the runtime type.<T> ContextProvider<T>
createContextProvider
(Type contextType, org.apache.cxf.message.Message m) <T> jakarta.ws.rs.ext.ContextResolver<T>
createContextResolver
(Type contextType, org.apache.cxf.message.Message m) <T> jakarta.ws.rs.ext.ContextResolver<T>
createContextResolver
(Type contextType, org.apache.cxf.message.Message m, jakarta.ws.rs.core.MediaType type) <T> jakarta.ws.rs.ext.MessageBodyReader<T>
createMessageBodyReader
(Class<T> type, Type genericType, Annotation[] annotations, jakarta.ws.rs.core.MediaType mediaType, org.apache.cxf.message.Message m) <T> List<jakarta.ws.rs.ext.ReaderInterceptor>
createMessageBodyReaderInterceptor
(Class<T> bodyType, Type parameterType, Annotation[] parameterAnnotations, jakarta.ws.rs.core.MediaType mediaType, org.apache.cxf.message.Message m, boolean checkMbrNow, Set<String> names) <T> jakarta.ws.rs.ext.MessageBodyWriter<T>
createMessageBodyWriter
(Class<T> type, Type genericType, Annotation[] annotations, jakarta.ws.rs.core.MediaType mediaType, org.apache.cxf.message.Message m) <T> List<jakarta.ws.rs.ext.WriterInterceptor>
createMessageBodyWriterInterceptor
(Class<T> bodyType, Type parameterType, Annotation[] parameterAnnotations, jakarta.ws.rs.core.MediaType mediaType, org.apache.cxf.message.Message m, Set<String> names) <T> jakarta.ws.rs.ext.ParamConverter<T>
createParameterHandler
(Class<T> paramType, Type genericType, Annotation[] anns, org.apache.cxf.message.Message m) protected static Object
createProvider
(String className, org.apache.cxf.Bus bus) static ProviderInfo<? extends Object>
createProviderFromConstructor
(Constructor<?> c, Map<Class<?>, Object> values, org.apache.cxf.Bus theBus, boolean checkContexts, boolean custom) protected static boolean
filterContractSupported
(ProviderInfo<?> provider, Class<?> providerCls, Class<?> contract) protected static <T> List<ProviderInfo<T>>
getBoundFilters
(Map<ProviderFactory.NameKey, ProviderInfo<T>> boundFilters, Set<String> names) org.apache.cxf.Bus
getBus()
abstract jakarta.ws.rs.core.Configuration
getConfiguration
(org.apache.cxf.message.Message message) List<ProviderInfo<jakarta.ws.rs.ext.ContextResolver<?>>>
jakarta.ws.rs.ext.MessageBodyWriter<?>
getFilterNameBindings
(org.apache.cxf.Bus bus, Object provider) protected static int
getFilterPriority
(ProviderInfo<?> p, Class<?> providerCls) static ProviderFactory
getInstance
(org.apache.cxf.message.Message m) protected <T> boolean
handleMapper
(ProviderInfo<T> em, Class<?> expectedType, org.apache.cxf.message.Message m, Class<?> providerClass, boolean injectContext) protected <T> boolean
handleMapper
(ProviderInfo<T> em, Class<?> expectedType, org.apache.cxf.message.Message m, Class<?> providerClass, Class<?> commonBaseClass, boolean injectContext) protected static ProviderCache
initCache
(org.apache.cxf.Bus theBus) protected static void
initFactory
(ProviderFactory factory) void
initProviders
(List<ClassResourceInfo> cris) protected void
injectContextProxies
(Collection<?>... providerLists) protected void
protected void
injectContextValues
(ProviderInfo<?> pi, org.apache.cxf.message.Message m) boolean
protected static <T> void
mapInterceptorFilters
(Map<ProviderFactory.NameKey, ProviderInfo<T>> map, List<ProviderInfo<T>> filters, Class<?> providerCls, boolean ascending) protected List<ProviderInfo<? extends Object>>
prepareProviders
(boolean custom, boolean busGlobal, Object[] providers, ProviderInfo<jakarta.ws.rs.core.Application> application) void
registerUserProvider
(Object provider) void
setBus
(org.apache.cxf.Bus bus) protected void
protected void
setCommonProviders
(List<ProviderInfo<? extends Object>> theProviders, jakarta.ws.rs.RuntimeType type) void
setProviderComparator
(Comparator<?> providerComparator) protected abstract void
setProviders
(boolean custom, boolean busGlobal, Object... providers) void
setSchemaLocations
(List<String> schemas) void
setUserProviders
(List<?> userProviders) Use for injection of entityProviders
-
Field Details
-
DEFAULT_FILTER_NAME_BINDING
- See Also:
-
PROVIDER_SELECTION_PROPERTY_CHANGED
- See Also:
-
ACTIVE_JAXRS_PROVIDER_KEY
- See Also:
-
SERVER_FACTORY_NAME
- See Also:
-
CLIENT_FACTORY_NAME
- See Also:
-
IGNORE_TYPE_VARIABLES
- See Also:
-
readerInterceptors
protected Map<ProviderFactory.NameKey,ProviderInfo<jakarta.ws.rs.ext.ReaderInterceptor>> readerInterceptors -
writerInterceptors
protected Map<ProviderFactory.NameKey,ProviderInfo<jakarta.ws.rs.ext.WriterInterceptor>> writerInterceptors
-
-
Constructor Details
-
ProviderFactory
protected ProviderFactory(org.apache.cxf.Bus bus)
-
-
Method Details
-
getBus
public org.apache.cxf.Bus getBus() -
initCache
-
initFactory
-
createProvider
-
getConfiguration
public abstract jakarta.ws.rs.core.Configuration getConfiguration(org.apache.cxf.message.Message message) -
createContextResolver
public <T> jakarta.ws.rs.ext.ContextResolver<T> createContextResolver(Type contextType, org.apache.cxf.message.Message m) -
createContextResolver
public <T> jakarta.ws.rs.ext.ContextResolver<T> createContextResolver(Type contextType, org.apache.cxf.message.Message m, jakarta.ws.rs.core.MediaType type) -
createContextProvider
public <T> ContextProvider<T> createContextProvider(Type contextType, org.apache.cxf.message.Message m) -
createParameterHandler
public <T> jakarta.ws.rs.ext.ParamConverter<T> createParameterHandler(Class<T> paramType, Type genericType, Annotation[] anns, org.apache.cxf.message.Message m) -
handleMapper
protected <T> boolean handleMapper(ProviderInfo<T> em, Class<?> expectedType, org.apache.cxf.message.Message m, Class<?> providerClass, boolean injectContext) -
handleMapper
protected <T> boolean handleMapper(ProviderInfo<T> em, Class<?> expectedType, org.apache.cxf.message.Message m, Class<?> providerClass, Class<?> commonBaseClass, boolean injectContext) -
createMessageBodyReaderInterceptor
-
createMessageBodyWriterInterceptor
-
createMessageBodyReader
public <T> jakarta.ws.rs.ext.MessageBodyReader<T> createMessageBodyReader(Class<T> type, Type genericType, Annotation[] annotations, jakarta.ws.rs.core.MediaType mediaType, org.apache.cxf.message.Message m) -
createMessageBodyWriter
public <T> jakarta.ws.rs.ext.MessageBodyWriter<T> createMessageBodyWriter(Class<T> type, Type genericType, Annotation[] annotations, jakarta.ws.rs.core.MediaType mediaType, org.apache.cxf.message.Message m) -
setBusProviders
protected void setBusProviders() -
setProviders
-
setCommonProviders
protected void setCommonProviders(List<ProviderInfo<? extends Object>> theProviders, jakarta.ws.rs.RuntimeType type) -
isParamConverterContextsAvailable
public boolean isParamConverterContextsAvailable() -
injectContextValues
-
addProviderToList
-
injectContextProxies
-
injectContextProxiesIntoProvider
-
getContextResolvers
-
registerUserProvider
-
setUserProviders
Use for injection of entityProviders- Parameters:
userProviders
- the userProviders to set
-
compareCustomStatus
-
clearThreadLocalProxies
public void clearThreadLocalProxies() -
clearProviders
public void clearProviders() -
setBus
public void setBus(org.apache.cxf.Bus bus) -
setSchemaLocations
-
getBoundFilters
protected static <T> List<ProviderInfo<T>> getBoundFilters(Map<ProviderFactory.NameKey, ProviderInfo<T>> boundFilters, Set<String> names) -
initProviders
-
getInstance
-
compareClasses
-
compareClasses
-
createProviderFromConstructor
public static ProviderInfo<? extends Object> createProviderFromConstructor(Constructor<?> c, Map<Class<?>, Object> values, org.apache.cxf.Bus theBus, boolean checkContexts, boolean custom) -
mapInterceptorFilters
protected static <T> void mapInterceptorFilters(Map<ProviderFactory.NameKey, ProviderInfo<T>> map, List<ProviderInfo<T>> filters, Class<?> providerCls, boolean ascending) -
getFilterNameBindings
-
getFilterNameBindings
-
getFilterPriority
-
filterContractSupported
protected static boolean filterContractSupported(ProviderInfo<?> provider, Class<?> providerCls, Class<?> contract) -
prepareProviders
protected List<ProviderInfo<? extends Object>> prepareProviders(boolean custom, boolean busGlobal, Object[] providers, ProviderInfo<jakarta.ws.rs.core.Application> application) -
getDefaultJaxbWriter
public jakarta.ws.rs.ext.MessageBodyWriter<?> getDefaultJaxbWriter() -
setProviderComparator
-
constrainedTo
Checks the presence ofConstrainedTo
annotation and, if present, applicability to the runtime type.- Parameters:
providerCls
- provider classtype
- runtime type- Returns:
- "true" if provider could be used with runtime type, "false" otherwise
-