Class ServerEndpointIndexer

java.lang.Object
org.jboss.resteasy.reactive.common.processor.EndpointIndexer<ServerEndpointIndexer,ServerIndexedParameter,org.jboss.resteasy.reactive.server.model.ServerResourceMethod>
org.jboss.resteasy.reactive.server.processor.ServerEndpointIndexer

public class ServerEndpointIndexer extends org.jboss.resteasy.reactive.common.processor.EndpointIndexer<ServerEndpointIndexer,ServerIndexedParameter,org.jboss.resteasy.reactive.server.model.ServerResourceMethod>
  • Field Details

  • Constructor Details

  • Method Details

    • addWriterForType

      protected void addWriterForType(org.jboss.resteasy.reactive.common.processor.AdditionalWriters additionalWriters, org.jboss.jandex.Type paramType)
      Specified by:
      addWriterForType in class org.jboss.resteasy.reactive.common.processor.EndpointIndexer<ServerEndpointIndexer,ServerIndexedParameter,org.jboss.resteasy.reactive.server.model.ServerResourceMethod>
    • addReaderForType

      protected void addReaderForType(org.jboss.resteasy.reactive.common.processor.AdditionalReaders additionalReaders, org.jboss.jandex.Type paramType)
      Specified by:
      addReaderForType in class org.jboss.resteasy.reactive.common.processor.EndpointIndexer<ServerEndpointIndexer,ServerIndexedParameter,org.jboss.resteasy.reactive.server.model.ServerResourceMethod>
    • createIndexedParam

      protected ServerIndexedParameter createIndexedParam()
      Specified by:
      createIndexedParam in class org.jboss.resteasy.reactive.common.processor.EndpointIndexer<ServerEndpointIndexer,ServerIndexedParameter,org.jboss.resteasy.reactive.server.model.ServerResourceMethod>
    • handleCustomParameter

      protected boolean handleCustomParameter(Map<org.jboss.jandex.DotName,org.jboss.jandex.AnnotationInstance> anns, ServerIndexedParameter builder, org.jboss.jandex.Type paramType, boolean field, Map<String,Object> methodContext)
      Overrides:
      handleCustomParameter in class org.jboss.resteasy.reactive.common.processor.EndpointIndexer<ServerEndpointIndexer,ServerIndexedParameter,org.jboss.resteasy.reactive.server.model.ServerResourceMethod>
    • createResourceMethod

      protected org.jboss.resteasy.reactive.server.model.ServerResourceMethod createResourceMethod(org.jboss.jandex.MethodInfo methodInfo, org.jboss.jandex.ClassInfo actualEndpointClass, Map<String,Object> methodContext)
      Specified by:
      createResourceMethod in class org.jboss.resteasy.reactive.common.processor.EndpointIndexer<ServerEndpointIndexer,ServerIndexedParameter,org.jboss.resteasy.reactive.server.model.ServerResourceMethod>
    • findEndpointImplementation

      public static org.jboss.jandex.MethodInfo findEndpointImplementation(org.jboss.jandex.MethodInfo methodInfo, org.jboss.jandex.ClassInfo actualEndpointClass, org.jboss.jandex.IndexView index)
      Aim here is to find a method that actually returns endpoint response. We can receive method with similar signature several times here, only differing in the modifiers (abstract etc.). However, actualEndpointClass will change. For example once from the interface with JAX-RS endpoint defining annotations and also from implementors.
      Returns:
      method that returns endpoint response
    • handleBeanParam

      protected boolean handleBeanParam(org.jboss.jandex.ClassInfo actualEndpointInfo, org.jboss.jandex.Type paramType, org.jboss.resteasy.reactive.common.model.MethodParameter[] methodParameters, int i, Set<String> fileFormNames)
      Specified by:
      handleBeanParam in class org.jboss.resteasy.reactive.common.processor.EndpointIndexer<ServerEndpointIndexer,ServerIndexedParameter,org.jboss.resteasy.reactive.server.model.ServerResourceMethod>
    • doesMethodHaveBlockingSignature

      protected boolean doesMethodHaveBlockingSignature(org.jboss.jandex.MethodInfo info)
      Overrides:
      doesMethodHaveBlockingSignature in class org.jboss.resteasy.reactive.common.processor.EndpointIndexer<ServerEndpointIndexer,ServerIndexedParameter,org.jboss.resteasy.reactive.server.model.ServerResourceMethod>
    • 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:
      handleAdditionalMethodProcessing in class org.jboss.resteasy.reactive.common.processor.EndpointIndexer<ServerEndpointIndexer,ServerIndexedParameter,org.jboss.resteasy.reactive.server.model.ServerResourceMethod>
    • scanInjectableBean

      protected org.jboss.resteasy.reactive.common.model.InjectableBean scanInjectableBean(org.jboss.jandex.ClassInfo currentClassInfo, org.jboss.jandex.ClassInfo actualEndpointInfo, Map<String,String> existingConverters, org.jboss.resteasy.reactive.common.processor.AdditionalReaders additionalReaders, Map<String,org.jboss.resteasy.reactive.common.model.InjectableBean> injectableBeans, boolean hasRuntimeConverters)
      Specified by:
      scanInjectableBean in class org.jboss.resteasy.reactive.common.processor.EndpointIndexer<ServerEndpointIndexer,ServerIndexedParameter,org.jboss.resteasy.reactive.server.model.ServerResourceMethod>
    • createMethodParameter

      protected org.jboss.resteasy.reactive.common.model.MethodParameter createMethodParameter(org.jboss.jandex.ClassInfo currentClassInfo, org.jboss.jandex.ClassInfo actualEndpointInfo, boolean encoded, org.jboss.jandex.Type paramType, ServerIndexedParameter parameterResult, String name, String defaultValue, org.jboss.resteasy.reactive.common.model.ParameterType type, String elementType, boolean single, String signature, Set<String> fileFormNames)
      Specified by:
      createMethodParameter in class org.jboss.resteasy.reactive.common.processor.EndpointIndexer<ServerEndpointIndexer,ServerIndexedParameter,org.jboss.resteasy.reactive.server.model.ServerResourceMethod>
    • handleOtherParam

      protected void handleOtherParam(Map<String,String> existingConverters, String errorLocation, boolean hasRuntimeConverters, ServerIndexedParameter builder, String elementType, org.jboss.jandex.MethodInfo currentMethodInfo)
      Overrides:
      handleOtherParam in class org.jboss.resteasy.reactive.common.processor.EndpointIndexer<ServerEndpointIndexer,ServerIndexedParameter,org.jboss.resteasy.reactive.server.model.ServerResourceMethod>
    • handleSortedSetParam

      protected void handleSortedSetParam(Map<String,String> existingConverters, String errorLocation, boolean hasRuntimeConverters, ServerIndexedParameter builder, String elementType, org.jboss.jandex.MethodInfo currentMethodInfo)
      Overrides:
      handleSortedSetParam in class org.jboss.resteasy.reactive.common.processor.EndpointIndexer<ServerEndpointIndexer,ServerIndexedParameter,org.jboss.resteasy.reactive.server.model.ServerResourceMethod>
    • handleOptionalParam

      protected void handleOptionalParam(Map<String,String> existingConverters, Map<org.jboss.jandex.DotName,org.jboss.jandex.AnnotationInstance> parameterAnnotations, String errorLocation, boolean hasRuntimeConverters, ServerIndexedParameter builder, String elementType, String genericElementType, org.jboss.jandex.MethodInfo currentMethodInfo)
      Overrides:
      handleOptionalParam in class org.jboss.resteasy.reactive.common.processor.EndpointIndexer<ServerEndpointIndexer,ServerIndexedParameter,org.jboss.resteasy.reactive.server.model.ServerResourceMethod>
    • handleSetParam

      protected void handleSetParam(Map<String,String> existingConverters, String errorLocation, boolean hasRuntimeConverters, ServerIndexedParameter builder, String elementType, org.jboss.jandex.MethodInfo currentMethodInfo)
      Overrides:
      handleSetParam in class org.jboss.resteasy.reactive.common.processor.EndpointIndexer<ServerEndpointIndexer,ServerIndexedParameter,org.jboss.resteasy.reactive.server.model.ServerResourceMethod>
    • handleListParam

      protected void handleListParam(Map<String,String> existingConverters, String errorLocation, boolean hasRuntimeConverters, ServerIndexedParameter builder, String elementType, org.jboss.jandex.MethodInfo currentMethodInfo)
      Overrides:
      handleListParam in class org.jboss.resteasy.reactive.common.processor.EndpointIndexer<ServerEndpointIndexer,ServerIndexedParameter,org.jboss.resteasy.reactive.server.model.ServerResourceMethod>
    • handleArrayParam

      protected void handleArrayParam(Map<String,String> existingConverters, String errorLocation, boolean hasRuntimeConverters, ServerIndexedParameter builder, String elementType, org.jboss.jandex.MethodInfo currentMethodInfo)
      Overrides:
      handleArrayParam in class org.jboss.resteasy.reactive.common.processor.EndpointIndexer<ServerEndpointIndexer,ServerIndexedParameter,org.jboss.resteasy.reactive.server.model.ServerResourceMethod>
    • handlePathSegmentParam

      protected void handlePathSegmentParam(ServerIndexedParameter builder)
      Overrides:
      handlePathSegmentParam in class org.jboss.resteasy.reactive.common.processor.EndpointIndexer<ServerEndpointIndexer,ServerIndexedParameter,org.jboss.resteasy.reactive.server.model.ServerResourceMethod>
    • handleTrailingSlash

      protected String handleTrailingSlash(String path)
      For the server side, by default, we are removing the trailing slash unless is not configured otherwise.
      Overrides:
      handleTrailingSlash in class org.jboss.resteasy.reactive.common.processor.EndpointIndexer<ServerEndpointIndexer,ServerIndexedParameter,org.jboss.resteasy.reactive.server.model.ServerResourceMethod>
    • handleTemporalParam

      protected void handleTemporalParam(ServerIndexedParameter builder, org.jboss.jandex.DotName paramType, Map<org.jboss.jandex.DotName,org.jboss.jandex.AnnotationInstance> parameterAnnotations, org.jboss.jandex.MethodInfo currentMethodInfo)
      Overrides:
      handleTemporalParam in class org.jboss.resteasy.reactive.common.processor.EndpointIndexer<ServerEndpointIndexer,ServerIndexedParameter,org.jboss.resteasy.reactive.server.model.ServerResourceMethod>