Class QuarkusServerEndpointIndexer
java.lang.Object
org.jboss.resteasy.reactive.common.processor.EndpointIndexer<org.jboss.resteasy.reactive.server.processor.ServerEndpointIndexer,org.jboss.resteasy.reactive.server.processor.ServerIndexedParameter,org.jboss.resteasy.reactive.server.model.ServerResourceMethod>
org.jboss.resteasy.reactive.server.processor.ServerEndpointIndexer
io.quarkus.resteasy.reactive.server.deployment.QuarkusServerEndpointIndexer
public class QuarkusServerEndpointIndexer
extends org.jboss.resteasy.reactive.server.processor.ServerEndpointIndexer
-
Nested Class Summary
Nested ClassesNested classes/interfaces inherited from class org.jboss.resteasy.reactive.server.processor.ServerEndpointIndexer
org.jboss.resteasy.reactive.server.processor.ServerEndpointIndexer.AbstractBuilder<B extends org.jboss.resteasy.reactive.common.processor.EndpointIndexer.Builder<org.jboss.resteasy.reactive.server.processor.ServerEndpointIndexer,B, org.jboss.resteasy.reactive.server.model.ServerResourceMethod>>, org.jboss.resteasy.reactive.server.processor.ServerEndpointIndexer.ConverterSupplierIndexerExtension, org.jboss.resteasy.reactive.server.processor.ServerEndpointIndexer.FieldInjectionIndexerExtension Nested classes/interfaces inherited from class org.jboss.resteasy.reactive.common.processor.EndpointIndexer
org.jboss.resteasy.reactive.common.processor.EndpointIndexer.BasicResourceClassInfo, org.jboss.resteasy.reactive.common.processor.EndpointIndexer.DeclaredTypes, org.jboss.resteasy.reactive.common.processor.EndpointIndexer.MultipartParameterIndexerExtension, org.jboss.resteasy.reactive.common.processor.EndpointIndexer.MultipartReturnTypeIndexerExtension, org.jboss.resteasy.reactive.common.processor.EndpointIndexer.ResourceMethodCallbackEntry -
Field Summary
Fields inherited from class org.jboss.resteasy.reactive.server.processor.ServerEndpointIndexer
converterSupplierIndexerExtension, endpointInvokerFactory, fieldInjectionHandler, methodScanners, removesTrailingSlashFields inherited from class org.jboss.resteasy.reactive.common.processor.EndpointIndexer
additionalReaders, alreadyHandledRequestScopedResources, applicationIndex, applicationScanningResult, CDI_WRAPPER_SUFFIX, config, EMPTY_STRING_ARRAY, existingConverters, hasRuntimeConverters, index, injectableBeans, log, METHOD_CONTEXT_ANNOTATION_STORE, METHOD_CONTEXT_CUSTOM_RETURN_TYPE_KEY, METHOD_PRODUCES, primitiveTypes, SUPPORT_TEMPORAL_PARAMS -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionbooleanadditionalRegisterClassForReflectionCheck(org.jboss.resteasy.reactive.common.processor.EndpointIndexer.ResourceMethodCallbackEntry entry) protected String[]applyAdditionalDefaults(org.jboss.jandex.Type nonAsyncReturnType) protected voidhandleAdditionalMethodProcessing(org.jboss.resteasy.reactive.server.model.ServerResourceMethod method, org.jboss.jandex.ClassInfo currentClassInfo, org.jboss.jandex.MethodInfo info, org.jboss.resteasy.reactive.common.processor.transformation.AnnotationStore annotationStore) protected booleanhandleCustomParameter(Map<org.jboss.jandex.DotName, org.jboss.jandex.AnnotationInstance> anns, org.jboss.resteasy.reactive.server.processor.ServerIndexedParameter builder, org.jboss.jandex.Type paramType, boolean field, Map<String, Object> methodContext) protected voidlogMissingJsonWarning(org.jboss.jandex.MethodInfo info) protected voidsetupApplyDefaults(org.jboss.jandex.Type nonAsyncReturnType, org.jboss.jandex.DotName httpMethod) protected voidverifyClassThatRequiresFieldInjection(org.jboss.jandex.ClassInfo classInfo) At this point we know exactly which resources will require field injection and therefore are required to beRequestScoped.protected voidwarnAboutMissUsedBodyParameter(org.jboss.jandex.DotName httpMethod, org.jboss.jandex.MethodInfo methodInfo) Methods inherited from class org.jboss.resteasy.reactive.server.processor.ServerEndpointIndexer
addReaderForType, addWriterForType, createIndexedParam, createMethodParameter, createResourceMethod, doesMethodHaveBlockingSignature, findEndpointImplementation, handleArrayParam, handleBeanParam, handleListParam, handleOptionalParam, handleOtherParam, handlePathSegmentParam, handleSetParam, handleSortedSetParam, handleTemporalParam, handleTrailingSlash, scanInjectableBeanMethods inherited from class org.jboss.resteasy.reactive.common.processor.EndpointIndexer
createEndpoints, createEndpoints, extractParameterInfo, extractProducesConsumesValues, getAnnotationStore, getDeclaredTypes, getPartMime, getSeparator, getSerializerScanningResult, handleClientSubResource, hasJson, hasJson, hasNoTypesDefined, isDefaultJson, isJson, nameBindingNames, nameBindingNames, skipParameter, toClassName, warnAboutMissingJsonProviderIfNeeded
-
Constructor Details
-
QuarkusServerEndpointIndexer
QuarkusServerEndpointIndexer(QuarkusServerEndpointIndexer.Builder builder)
-
-
Method Details
-
setupApplyDefaults
protected void setupApplyDefaults(org.jboss.jandex.Type nonAsyncReturnType, org.jboss.jandex.DotName httpMethod) - Overrides:
setupApplyDefaultsin classorg.jboss.resteasy.reactive.common.processor.EndpointIndexer<org.jboss.resteasy.reactive.server.processor.ServerEndpointIndexer,org.jboss.resteasy.reactive.server.processor.ServerIndexedParameter, org.jboss.resteasy.reactive.server.model.ServerResourceMethod>
-
applyAdditionalDefaults
- Overrides:
applyAdditionalDefaultsin classorg.jboss.resteasy.reactive.common.processor.EndpointIndexer<org.jboss.resteasy.reactive.server.processor.ServerEndpointIndexer,org.jboss.resteasy.reactive.server.processor.ServerIndexedParameter, org.jboss.resteasy.reactive.server.model.ServerResourceMethod>
-
handleCustomParameter
protected boolean handleCustomParameter(Map<org.jboss.jandex.DotName, org.jboss.jandex.AnnotationInstance> anns, org.jboss.resteasy.reactive.server.processor.ServerIndexedParameter builder, org.jboss.jandex.Type paramType, boolean field, Map<String, Object> methodContext) - Overrides:
handleCustomParameterin classorg.jboss.resteasy.reactive.server.processor.ServerEndpointIndexer
-
handleAdditionalMethodProcessing
protected void handleAdditionalMethodProcessing(org.jboss.resteasy.reactive.server.model.ServerResourceMethod method, org.jboss.jandex.ClassInfo currentClassInfo, org.jboss.jandex.MethodInfo info, org.jboss.resteasy.reactive.common.processor.transformation.AnnotationStore annotationStore) - Overrides:
handleAdditionalMethodProcessingin classorg.jboss.resteasy.reactive.server.processor.ServerEndpointIndexer
-
additionalRegisterClassForReflectionCheck
public boolean additionalRegisterClassForReflectionCheck(org.jboss.resteasy.reactive.common.processor.EndpointIndexer.ResourceMethodCallbackEntry entry) - Overrides:
additionalRegisterClassForReflectionCheckin classorg.jboss.resteasy.reactive.common.processor.EndpointIndexer<org.jboss.resteasy.reactive.server.processor.ServerEndpointIndexer,org.jboss.resteasy.reactive.server.processor.ServerIndexedParameter, org.jboss.resteasy.reactive.server.model.ServerResourceMethod>
-
logMissingJsonWarning
protected void logMissingJsonWarning(org.jboss.jandex.MethodInfo info) - Overrides:
logMissingJsonWarningin classorg.jboss.resteasy.reactive.common.processor.EndpointIndexer<org.jboss.resteasy.reactive.server.processor.ServerEndpointIndexer,org.jboss.resteasy.reactive.server.processor.ServerIndexedParameter, org.jboss.resteasy.reactive.server.model.ServerResourceMethod>
-
warnAboutMissUsedBodyParameter
protected void warnAboutMissUsedBodyParameter(org.jboss.jandex.DotName httpMethod, org.jboss.jandex.MethodInfo methodInfo) - Overrides:
warnAboutMissUsedBodyParameterin classorg.jboss.resteasy.reactive.common.processor.EndpointIndexer<org.jboss.resteasy.reactive.server.processor.ServerEndpointIndexer,org.jboss.resteasy.reactive.server.processor.ServerIndexedParameter, org.jboss.resteasy.reactive.server.model.ServerResourceMethod>
-
verifyClassThatRequiresFieldInjection
protected void verifyClassThatRequiresFieldInjection(org.jboss.jandex.ClassInfo classInfo) At this point we know exactly which resources will require field injection and therefore are required to beRequestScoped. We can't change anything CDI related at this point (because it would create build cycles), so all we can do is fail the build if the resource has not already been handled automatically (by the best effort approach performed elsewhere) or it's not manually set to beRequestScoped.- Overrides:
verifyClassThatRequiresFieldInjectionin classorg.jboss.resteasy.reactive.common.processor.EndpointIndexer<org.jboss.resteasy.reactive.server.processor.ServerEndpointIndexer,org.jboss.resteasy.reactive.server.processor.ServerIndexedParameter, org.jboss.resteasy.reactive.server.model.ServerResourceMethod>
-