public static Dispatcher createDispatcher() { Dispatcher dispatcher = new SynchronousDispatcher(new ResteasyProviderFactoryImpl()); ResteasyProviderFactory.setInstance(dispatcher.getProviderFactory()); RegisterBuiltin.register(dispatcher.getProviderFactory()); return dispatcher; } }
if (isA(provider, ParamConverterProvider.class, contracts)) ParamConverterProvider paramConverterProvider = (ParamConverterProvider) injectedInstance(provider); injectProperties(provider); if (sortedParamConverterProviders == null) .synchronizedSortedSet(new TreeSet<>(parent.getSortedParamConverterProviders())); int priority = getPriority(priorityOverride, contracts, ParamConverterProvider.class, provider); sortedParamConverterProviders .add(new ExtSortedKey<>(null, paramConverterProvider, provider, priority, isBuiltin)); newContracts.put(ParamConverterProvider.class, priority); if (isA(provider, MessageBodyReader.class, contracts)) int priority = getPriority(priorityOverride, contracts, MessageBodyReader.class, provider); addMessageBodyReader(createProviderInstance((Class<? extends MessageBodyReader>) provider), provider, priority, isBuiltin); newContracts.put(MessageBodyReader.class, priority); if (isA(provider, MessageBodyWriter.class, contracts)) int priority = getPriority(priorityOverride, contracts, MessageBodyWriter.class, provider); addMessageBodyWriter(createProviderInstance((Class<? extends MessageBodyWriter>) provider), provider, priority, isBuiltin); newContracts.put(MessageBodyWriter.class, priority); if (isA(provider, ExceptionMapper.class, contracts))
serverDynamicFeatures = parent == null ? new CopyOnWriteArraySet<>() : new CopyOnWriteArraySet<>(parent.getServerDynamicFeatures()); clientDynamicFeatures = parent == null ? new CopyOnWriteArraySet<>() : new CopyOnWriteArraySet<>(parent.getClientDynamicFeatures()); enabledFeatures = parent == null ? new CopyOnWriteArraySet<>() : new CopyOnWriteArraySet<>(parent.getEnabledFeatures()); properties = parent == null ? new ConcurrentHashMap<>() : new ConcurrentHashMap<>(parent.getProperties()); providerClasses = parent == null ? new CopyOnWriteArraySet<>() : new CopyOnWriteArraySet<>(parent.getProviderClasses()); providerInstances = parent == null ? new CopyOnWriteArraySet<>() : new CopyOnWriteArraySet<>(parent.getProviderInstances()); classContracts = parent == null ? new ConcurrentHashMap<>() : new ConcurrentHashMap<>(parent.getClassContracts()); serverMessageBodyReaders = parent == null ? new MediaTypeMap<>() : parent.getServerMessageBodyReaders().clone(); serverMessageBodyWriters = parent == null ? new MediaTypeMap<>() : parent.getServerMessageBodyWriters().clone(); clientMessageBodyReaders = parent == null ? new MediaTypeMap<>() : parent.getClientMessageBodyReaders().clone(); clientMessageBodyWriters = parent == null ? new MediaTypeMap<>() : parent.getClientMessageBodyWriters().clone(); sortedExceptionMappers = parent == null ? new ConcurrentHashMap<>() : new ConcurrentHashMap<>(parent.getSortedExceptionMappers()); asyncResponseProviders = parent == null ? new ConcurrentHashMap<>() : new ConcurrentHashMap<>(parent.getAsyncResponseProviders()); asyncClientResponseProviders = parent == null ? new ConcurrentHashMap<>() : new ConcurrentHashMap<>(parent.getAsyncClientResponseProviders()); asyncStreamProviders = parent == null ? new ConcurrentHashMap<>() : new ConcurrentHashMap<>(parent.getAsyncStreamProviders()); contextResolvers = new ConcurrentHashMap<>(); if (parent != null) for (Map.Entry<Class<?>, MediaTypeMap<SortedKey<ContextResolver>>> entry : parent.getContextResolvers() .entrySet()) contextInjectors = parent == null ? new ConcurrentHashMap<>() : new ConcurrentHashMap<>(parent.getContextInjectors()); asyncContextInjectors = parent == null ? new ConcurrentHashMap<>() : new ConcurrentHashMap<>(parent.getAsyncContextInjectors()); sortedParamConverterProviders = Collections.synchronizedSortedSet(parent == null ? new TreeSet<>() : new TreeSet<>(parent.getSortedParamConverterProviders())); stringParameterUnmarshallers = parent == null ? new ConcurrentHashMap<>() : new ConcurrentHashMap<>(parent.getStringParameterUnmarshallers()); reactiveClasses = parent == null ? new ConcurrentHashMap<>() : new ConcurrentHashMap<>(parent.reactiveClasses); headerDelegates = parent == null ? new ConcurrentHashMap<>() : new ConcurrentHashMap<>(parent.getHeaderDelegates()); addHeaderDelegateIfAbsent(MediaType.class, new MediaTypeHeaderDelegate()); addHeaderDelegateIfAbsent(NewCookie.class, new NewCookieHeaderDelegate()); addHeaderDelegateIfAbsent(Cookie.class, new CookieHeaderDelegate());
private void addHeaderDelegateIfAbsent(Class clazz, HeaderDelegate header) { if (headerDelegates == null || !headerDelegates.containsKey(clazz)) { addHeaderDelegate(clazz, header); } }
private void addHeaderDelegateIfAbsent(Class clazz, HeaderDelegate header) { if (headerDelegates == null || !headerDelegates.containsKey(clazz)) { addHeaderDelegate(clazz, header); } }
if (isA(provider, ParamConverterProvider.class, contracts)) injectProperties(provider); if (sortedParamConverterProviders == null) .synchronizedSortedSet(new TreeSet<>(parent.getSortedParamConverterProviders())); int priority = getPriority(priorityOverride, contracts, ParamConverterProvider.class, provider.getClass()); sortedParamConverterProviders.add( new ExtSortedKey<>(null, (ParamConverterProvider) provider, provider.getClass(), priority, builtIn)); newContracts.put(ParamConverterProvider.class, priority); if (isA(provider, MessageBodyReader.class, contracts)) int priority = getPriority(priorityOverride, contracts, MessageBodyReader.class, provider.getClass()); addMessageBodyReader((MessageBodyReader) provider, provider.getClass(), priority, builtIn); newContracts.put(MessageBodyReader.class, priority); if (isA(provider, MessageBodyWriter.class, contracts)) int priority = getPriority(priorityOverride, contracts, MessageBodyWriter.class, provider.getClass()); addMessageBodyWriter((MessageBodyWriter) provider, provider.getClass(), priority, builtIn); newContracts.put(MessageBodyWriter.class, priority); if (isA(provider, ExceptionMapper.class, contracts)) addExceptionMapper((ExceptionMapper) provider, provider.getClass(), builtIn); int priority = getPriority(priorityOverride, contracts, ExceptionMapper.class, provider.getClass()); newContracts.put(ExceptionMapper.class, priority);
serverDynamicFeatures = parent == null ? new CopyOnWriteArraySet<>() : new CopyOnWriteArraySet<>(parent.getServerDynamicFeatures()); clientDynamicFeatures = parent == null ? new CopyOnWriteArraySet<>() : new CopyOnWriteArraySet<>(parent.getClientDynamicFeatures()); enabledFeatures = parent == null ? new CopyOnWriteArraySet<>() : new CopyOnWriteArraySet<>(parent.getEnabledFeatures()); properties = parent == null ? new ConcurrentHashMap<>() : new ConcurrentHashMap<>(parent.getProperties()); providerClasses = parent == null ? new CopyOnWriteArraySet<>() : new CopyOnWriteArraySet<>(parent.getProviderClasses()); providerInstances = parent == null ? new CopyOnWriteArraySet<>() : new CopyOnWriteArraySet<>(parent.getProviderInstances()); classContracts = parent == null ? new ConcurrentHashMap<>() : new ConcurrentHashMap<>(parent.getClassContracts()); serverMessageBodyReaders = parent == null ? new MediaTypeMap<>() : parent.getServerMessageBodyReaders().clone(); serverMessageBodyWriters = parent == null ? new MediaTypeMap<>() : parent.getServerMessageBodyWriters().clone(); clientMessageBodyReaders = parent == null ? new MediaTypeMap<>() : parent.getClientMessageBodyReaders().clone(); clientMessageBodyWriters = parent == null ? new MediaTypeMap<>() : parent.getClientMessageBodyWriters().clone(); sortedExceptionMappers = parent == null ? new ConcurrentHashMap<>() : new ConcurrentHashMap<>(parent.getSortedExceptionMappers()); asyncResponseProviders = parent == null ? new ConcurrentHashMap<>() : new ConcurrentHashMap<>(parent.getAsyncResponseProviders()); asyncClientResponseProviders = parent == null ? new ConcurrentHashMap<>() : new ConcurrentHashMap<>(parent.getAsyncClientResponseProviders()); asyncStreamProviders = parent == null ? new ConcurrentHashMap<>() : new ConcurrentHashMap<>(parent.getAsyncStreamProviders()); contextResolvers = new ConcurrentHashMap<>(); if (parent != null) for (Map.Entry<Class<?>, MediaTypeMap<SortedKey<ContextResolver>>> entry : parent.getContextResolvers() .entrySet()) contextInjectors = parent == null ? new ConcurrentHashMap<>() : new ConcurrentHashMap<>(parent.getContextInjectors()); asyncContextInjectors = parent == null ? new ConcurrentHashMap<>() : new ConcurrentHashMap<>(parent.getAsyncContextInjectors()); sortedParamConverterProviders = Collections.synchronizedSortedSet(parent == null ? new TreeSet<>() : new TreeSet<>(parent.getSortedParamConverterProviders())); stringParameterUnmarshallers = parent == null ? new ConcurrentHashMap<>() : new ConcurrentHashMap<>(parent.getStringParameterUnmarshallers()); reactiveClasses = parent == null ? new ConcurrentHashMap<>() : new ConcurrentHashMap<>(parent.reactiveClasses); headerDelegates = parent == null ? new ConcurrentHashMap<>() : new ConcurrentHashMap<>(parent.getHeaderDelegates()); addHeaderDelegateIfAbsent(MediaType.class, new MediaTypeHeaderDelegate()); addHeaderDelegateIfAbsent(NewCookie.class, new NewCookieHeaderDelegate()); addHeaderDelegateIfAbsent(Cookie.class, new CookieHeaderDelegate());
public static <T> T fromBytes(Class<T> type, byte[] bytes) throws IOException { ResteasyProviderFactory factory = new ResteasyProviderFactoryImpl(); factory.register(ResteasyJackson2Provider.class); factory.register(JWTContextResolver.class); return fromBytes(type, bytes, factory); }
if (isA(provider, ParamConverterProvider.class, contracts)) ParamConverterProvider paramConverterProvider = (ParamConverterProvider) injectedInstance(provider); injectProperties(provider); if (sortedParamConverterProviders == null) .synchronizedSortedSet(new TreeSet<>(parent.getSortedParamConverterProviders())); int priority = getPriority(priorityOverride, contracts, ParamConverterProvider.class, provider); sortedParamConverterProviders .add(new ExtSortedKey<>(null, paramConverterProvider, provider, priority, isBuiltin)); newContracts.put(ParamConverterProvider.class, priority); if (isA(provider, MessageBodyReader.class, contracts)) int priority = getPriority(priorityOverride, contracts, MessageBodyReader.class, provider); addMessageBodyReader(createProviderInstance((Class<? extends MessageBodyReader>) provider), provider, priority, isBuiltin); newContracts.put(MessageBodyReader.class, priority); if (isA(provider, MessageBodyWriter.class, contracts)) int priority = getPriority(priorityOverride, contracts, MessageBodyWriter.class, provider); addMessageBodyWriter(createProviderInstance((Class<? extends MessageBodyWriter>) provider), provider, priority, isBuiltin); newContracts.put(MessageBodyWriter.class, priority); if (isA(provider, ExceptionMapper.class, contracts))
public static byte[] toByteArray(Object token, boolean indent) throws Exception { ResteasyProviderFactory factory = new ResteasyProviderFactoryImpl(); factory.register(new JWTContextResolver(indent)); factory.register(ResteasyJackson2Provider.class); return toByteArray(token, factory); }
if (isA(provider, ParamConverterProvider.class, contracts)) injectProperties(provider); if (sortedParamConverterProviders == null) .synchronizedSortedSet(new TreeSet<>(parent.getSortedParamConverterProviders())); int priority = getPriority(priorityOverride, contracts, ParamConverterProvider.class, provider.getClass()); sortedParamConverterProviders.add( new ExtSortedKey<>(null, (ParamConverterProvider) provider, provider.getClass(), priority, builtIn)); newContracts.put(ParamConverterProvider.class, priority); if (isA(provider, MessageBodyReader.class, contracts)) int priority = getPriority(priorityOverride, contracts, MessageBodyReader.class, provider.getClass()); addMessageBodyReader((MessageBodyReader) provider, provider.getClass(), priority, builtIn); newContracts.put(MessageBodyReader.class, priority); if (isA(provider, MessageBodyWriter.class, contracts)) int priority = getPriority(priorityOverride, contracts, MessageBodyWriter.class, provider.getClass()); addMessageBodyWriter((MessageBodyWriter) provider, provider.getClass(), priority, builtIn); newContracts.put(MessageBodyWriter.class, priority); if (isA(provider, ExceptionMapper.class, contracts)) addExceptionMapper((ExceptionMapper) provider, provider.getClass(), builtIn); int priority = getPriority(priorityOverride, contracts, ExceptionMapper.class, provider.getClass()); newContracts.put(ExceptionMapper.class, priority);
@Override public ResteasyClientBuilderImpl withConfig(Configuration config) { providerFactory = new LocalResteasyProviderFactory(new ResteasyProviderFactoryImpl()); providerFactory.setProperties(config.getProperties()); for (Class clazz : config.getClasses()) { Map<Class<?>, Integer> contracts = config.getContracts(clazz); try { register(clazz, contracts); } catch (RuntimeException e) { throw new RuntimeException(Messages.MESSAGES.failedOnRegisteringClass(clazz.getName()), e); } } for (Object obj : config.getInstances()) { Map<Class<?>, Integer> contracts = config.getContracts(obj.getClass()); register(obj, contracts); } return this; }
public void registryUpdated(JaxrsInterceptorRegistry registry) { this.resourceMethodProviderFactory = new ResteasyProviderFactoryImpl(parentProviderFactory); for (DynamicFeature feature : parentProviderFactory.getServerDynamicFeatures()) { feature.configure(resourceInfo, new FeatureContextDelegate(resourceMethodProviderFactory)); } if (registry.getIntf().equals(WriterInterceptor.class)) { writerInterceptors = resourceMethodProviderFactory.getServerWriterInterceptorRegistry().postMatch(method.getResourceClass().getClazz(), method.getAnnotatedMethod()); } else if (registry.getIntf().equals(ContainerRequestFilter.class)) { requestFilters = resourceMethodProviderFactory.getContainerRequestFilterRegistry().postMatch(method.getResourceClass().getClazz(), method.getAnnotatedMethod()); } else if (registry.getIntf().equals(ContainerResponseFilter.class)) { responseFilters = resourceMethodProviderFactory.getContainerResponseFilterRegistry().postMatch(method.getResourceClass().getClazz(), method.getAnnotatedMethod()); } }
this.resourceMethodProviderFactory = new ResteasyProviderFactoryImpl(providerFactory); for (DynamicFeature feature : providerFactory.getServerDynamicFeatures())
public static Dispatcher createDispatcher() { Dispatcher dispatcher = new SynchronousDispatcher(new ResteasyProviderFactoryImpl()); ResteasyProviderFactory.setInstance(dispatcher.getProviderFactory()); RegisterBuiltin.register(dispatcher.getProviderFactory()); return dispatcher; } }
public void registryUpdated(JaxrsInterceptorRegistry registry) { this.resourceMethodProviderFactory = new ResteasyProviderFactoryImpl(parentProviderFactory); for (DynamicFeature feature : parentProviderFactory.getServerDynamicFeatures()) { feature.configure(resourceInfo, new FeatureContextDelegate(resourceMethodProviderFactory)); } if (registry.getIntf().equals(WriterInterceptor.class)) { writerInterceptors = resourceMethodProviderFactory.getServerWriterInterceptorRegistry().postMatch(method.getResourceClass().getClazz(), method.getAnnotatedMethod()); } else if (registry.getIntf().equals(ContainerRequestFilter.class)) { requestFilters = resourceMethodProviderFactory.getContainerRequestFilterRegistry().postMatch(method.getResourceClass().getClazz(), method.getAnnotatedMethod()); } else if (registry.getIntf().equals(ContainerResponseFilter.class)) { responseFilters = resourceMethodProviderFactory.getContainerResponseFilterRegistry().postMatch(method.getResourceClass().getClazz(), method.getAnnotatedMethod()); } }
this.resourceMethodProviderFactory = new ResteasyProviderFactoryImpl(providerFactory); for (DynamicFeature feature : providerFactory.getServerDynamicFeatures())