public abstract class jakarta.ws.rs.ext.RuntimeDelegate
  minor version: 0
  major version: 59
  flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
  this_class: jakarta.ws.rs.ext.RuntimeDelegate
  super_class: java.lang.Object
{
  public static final java.lang.String JAXRS_RUNTIME_DELEGATE_PROPERTY;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "jakarta.ws.rs.ext.RuntimeDelegate"

  private static final java.lang.Object RD_LOCK;
    descriptor: Ljava/lang/Object;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static java.lang.reflect.ReflectPermission suppressAccessChecksPermission;
    descriptor: Ljava/lang/reflect/ReflectPermission;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC

  private static volatile jakarta.ws.rs.ext.RuntimeDelegate cachedDelegate;
    descriptor: Ljakarta/ws/rs/ext/RuntimeDelegate;
    flags: (0x004a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=3, locals=0, args_size=0
         0: .line 44
            new java.lang.Object
            dup
            invokespecial java.lang.Object.<init>:()V
            putstatic jakarta.ws.rs.ext.RuntimeDelegate.RD_LOCK:Ljava/lang/Object;
         1: .line 45
            new java.lang.reflect.ReflectPermission
            dup
            ldc "suppressAccessChecks"
            invokespecial java.lang.reflect.ReflectPermission.<init>:(Ljava/lang/String;)V
            putstatic jakarta.ws.rs.ext.RuntimeDelegate.suppressAccessChecksPermission:Ljava/lang/reflect/ReflectPermission;
         2: .line 46
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  protected void <init>();
    descriptor: ()V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // jakarta.ws.rs.ext.RuntimeDelegate this
         0: .line 51
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 52
            return
        end local 0 // jakarta.ws.rs.ext.RuntimeDelegate this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljakarta/ws/rs/ext/RuntimeDelegate;

  public static jakarta.ws.rs.ext.RuntimeDelegate getInstance();
    descriptor: ()Ljakarta/ws/rs/ext/RuntimeDelegate;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=0
         0: .line 79
            getstatic jakarta.ws.rs.ext.RuntimeDelegate.cachedDelegate:Ljakarta/ws/rs/ext/RuntimeDelegate;
            astore 0 /* result */
        start local 0 // jakarta.ws.rs.ext.RuntimeDelegate result
         1: .line 80
            aload 0 /* result */
            ifnonnull 10
         2: .line 81
            getstatic jakarta.ws.rs.ext.RuntimeDelegate.RD_LOCK:Ljava/lang/Object;
            dup
            astore 1
            monitorenter
         3: .line 82
            getstatic jakarta.ws.rs.ext.RuntimeDelegate.cachedDelegate:Ljakarta/ws/rs/ext/RuntimeDelegate;
            astore 0 /* result */
         4: .line 83
            aload 0 /* result */
            ifnonnull 6
         5: .line 84
            invokestatic jakarta.ws.rs.ext.RuntimeDelegate.findDelegate:()Ljakarta/ws/rs/ext/RuntimeDelegate;
            dup
            astore 0 /* result */
            putstatic jakarta.ws.rs.ext.RuntimeDelegate.cachedDelegate:Ljakarta/ws/rs/ext/RuntimeDelegate;
         6: .line 81
      StackMap locals: jakarta.ws.rs.ext.RuntimeDelegate java.lang.Object
      StackMap stack:
            aload 1
            monitorexit
         7: goto 10
      StackMap locals:
      StackMap stack: java.lang.Throwable
         8: aload 1
            monitorexit
         9: athrow
        10: .line 88
      StackMap locals:
      StackMap stack:
            aload 0 /* result */
            areturn
        end local 0 // jakarta.ws.rs.ext.RuntimeDelegate result
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            1   11     0  result  Ljakarta/ws/rs/ext/RuntimeDelegate;
      Exception table:
        from    to  target  type
           3     7       8  any
           8     9       8  any

  private static jakarta.ws.rs.ext.RuntimeDelegate findDelegate();
    descriptor: ()Ljakarta/ws/rs/ext/RuntimeDelegate;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=5, args_size=0
         0: .line 98
            ldc "jakarta.ws.rs.ext.RuntimeDelegate"
            ldc Ljakarta/ws/rs/ext/RuntimeDelegate;
            invokestatic jakarta.ws.rs.ext.FactoryFinder.find:(Ljava/lang/String;Ljava/lang/Class;)Ljava/lang/Object;
            astore 0 /* delegate */
        start local 0 // java.lang.Object delegate
         1: .line 99
            aload 0 /* delegate */
            instanceof jakarta.ws.rs.ext.RuntimeDelegate
            ifne 12
         2: .line 100
            ldc Ljakarta/ws/rs/ext/RuntimeDelegate;
            astore 1 /* pClass */
        start local 1 // java.lang.Class pClass
         3: .line 101
            new java.lang.StringBuilder
            dup
            aload 1 /* pClass */
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            bipush 46
            bipush 47
            invokevirtual java.lang.String.replace:(CC)Ljava/lang/String;
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc ".class"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            astore 2 /* classnameAsResource */
        start local 2 // java.lang.String classnameAsResource
         4: .line 102
            aload 1 /* pClass */
            invokevirtual java.lang.Class.getClassLoader:()Ljava/lang/ClassLoader;
            astore 3 /* loader */
        start local 3 // java.lang.ClassLoader loader
         5: .line 103
            aload 3 /* loader */
            ifnonnull 7
         6: .line 104
            invokestatic java.lang.ClassLoader.getSystemClassLoader:()Ljava/lang/ClassLoader;
            astore 3 /* loader */
         7: .line 106
      StackMap locals: java.lang.Object java.lang.Class java.lang.String java.lang.ClassLoader
      StackMap stack:
            aload 3 /* loader */
            aload 2 /* classnameAsResource */
            invokevirtual java.lang.ClassLoader.getResource:(Ljava/lang/String;)Ljava/net/URL;
            astore 4 /* targetTypeURL */
        start local 4 // java.net.URL targetTypeURL
         8: .line 107
            new java.lang.LinkageError
            dup
            new java.lang.StringBuilder
            dup
            ldc "ClassCastException: attempting to cast"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
         9: .line 108
            aload 0 /* delegate */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokevirtual java.lang.Class.getClassLoader:()Ljava/lang/ClassLoader;
            aload 2 /* classnameAsResource */
            invokevirtual java.lang.ClassLoader.getResource:(Ljava/lang/String;)Ljava/net/URL;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
        10: .line 109
            ldc " to "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 4 /* targetTypeURL */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        11: .line 107
            invokespecial java.lang.LinkageError.<init>:(Ljava/lang/String;)V
            athrow
        end local 4 // java.net.URL targetTypeURL
        end local 3 // java.lang.ClassLoader loader
        end local 2 // java.lang.String classnameAsResource
        end local 1 // java.lang.Class pClass
        12: .line 111
      StackMap locals:
      StackMap stack:
            aload 0 /* delegate */
            checkcast jakarta.ws.rs.ext.RuntimeDelegate
        13: areturn
        end local 0 // java.lang.Object delegate
        14: .line 112
      StackMap locals:
      StackMap stack: java.lang.Exception
            astore 0 /* ex */
        start local 0 // java.lang.Exception ex
        15: .line 113
            new java.lang.RuntimeException
            dup
            aload 0 /* ex */
            invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 0 // java.lang.Exception ex
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            1   14     0             delegate  Ljava/lang/Object;
            3   12     1               pClass  Ljava/lang/Class;
            4   12     2  classnameAsResource  Ljava/lang/String;
            5   12     3               loader  Ljava/lang/ClassLoader;
            8   12     4        targetTypeURL  Ljava/net/URL;
           15   16     0                   ex  Ljava/lang/Exception;
      Exception table:
        from    to  target  type
           0    13      14  Class java.lang.Exception

  public static void setInstance(jakarta.ws.rs.ext.RuntimeDelegate);
    descriptor: (Ljakarta/ws/rs/ext/RuntimeDelegate;)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=3, args_size=1
        start local 0 // jakarta.ws.rs.ext.RuntimeDelegate rd
         0: .line 126
            invokestatic java.lang.System.getSecurityManager:()Ljava/lang/SecurityManager;
            astore 1 /* security */
        start local 1 // java.lang.SecurityManager security
         1: .line 127
            aload 1 /* security */
            ifnull 3
         2: .line 128
            aload 1 /* security */
            getstatic jakarta.ws.rs.ext.RuntimeDelegate.suppressAccessChecksPermission:Ljava/lang/reflect/ReflectPermission;
            invokevirtual java.lang.SecurityManager.checkPermission:(Ljava/security/Permission;)V
         3: .line 130
      StackMap locals: java.lang.SecurityManager
      StackMap stack:
            getstatic jakarta.ws.rs.ext.RuntimeDelegate.RD_LOCK:Ljava/lang/Object;
            dup
            astore 2
            monitorenter
         4: .line 131
            aload 0 /* rd */
            putstatic jakarta.ws.rs.ext.RuntimeDelegate.cachedDelegate:Ljakarta/ws/rs/ext/RuntimeDelegate;
         5: .line 130
            aload 2
            monitorexit
         6: goto 9
      StackMap locals: jakarta.ws.rs.ext.RuntimeDelegate java.lang.SecurityManager java.lang.Object
      StackMap stack: java.lang.Throwable
         7: aload 2
            monitorexit
         8: athrow
         9: .line 133
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.lang.SecurityManager security
        end local 0 // jakarta.ws.rs.ext.RuntimeDelegate rd
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   10     0        rd  Ljakarta/ws/rs/ext/RuntimeDelegate;
            1   10     1  security  Ljava/lang/SecurityManager;
      Exception table:
        from    to  target  type
           4     6       7  any
           7     8       7  any
    MethodParameters:
      Name  Flags
      rd    final

  public abstract jakarta.ws.rs.core.UriBuilder createUriBuilder();
    descriptor: ()Ljakarta/ws/rs/core/UriBuilder;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT

  public abstract jakarta.ws.rs.core.Response$ResponseBuilder createResponseBuilder();
    descriptor: ()Ljakarta/ws/rs/core/Response$ResponseBuilder;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT

  public abstract jakarta.ws.rs.core.Variant$VariantListBuilder createVariantListBuilder();
    descriptor: ()Ljakarta/ws/rs/core/Variant$VariantListBuilder;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT

  public abstract <T> T createEndpoint(jakarta.ws.rs.core.Application, java.lang.Class<T>);
    descriptor: (Ljakarta/ws/rs/core/Application;Ljava/lang/Class;)Ljava/lang/Object;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Exceptions:
      throws java.lang.IllegalArgumentException, java.lang.UnsupportedOperationException
    Signature: <T:Ljava/lang/Object;>(Ljakarta/ws/rs/core/Application;Ljava/lang/Class<TT;>;)TT;
    MethodParameters:
              Name  Flags
      application   
      endpointType  

  public abstract <T> jakarta.ws.rs.ext.RuntimeDelegate$HeaderDelegate<T> createHeaderDelegate(java.lang.Class<T>);
    descriptor: (Ljava/lang/Class;)Ljakarta/ws/rs/ext/RuntimeDelegate$HeaderDelegate;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Exceptions:
      throws java.lang.IllegalArgumentException
    Signature: <T:Ljava/lang/Object;>(Ljava/lang/Class<TT;>;)Ljakarta/ws/rs/ext/RuntimeDelegate$HeaderDelegate<TT;>;
    MethodParameters:
      Name  Flags
      type  

  public abstract jakarta.ws.rs.core.Link$Builder createLinkBuilder();
    descriptor: ()Ljakarta/ws/rs/core/Link$Builder;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
}
SourceFile: "RuntimeDelegate.java"
NestMembers:
  jakarta.ws.rs.ext.RuntimeDelegate$HeaderDelegate
InnerClasses:
  public abstract Builder = jakarta.ws.rs.core.Link$Builder of jakarta.ws.rs.core.Link
  public abstract ResponseBuilder = jakarta.ws.rs.core.Response$ResponseBuilder of jakarta.ws.rs.core.Response
  public abstract VariantListBuilder = jakarta.ws.rs.core.Variant$VariantListBuilder of jakarta.ws.rs.core.Variant
  public abstract HeaderDelegate = jakarta.ws.rs.ext.RuntimeDelegate$HeaderDelegate of jakarta.ws.rs.ext.RuntimeDelegate