Class WebSocketProcessor

java.lang.Object
io.quarkus.websockets.next.deployment.WebSocketProcessor

public class WebSocketProcessor extends Object
  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Class
    Description
    (package private) static final record 
     
    (package private) static final record 
     
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    (package private) static final String
     
    (package private) static final org.jboss.jandex.DotName
     
    (package private) static final String
     
    (package private) static final String
     
    static final Pattern
     
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    (package private) void
    additionalBeans(io.quarkus.deployment.builditem.CombinedIndexBuildItem combinedIndex, io.quarkus.deployment.annotations.BuildProducer<io.quarkus.arc.deployment.AdditionalBeanBuildItem> additionalBeans)
     
    (package private) void
    addMetricsSupport(io.quarkus.deployment.annotations.BuildProducer<io.quarkus.arc.deployment.AdditionalBeanBuildItem> additionalBeanProducer, Optional<io.quarkus.deployment.metrics.MetricsCapabilityBuildItem> metricsCapability)
     
    (package private) io.quarkus.arc.deployment.AutoAddScopeBuildItem
     
    (package private) void
    addTracesSupport(io.quarkus.deployment.Capabilities capabilities, io.quarkus.deployment.annotations.BuildProducer<io.quarkus.arc.deployment.AdditionalBeanBuildItem> additionalBeanProducer)
     
    (package private) void
    beanDefiningAnnotations(io.quarkus.deployment.annotations.BuildProducer<io.quarkus.arc.deployment.BeanDefiningAnnotationBuildItem> beanDefiningAnnotations)
     
    (package private) void
    builtinCallbackArguments(io.quarkus.deployment.annotations.BuildProducer<CallbackArgumentBuildItem> providers)
     
    (package private) void
    clientSyntheticBeans(io.quarkus.websockets.next.runtime.WebSocketClientRecorder recorder, List<GeneratedEndpointBuildItem> generatedEndpoints, io.quarkus.deployment.annotations.BuildProducer<io.quarkus.arc.deployment.SyntheticBeanBuildItem> syntheticBeans)
     
    (package private) CallbackArgumentsBuildItem
     
    (package private) io.quarkus.websockets.next.deployment.WebSocketProcessor.AuthorizationPolicyToEndpointsBuildItem
    collectEndpointAuthorizationPolicies(io.quarkus.arc.deployment.BeanArchiveIndexBuildItem indexItem, io.quarkus.deployment.Capabilities capabilities, List<WebSocketEndpointBuildItem> endpoints, Optional<io.quarkus.security.spi.SecurityTransformerBuildItem> securityTransformerBuildItem)
     
    (package private) void
    collectEndpoints(io.quarkus.arc.deployment.BeanArchiveIndexBuildItem beanArchiveIndex, io.quarkus.arc.deployment.BeanDiscoveryFinishedBuildItem beanDiscoveryFinished, CallbackArgumentsBuildItem callbackArguments, io.quarkus.arc.deployment.TransformedAnnotationsBuildItem transformedAnnotations, io.quarkus.deployment.annotations.BuildProducer<io.quarkus.deployment.builditem.nativeimage.ReflectiveHierarchyBuildItem> reflectiveHierarchy, io.quarkus.deployment.annotations.BuildProducer<WebSocketEndpointBuildItem> endpoints)
     
    (package private) io.quarkus.websockets.next.deployment.WebSocketProcessor.EndpointSecurityChecksBuildItem
    collectEndpointSecurityChecks(io.quarkus.arc.deployment.BeanArchiveIndexBuildItem indexItem, List<WebSocketEndpointBuildItem> endpoints, Optional<io.quarkus.security.spi.ClassSecurityCheckStorageBuildItem> storageItem, io.quarkus.deployment.Capabilities capabilities, Optional<io.quarkus.security.spi.SecurityTransformerBuildItem> securityTransformerBuildItem)
     
    (package private) void
    collectGlobalErrorHandlers(io.quarkus.arc.deployment.BeanArchiveIndexBuildItem beanArchiveIndex, io.quarkus.arc.deployment.BeanDiscoveryFinishedBuildItem beanDiscoveryFinished, io.quarkus.deployment.annotations.BuildProducer<GlobalErrorHandlersBuildItem> globalErrorHandlers, io.quarkus.deployment.annotations.BuildProducer<io.quarkus.arc.deployment.UnremovableBeanBuildItem> unremovableBean, CallbackArgumentsBuildItem callbackArguments, io.quarkus.arc.deployment.TransformedAnnotationsBuildItem transformedAnnotations)
     
    (package private) void
    createHeaderPropagationHandler(io.quarkus.deployment.annotations.BuildProducer<io.quarkus.vertx.http.deployment.FilterBuildItem> filterProducer, WebSocketsServerBuildConfig buildConfig)
     
    (package private) void
    createHttpUpgradeSecurityInterceptor(io.quarkus.websockets.next.runtime.WebSocketServerRecorder recorder, io.quarkus.deployment.annotations.BuildProducer<io.quarkus.arc.deployment.SyntheticBeanBuildItem> producer, List<WebSocketEndpointBuildItem> endpoints, List<io.quarkus.vertx.http.deployment.EagerSecurityInterceptorClassesBuildItem> eagerSecurityInterceptorClassesBuildItems)
     
    (package private) void
    createSecurityChecksForHttpUpgradeCheck(io.quarkus.deployment.Capabilities capabilities, io.quarkus.deployment.annotations.BuildProducer<io.quarkus.security.spi.ClassSecurityAnnotationBuildItem> producer)
     
    (package private) void
    createSecurityHttpUpgradeCheck(io.quarkus.deployment.annotations.BuildProducer<io.quarkus.arc.deployment.SyntheticBeanBuildItem> producer, io.quarkus.websockets.next.deployment.WebSocketProcessor.EndpointSecurityChecksBuildItem endpointSecurityChecks, io.quarkus.websockets.next.runtime.WebSocketServerRecorder recorder, io.quarkus.websockets.next.deployment.WebSocketProcessor.AuthorizationPolicyToEndpointsBuildItem authorizationPolicyToEndpoints)
     
    (package private) void
    createSecurityIdentityAssociation(io.quarkus.deployment.Capabilities capabilities, io.quarkus.deployment.annotations.BuildProducer<io.quarkus.arc.deployment.AdditionalBeanBuildItem> additionalBeanProducer)
     
    (package private) void
    createTelemetryProvider(io.quarkus.deployment.annotations.BuildProducer<io.quarkus.arc.deployment.SyntheticBeanBuildItem> syntheticBeanProducer, io.quarkus.deployment.Capabilities capabilities, io.quarkus.websockets.next.runtime.telemetry.WebSocketTelemetryRecorder recorder, Optional<io.quarkus.deployment.metrics.MetricsCapabilityBuildItem> metricsCapability)
     
    (package private) static io.quarkus.gizmo2.Expr
    decodeMessage(io.quarkus.gizmo2.creator.BlockCreator bc, io.quarkus.gizmo2.Expr endpointThis, boolean binaryMessage, org.jboss.jandex.Type valueType, io.quarkus.gizmo2.Var value, Callback callback)
     
    (package private) void
    delegateToWebSocketSecurityIdentityAssociationFromTestSecurity(io.quarkus.deployment.Capabilities capabilities, io.quarkus.deployment.annotations.BuildProducer<io.quarkus.deployment.builditem.SystemPropertyBuildItem> systemPropertyProducer)
     
    (package private) io.quarkus.deployment.execannotations.ExecutionModelAnnotationsAllowedBuildItem
    executionModelAnnotations(io.quarkus.arc.deployment.TransformedAnnotationsBuildItem transformedAnnotations)
     
    (package private) io.quarkus.deployment.builditem.FeatureBuildItem
     
    (package private) static Callback
    findCallback(Callback.Target target, org.jboss.jandex.IndexView index, io.quarkus.arc.processor.BeanInfo bean, org.jboss.jandex.ClassInfo beanClass, org.jboss.jandex.DotName annotationName, CallbackArgumentsBuildItem callbackArguments, io.quarkus.arc.deployment.TransformedAnnotationsBuildItem transformedAnnotations, String endpointPath)
     
    (package private) static List<Callback>
    findErrorHandlers(Callback.Target expectedTarget, org.jboss.jandex.IndexView index, io.quarkus.arc.processor.BeanInfo bean, org.jboss.jandex.ClassInfo beanClass, CallbackArgumentsBuildItem callbackArguments, io.quarkus.arc.deployment.TransformedAnnotationsBuildItem transformedAnnotations, String endpointPath)
     
    (package private) static String
    generateEndpoint(WebSocketEndpointBuildItem endpoint, io.quarkus.arc.deployment.TransformedAnnotationsBuildItem transformedAnnotations, org.jboss.jandex.IndexView index, io.quarkus.gizmo2.Gizmo gizmo, GlobalErrorHandlersBuildItem globalErrorHandlers, String endpointSuffix, io.quarkus.arc.deployment.InvokerFactoryBuildItem invokerFactory, boolean metricsSupportEnabled)
    The generated endpoint class looks like:
    (package private) void
    generateEndpoints(io.quarkus.arc.deployment.BeanArchiveIndexBuildItem index, List<WebSocketEndpointBuildItem> endpoints, io.quarkus.arc.deployment.TransformedAnnotationsBuildItem transformedAnnotations, GlobalErrorHandlersBuildItem globalErrorHandlers, io.quarkus.arc.deployment.InvokerFactoryBuildItem invokerFactory, io.quarkus.deployment.annotations.BuildProducer<io.quarkus.deployment.builditem.GeneratedClassBuildItem> generatedClasses, io.quarkus.deployment.annotations.BuildProducer<io.quarkus.deployment.builditem.GeneratedResourceBuildItem> generatedResources, io.quarkus.deployment.annotations.BuildProducer<GeneratedEndpointBuildItem> generatedEndpoints, io.quarkus.deployment.annotations.BuildProducer<io.quarkus.deployment.builditem.nativeimage.ReflectiveClassBuildItem> reflectiveClasses, Optional<io.quarkus.deployment.metrics.MetricsCapabilityBuildItem> metricsCapability)
     
    static String
     
    (package private) static String
     
    (package private) static String
    getPathPrefix(org.jboss.jandex.IndexView index, org.jboss.jandex.DotName enclosingClassName)
     
    (package private) static boolean
    hasBlockingSignature(org.jboss.jandex.MethodInfo method)
     
    (package private) static boolean
    isByteArray(org.jboss.jandex.Type type)
     
    (package private) static boolean
    isUniVoid(org.jboss.jandex.Type type)
     
    (package private) io.quarkus.arc.deployment.UnremovableBeanBuildItem
     
    (package private) static String
    mergePath(String prefix, String path)
     
    (package private) static String
    methodToString(org.jboss.jandex.MethodInfo method)
     
    (package private) void
    preventRepeatedSecurityChecksForHttpUpgrade(io.quarkus.deployment.Capabilities capabilities, io.quarkus.deployment.builditem.CombinedIndexBuildItem indexBuildItem, io.quarkus.deployment.annotations.BuildProducer<io.quarkus.arc.deployment.AnnotationsTransformerBuildItem> producer, Optional<io.quarkus.security.spi.SecurityTransformerBuildItem> securityTransformerBuildItem)
     
    (package private) void
    produceCoroutineScope(io.quarkus.deployment.annotations.BuildProducer<io.quarkus.arc.deployment.AdditionalBeanBuildItem> additionalBean)
     
    (package private) void
    registerRoutes(io.quarkus.websockets.next.runtime.WebSocketServerRecorder recorder, List<WebSocketEndpointBuildItem> endpoints, List<GeneratedEndpointBuildItem> generatedEndpoints, WebSocketsServerBuildConfig config, io.quarkus.arc.deployment.ValidationPhaseBuildItem validationPhase, io.quarkus.deployment.annotations.BuildProducer<io.quarkus.vertx.http.deployment.RouteBuildItem> routes, Optional<io.quarkus.security.spi.PermissionsAllowedMetaAnnotationBuildItem> metaPermissionsAllowed, io.quarkus.websockets.next.deployment.WebSocketProcessor.EndpointSecurityChecksBuildItem endpointSecurityChecks, io.quarkus.deployment.Capabilities capabilities, io.quarkus.deployment.builditem.CombinedIndexBuildItem indexBuildItem, Optional<io.quarkus.security.spi.SecurityTransformerBuildItem> securityTransformerBuildItem)
     
    (package private) void
    serverSyntheticBeans(io.quarkus.websockets.next.runtime.WebSocketServerRecorder recorder, List<GeneratedEndpointBuildItem> generatedEndpoints, io.quarkus.deployment.annotations.BuildProducer<io.quarkus.arc.deployment.SyntheticBeanBuildItem> syntheticBeans)
     
    (package private) void
    supportSecurityIdentityUpdate(io.quarkus.arc.deployment.BeanDiscoveryFinishedBuildItem beanDiscoveryFinishedBuildItem, io.quarkus.websockets.next.runtime.WebSocketServerRecorder recorder, io.quarkus.deployment.Capabilities capabilities, io.quarkus.deployment.builditem.CombinedIndexBuildItem indexBuildItem, io.quarkus.deployment.annotations.BuildProducer<io.quarkus.arc.deployment.SyntheticBeanBuildItem> syntheticBeanProducer)
     
    (package private) void
    validateConnectorInjectionPoints(List<WebSocketEndpointBuildItem> endpoints, io.quarkus.arc.deployment.BeanDiscoveryFinishedBuildItem beanDiscoveryFinishedBuildItem, io.quarkus.arc.deployment.ValidationPhaseBuildItem validationPhase, io.quarkus.deployment.annotations.BuildProducer<io.quarkus.arc.deployment.ValidationPhaseBuildItem.ValidationErrorBuildItem> validationErrors)
     
    (package private) List<io.quarkus.arc.deployment.ValidationPhaseBuildItem.ValidationErrorBuildItem>
    validateHttpUpgradeCheckNotRequestScoped(io.quarkus.arc.deployment.ValidationPhaseBuildItem validationPhase)
     

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

    • SERVER_ENDPOINT_SUFFIX

      static final String SERVER_ENDPOINT_SUFFIX
      See Also:
    • CLIENT_ENDPOINT_SUFFIX

      static final String CLIENT_ENDPOINT_SUFFIX
      See Also:
    • NESTED_SEPARATOR

      static final String NESTED_SEPARATOR
      See Also:
    • HTTP_UPGRADE_CHECK_NAME

      static final org.jboss.jandex.DotName HTTP_UPGRADE_CHECK_NAME
    • TRANSLATED_PATH_PARAM_PATTERN

      public static final Pattern TRANSLATED_PATH_PARAM_PATTERN
  • Constructor Details

    • WebSocketProcessor

      public WebSocketProcessor()
  • Method Details

    • feature

      io.quarkus.deployment.builditem.FeatureBuildItem feature()
    • beanDefiningAnnotations

      void beanDefiningAnnotations(io.quarkus.deployment.annotations.BuildProducer<io.quarkus.arc.deployment.BeanDefiningAnnotationBuildItem> beanDefiningAnnotations)
    • addScopeToGlobalErrorHandlers

      io.quarkus.arc.deployment.AutoAddScopeBuildItem addScopeToGlobalErrorHandlers()
    • executionModelAnnotations

      io.quarkus.deployment.execannotations.ExecutionModelAnnotationsAllowedBuildItem executionModelAnnotations(io.quarkus.arc.deployment.TransformedAnnotationsBuildItem transformedAnnotations)
    • collectCallbackArguments

      CallbackArgumentsBuildItem collectCallbackArguments(List<CallbackArgumentBuildItem> callbackArguments)
    • additionalBeans

      void additionalBeans(io.quarkus.deployment.builditem.CombinedIndexBuildItem combinedIndex, io.quarkus.deployment.annotations.BuildProducer<io.quarkus.arc.deployment.AdditionalBeanBuildItem> additionalBeans)
    • produceCoroutineScope

      void produceCoroutineScope(io.quarkus.deployment.annotations.BuildProducer<io.quarkus.arc.deployment.AdditionalBeanBuildItem> additionalBean)
    • builtinCallbackArguments

      void builtinCallbackArguments(io.quarkus.deployment.annotations.BuildProducer<CallbackArgumentBuildItem> providers)
    • collectGlobalErrorHandlers

      void collectGlobalErrorHandlers(io.quarkus.arc.deployment.BeanArchiveIndexBuildItem beanArchiveIndex, io.quarkus.arc.deployment.BeanDiscoveryFinishedBuildItem beanDiscoveryFinished, io.quarkus.deployment.annotations.BuildProducer<GlobalErrorHandlersBuildItem> globalErrorHandlers, io.quarkus.deployment.annotations.BuildProducer<io.quarkus.arc.deployment.UnremovableBeanBuildItem> unremovableBean, CallbackArgumentsBuildItem callbackArguments, io.quarkus.arc.deployment.TransformedAnnotationsBuildItem transformedAnnotations)
    • collectEndpoints

      void collectEndpoints(io.quarkus.arc.deployment.BeanArchiveIndexBuildItem beanArchiveIndex, io.quarkus.arc.deployment.BeanDiscoveryFinishedBuildItem beanDiscoveryFinished, CallbackArgumentsBuildItem callbackArguments, io.quarkus.arc.deployment.TransformedAnnotationsBuildItem transformedAnnotations, io.quarkus.deployment.annotations.BuildProducer<io.quarkus.deployment.builditem.nativeimage.ReflectiveHierarchyBuildItem> reflectiveHierarchy, io.quarkus.deployment.annotations.BuildProducer<WebSocketEndpointBuildItem> endpoints)
    • validateConnectorInjectionPoints

      void validateConnectorInjectionPoints(List<WebSocketEndpointBuildItem> endpoints, io.quarkus.arc.deployment.BeanDiscoveryFinishedBuildItem beanDiscoveryFinishedBuildItem, io.quarkus.arc.deployment.ValidationPhaseBuildItem validationPhase, io.quarkus.deployment.annotations.BuildProducer<io.quarkus.arc.deployment.ValidationPhaseBuildItem.ValidationErrorBuildItem> validationErrors)
    • generateEndpoints

      void generateEndpoints(io.quarkus.arc.deployment.BeanArchiveIndexBuildItem index, List<WebSocketEndpointBuildItem> endpoints, io.quarkus.arc.deployment.TransformedAnnotationsBuildItem transformedAnnotations, GlobalErrorHandlersBuildItem globalErrorHandlers, io.quarkus.arc.deployment.InvokerFactoryBuildItem invokerFactory, io.quarkus.deployment.annotations.BuildProducer<io.quarkus.deployment.builditem.GeneratedClassBuildItem> generatedClasses, io.quarkus.deployment.annotations.BuildProducer<io.quarkus.deployment.builditem.GeneratedResourceBuildItem> generatedResources, io.quarkus.deployment.annotations.BuildProducer<GeneratedEndpointBuildItem> generatedEndpoints, io.quarkus.deployment.annotations.BuildProducer<io.quarkus.deployment.builditem.nativeimage.ReflectiveClassBuildItem> reflectiveClasses, Optional<io.quarkus.deployment.metrics.MetricsCapabilityBuildItem> metricsCapability)
    • registerRoutes

      void registerRoutes(io.quarkus.websockets.next.runtime.WebSocketServerRecorder recorder, List<WebSocketEndpointBuildItem> endpoints, List<GeneratedEndpointBuildItem> generatedEndpoints, WebSocketsServerBuildConfig config, io.quarkus.arc.deployment.ValidationPhaseBuildItem validationPhase, io.quarkus.deployment.annotations.BuildProducer<io.quarkus.vertx.http.deployment.RouteBuildItem> routes, Optional<io.quarkus.security.spi.PermissionsAllowedMetaAnnotationBuildItem> metaPermissionsAllowed, io.quarkus.websockets.next.deployment.WebSocketProcessor.EndpointSecurityChecksBuildItem endpointSecurityChecks, io.quarkus.deployment.Capabilities capabilities, io.quarkus.deployment.builditem.CombinedIndexBuildItem indexBuildItem, Optional<io.quarkus.security.spi.SecurityTransformerBuildItem> securityTransformerBuildItem)
    • makeHttpUpgradeChecksUnremovable

      io.quarkus.arc.deployment.UnremovableBeanBuildItem makeHttpUpgradeChecksUnremovable()
    • validateHttpUpgradeCheckNotRequestScoped

      List<io.quarkus.arc.deployment.ValidationPhaseBuildItem.ValidationErrorBuildItem> validateHttpUpgradeCheckNotRequestScoped(io.quarkus.arc.deployment.ValidationPhaseBuildItem validationPhase)
    • serverSyntheticBeans

      void serverSyntheticBeans(io.quarkus.websockets.next.runtime.WebSocketServerRecorder recorder, List<GeneratedEndpointBuildItem> generatedEndpoints, io.quarkus.deployment.annotations.BuildProducer<io.quarkus.arc.deployment.SyntheticBeanBuildItem> syntheticBeans)
    • clientSyntheticBeans

      void clientSyntheticBeans(io.quarkus.websockets.next.runtime.WebSocketClientRecorder recorder, List<GeneratedEndpointBuildItem> generatedEndpoints, io.quarkus.deployment.annotations.BuildProducer<io.quarkus.arc.deployment.SyntheticBeanBuildItem> syntheticBeans)
    • createSecurityChecksForHttpUpgradeCheck

      void createSecurityChecksForHttpUpgradeCheck(io.quarkus.deployment.Capabilities capabilities, io.quarkus.deployment.annotations.BuildProducer<io.quarkus.security.spi.ClassSecurityAnnotationBuildItem> producer)
    • createHttpUpgradeSecurityInterceptor

      void createHttpUpgradeSecurityInterceptor(io.quarkus.websockets.next.runtime.WebSocketServerRecorder recorder, io.quarkus.deployment.annotations.BuildProducer<io.quarkus.arc.deployment.SyntheticBeanBuildItem> producer, List<WebSocketEndpointBuildItem> endpoints, List<io.quarkus.vertx.http.deployment.EagerSecurityInterceptorClassesBuildItem> eagerSecurityInterceptorClassesBuildItems)
    • preventRepeatedSecurityChecksForHttpUpgrade

      void preventRepeatedSecurityChecksForHttpUpgrade(io.quarkus.deployment.Capabilities capabilities, io.quarkus.deployment.builditem.CombinedIndexBuildItem indexBuildItem, io.quarkus.deployment.annotations.BuildProducer<io.quarkus.arc.deployment.AnnotationsTransformerBuildItem> producer, Optional<io.quarkus.security.spi.SecurityTransformerBuildItem> securityTransformerBuildItem)
    • collectEndpointSecurityChecks

      io.quarkus.websockets.next.deployment.WebSocketProcessor.EndpointSecurityChecksBuildItem collectEndpointSecurityChecks(io.quarkus.arc.deployment.BeanArchiveIndexBuildItem indexItem, List<WebSocketEndpointBuildItem> endpoints, Optional<io.quarkus.security.spi.ClassSecurityCheckStorageBuildItem> storageItem, io.quarkus.deployment.Capabilities capabilities, Optional<io.quarkus.security.spi.SecurityTransformerBuildItem> securityTransformerBuildItem)
    • collectEndpointAuthorizationPolicies

      io.quarkus.websockets.next.deployment.WebSocketProcessor.AuthorizationPolicyToEndpointsBuildItem collectEndpointAuthorizationPolicies(io.quarkus.arc.deployment.BeanArchiveIndexBuildItem indexItem, io.quarkus.deployment.Capabilities capabilities, List<WebSocketEndpointBuildItem> endpoints, Optional<io.quarkus.security.spi.SecurityTransformerBuildItem> securityTransformerBuildItem)
    • createSecurityHttpUpgradeCheck

      void createSecurityHttpUpgradeCheck(io.quarkus.deployment.annotations.BuildProducer<io.quarkus.arc.deployment.SyntheticBeanBuildItem> producer, io.quarkus.websockets.next.deployment.WebSocketProcessor.EndpointSecurityChecksBuildItem endpointSecurityChecks, io.quarkus.websockets.next.runtime.WebSocketServerRecorder recorder, io.quarkus.websockets.next.deployment.WebSocketProcessor.AuthorizationPolicyToEndpointsBuildItem authorizationPolicyToEndpoints)
    • createHeaderPropagationHandler

      void createHeaderPropagationHandler(io.quarkus.deployment.annotations.BuildProducer<io.quarkus.vertx.http.deployment.FilterBuildItem> filterProducer, WebSocketsServerBuildConfig buildConfig)
    • addMetricsSupport

      void addMetricsSupport(io.quarkus.deployment.annotations.BuildProducer<io.quarkus.arc.deployment.AdditionalBeanBuildItem> additionalBeanProducer, Optional<io.quarkus.deployment.metrics.MetricsCapabilityBuildItem> metricsCapability)
    • addTracesSupport

      void addTracesSupport(io.quarkus.deployment.Capabilities capabilities, io.quarkus.deployment.annotations.BuildProducer<io.quarkus.arc.deployment.AdditionalBeanBuildItem> additionalBeanProducer)
    • createTelemetryProvider

      void createTelemetryProvider(io.quarkus.deployment.annotations.BuildProducer<io.quarkus.arc.deployment.SyntheticBeanBuildItem> syntheticBeanProducer, io.quarkus.deployment.Capabilities capabilities, io.quarkus.websockets.next.runtime.telemetry.WebSocketTelemetryRecorder recorder, Optional<io.quarkus.deployment.metrics.MetricsCapabilityBuildItem> metricsCapability)
    • supportSecurityIdentityUpdate

      void supportSecurityIdentityUpdate(io.quarkus.arc.deployment.BeanDiscoveryFinishedBuildItem beanDiscoveryFinishedBuildItem, io.quarkus.websockets.next.runtime.WebSocketServerRecorder recorder, io.quarkus.deployment.Capabilities capabilities, io.quarkus.deployment.builditem.CombinedIndexBuildItem indexBuildItem, io.quarkus.deployment.annotations.BuildProducer<io.quarkus.arc.deployment.SyntheticBeanBuildItem> syntheticBeanProducer)
    • createSecurityIdentityAssociation

      void createSecurityIdentityAssociation(io.quarkus.deployment.Capabilities capabilities, io.quarkus.deployment.annotations.BuildProducer<io.quarkus.arc.deployment.AdditionalBeanBuildItem> additionalBeanProducer)
    • delegateToWebSocketSecurityIdentityAssociationFromTestSecurity

      void delegateToWebSocketSecurityIdentityAssociationFromTestSecurity(io.quarkus.deployment.Capabilities capabilities, io.quarkus.deployment.annotations.BuildProducer<io.quarkus.deployment.builditem.SystemPropertyBuildItem> systemPropertyProducer)
    • mergePath

      static String mergePath(String prefix, String path)
    • getPath

      static String getPath(String path)
    • getOriginalPath

      public static String getOriginalPath(String path)
    • getPathPrefix

      static String getPathPrefix(org.jboss.jandex.IndexView index, org.jboss.jandex.DotName enclosingClassName)
    • generateEndpoint

      static String generateEndpoint(WebSocketEndpointBuildItem endpoint, io.quarkus.arc.deployment.TransformedAnnotationsBuildItem transformedAnnotations, org.jboss.jandex.IndexView index, io.quarkus.gizmo2.Gizmo gizmo, GlobalErrorHandlersBuildItem globalErrorHandlers, String endpointSuffix, io.quarkus.arc.deployment.InvokerFactoryBuildItem invokerFactory, boolean metricsSupportEnabled)
      The generated endpoint class looks like:
       public class Echo_WebSocketEndpoint extends WebSocketEndpointBase {
      
           public WebSocket.ExecutionMode executionMode() {
               return WebSocket.ExecutionMode.SERIAL;
           }
      
           public Echo_WebSocketEndpoint(WebSocketConnection connection, Codecs codecs,
                   WebSocketRuntimeConfig config, ContextSupport contextSupport, SecuritySupport securitySupport) {
               super(connection, codecs, config, contextSupport, securitySupport);
           }
      
           public Uni doOnTextMessage(String message) {
               Uni uni = ((Echo) super.beanInstance().echo((String) message);
               if (uni != null) {
                   // The lambda is implemented as a generated function: Echo_WebSocketEndpoint$$function$$1
                   return uni.chain(m -> sendText(m, false));
               } else {
                   return Uni.createFrom().voidItem();
               }
           }
      
           public Uni doOnTextMessage(Object message) {
               Object bean = super.beanInstance();
               try {
                   String ret = ((EchoEndpoint) bean).echo((String) message);
                   return ret != null ? super.sendText(ret, false) : Uni.createFrom().voidItem();
               } catch (Throwable t) {
                   return ((WebSocketEndpointBase) this).doOnError(t);
               }
           }
      
           public Uni doOnError(Throwable t) {
               if (!(t instanceof IllegalStateException)) {
                   return Uni.createFrom().failure(t);
               } else {
                   1 fun = new 1(this);
                   ExecutionModel em = ExecutionModel.EVENT_LOOP;
                   return doErrorExecute(t, em, (Function)fun);
               }
           }
      
           public WebSocketEndpoint.ExecutionModel onTextMessageExecutionModel() {
               return ExecutionModel.EVENT_LOOP;
           }
      
           public String beanIdentifier() {
              return "egBJQ7_QAFkQlYXSTKE0XlN3wow";
           }
       }
       
      Returns:
      the name of the generated class
    • decodeMessage

      static io.quarkus.gizmo2.Expr decodeMessage(io.quarkus.gizmo2.creator.BlockCreator bc, io.quarkus.gizmo2.Expr endpointThis, boolean binaryMessage, org.jboss.jandex.Type valueType, io.quarkus.gizmo2.Var value, Callback callback)
    • findErrorHandlers

      static List<Callback> findErrorHandlers(Callback.Target expectedTarget, org.jboss.jandex.IndexView index, io.quarkus.arc.processor.BeanInfo bean, org.jboss.jandex.ClassInfo beanClass, CallbackArgumentsBuildItem callbackArguments, io.quarkus.arc.deployment.TransformedAnnotationsBuildItem transformedAnnotations, String endpointPath)
    • findCallback

      static Callback findCallback(Callback.Target target, org.jboss.jandex.IndexView index, io.quarkus.arc.processor.BeanInfo bean, org.jboss.jandex.ClassInfo beanClass, org.jboss.jandex.DotName annotationName, CallbackArgumentsBuildItem callbackArguments, io.quarkus.arc.deployment.TransformedAnnotationsBuildItem transformedAnnotations, String endpointPath)
    • hasBlockingSignature

      static boolean hasBlockingSignature(org.jboss.jandex.MethodInfo method)
    • isUniVoid

      static boolean isUniVoid(org.jboss.jandex.Type type)
    • isByteArray

      static boolean isByteArray(org.jboss.jandex.Type type)
    • methodToString

      static String methodToString(org.jboss.jandex.MethodInfo method)