class javax.validation.Validation$GenericBootstrapImpl implements javax.validation.bootstrap.GenericBootstrap, javax.validation.spi.BootstrapState
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: javax.validation.Validation$GenericBootstrapImpl
  super_class: java.lang.Object
{
  private javax.validation.ValidationProviderResolver resolver;
    descriptor: Ljavax/validation/ValidationProviderResolver;
    flags: (0x0002) ACC_PRIVATE

  private javax.validation.ValidationProviderResolver defaultResolver;
    descriptor: Ljavax/validation/ValidationProviderResolver;
    flags: (0x0002) ACC_PRIVATE

  private void <init>();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javax.validation.Validation$GenericBootstrapImpl this
         0: .line 245
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // javax.validation.Validation$GenericBootstrapImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavax/validation/Validation$GenericBootstrapImpl;

  public javax.validation.bootstrap.GenericBootstrap providerResolver(javax.validation.ValidationProviderResolver);
    descriptor: (Ljavax/validation/ValidationProviderResolver;)Ljavax/validation/bootstrap/GenericBootstrap;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // javax.validation.Validation$GenericBootstrapImpl this
        start local 1 // javax.validation.ValidationProviderResolver resolver
         0: .line 252
            aload 0 /* this */
            aload 1 /* resolver */
            putfield javax.validation.Validation$GenericBootstrapImpl.resolver:Ljavax/validation/ValidationProviderResolver;
         1: .line 253
            aload 0 /* this */
            areturn
        end local 1 // javax.validation.ValidationProviderResolver resolver
        end local 0 // javax.validation.Validation$GenericBootstrapImpl this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Ljavax/validation/Validation$GenericBootstrapImpl;
            0    2     1  resolver  Ljavax/validation/ValidationProviderResolver;
    MethodParameters:
          Name  Flags
      resolver  

  public javax.validation.ValidationProviderResolver getValidationProviderResolver();
    descriptor: ()Ljavax/validation/ValidationProviderResolver;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javax.validation.Validation$GenericBootstrapImpl this
         0: .line 258
            aload 0 /* this */
            getfield javax.validation.Validation$GenericBootstrapImpl.resolver:Ljavax/validation/ValidationProviderResolver;
            areturn
        end local 0 // javax.validation.Validation$GenericBootstrapImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavax/validation/Validation$GenericBootstrapImpl;

  public javax.validation.ValidationProviderResolver getDefaultValidationProviderResolver();
    descriptor: ()Ljavax/validation/ValidationProviderResolver;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // javax.validation.Validation$GenericBootstrapImpl this
         0: .line 263
            aload 0 /* this */
            getfield javax.validation.Validation$GenericBootstrapImpl.defaultResolver:Ljavax/validation/ValidationProviderResolver;
            ifnonnull 2
         1: .line 264
            aload 0 /* this */
            new javax.validation.Validation$DefaultValidationProviderResolver
            dup
            invokespecial javax.validation.Validation$DefaultValidationProviderResolver.<init>:()V
            putfield javax.validation.Validation$GenericBootstrapImpl.defaultResolver:Ljavax/validation/ValidationProviderResolver;
         2: .line 266
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javax.validation.Validation$GenericBootstrapImpl.defaultResolver:Ljavax/validation/ValidationProviderResolver;
            areturn
        end local 0 // javax.validation.Validation$GenericBootstrapImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Ljavax/validation/Validation$GenericBootstrapImpl;

  public javax.validation.Configuration<?> configure();
    descriptor: ()Ljavax/validation/Configuration;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=5, args_size=1
        start local 0 // javax.validation.Validation$GenericBootstrapImpl this
         0: .line 271
            aload 0 /* this */
            getfield javax.validation.Validation$GenericBootstrapImpl.resolver:Ljavax/validation/ValidationProviderResolver;
            ifnonnull 2
         1: .line 272
            aload 0 /* this */
            invokevirtual javax.validation.Validation$GenericBootstrapImpl.getDefaultValidationProviderResolver:()Ljavax/validation/ValidationProviderResolver;
            goto 3
         2: .line 273
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javax.validation.Validation$GenericBootstrapImpl.resolver:Ljavax/validation/ValidationProviderResolver;
         3: .line 271
      StackMap locals:
      StackMap stack: javax.validation.ValidationProviderResolver
            astore 1 /* resolver */
        start local 1 // javax.validation.ValidationProviderResolver resolver
         4: .line 277
            aload 1 /* resolver */
            invokeinterface javax.validation.ValidationProviderResolver.getValidationProviders:()Ljava/util/List;
            astore 2 /* validationProviders */
        start local 2 // java.util.List validationProviders
         5: .line 278
            goto 10
        end local 2 // java.util.List validationProviders
         6: .line 280
      StackMap locals: javax.validation.Validation$GenericBootstrapImpl javax.validation.ValidationProviderResolver
      StackMap stack: javax.validation.ValidationException
            astore 3 /* e */
        start local 3 // javax.validation.ValidationException e
         7: .line 281
            aload 3 /* e */
            athrow
        end local 3 // javax.validation.ValidationException e
         8: .line 284
      StackMap locals:
      StackMap stack: java.lang.RuntimeException
            astore 3 /* re */
        start local 3 // java.lang.RuntimeException re
         9: .line 285
            new javax.validation.ValidationException
            dup
            ldc "Unable to get available provider resolvers."
            aload 3 /* re */
            invokespecial javax.validation.ValidationException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
            athrow
        end local 3 // java.lang.RuntimeException re
        start local 2 // java.util.List validationProviders
        10: .line 288
      StackMap locals: java.util.List
      StackMap stack:
            aload 2 /* validationProviders */
            invokeinterface java.util.List.isEmpty:()Z
            ifeq 13
        11: .line 289
            ldc "Unable to create a Configuration, because no Bean Validation provider could be found. Add a provider like Hibernate Validator (RI) to your classpath."
            astore 3 /* msg */
        start local 3 // java.lang.String msg
        12: .line 291
            new javax.validation.NoProviderFoundException
            dup
            aload 3 /* msg */
            invokespecial javax.validation.NoProviderFoundException.<init>:(Ljava/lang/String;)V
            athrow
        end local 3 // java.lang.String msg
        13: .line 296
      StackMap locals:
      StackMap stack:
            aload 1 /* resolver */
            invokeinterface javax.validation.ValidationProviderResolver.getValidationProviders:()Ljava/util/List;
            iconst_0
            invokeinterface java.util.List.get:(I)Ljava/lang/Object;
            checkcast javax.validation.spi.ValidationProvider
            aload 0 /* this */
            invokeinterface javax.validation.spi.ValidationProvider.createGenericConfiguration:(Ljavax/validation/spi/BootstrapState;)Ljavax/validation/Configuration;
            astore 3 /* config */
        start local 3 // javax.validation.Configuration config
        14: .line 297
            goto 17
        end local 3 // javax.validation.Configuration config
        15: .line 298
      StackMap locals:
      StackMap stack: java.lang.RuntimeException
            astore 4 /* re */
        start local 4 // java.lang.RuntimeException re
        16: .line 299
            new javax.validation.ValidationException
            dup
            ldc "Unable to instantiate Configuration."
            aload 4 /* re */
            invokespecial javax.validation.ValidationException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
            athrow
        end local 4 // java.lang.RuntimeException re
        start local 3 // javax.validation.Configuration config
        17: .line 302
      StackMap locals: javax.validation.Configuration
      StackMap stack:
            aload 3 /* config */
            areturn
        end local 3 // javax.validation.Configuration config
        end local 2 // java.util.List validationProviders
        end local 1 // javax.validation.ValidationProviderResolver resolver
        end local 0 // javax.validation.Validation$GenericBootstrapImpl this
      LocalVariableTable:
        Start  End  Slot                 Name  Signature
            0   18     0                 this  Ljavax/validation/Validation$GenericBootstrapImpl;
            4   18     1             resolver  Ljavax/validation/ValidationProviderResolver;
            5    6     2  validationProviders  Ljava/util/List<Ljavax/validation/spi/ValidationProvider<*>;>;
           10   18     2  validationProviders  Ljava/util/List<Ljavax/validation/spi/ValidationProvider<*>;>;
            7    8     3                    e  Ljavax/validation/ValidationException;
            9   10     3                   re  Ljava/lang/RuntimeException;
           12   13     3                  msg  Ljava/lang/String;
           14   15     3               config  Ljavax/validation/Configuration<*>;
           17   18     3               config  Ljavax/validation/Configuration<*>;
           16   17     4                   re  Ljava/lang/RuntimeException;
      Exception table:
        from    to  target  type
           4     5       6  Class javax.validation.ValidationException
           4     5       8  Class java.lang.RuntimeException
          13    14      15  Class java.lang.RuntimeException
    Signature: ()Ljavax/validation/Configuration<*>;
}
SourceFile: "Validation.java"
NestHost: javax.validation.Validation
InnerClasses:
  private DefaultValidationProviderResolver = javax.validation.Validation$DefaultValidationProviderResolver of javax.validation.Validation
  private GenericBootstrapImpl = javax.validation.Validation$GenericBootstrapImpl of javax.validation.Validation