class sun.security.util.DisabledAlgorithmConstraints$UsageConstraint extends sun.security.util.DisabledAlgorithmConstraints$Constraint
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: sun.security.util.DisabledAlgorithmConstraints$UsageConstraint
  super_class: sun.security.util.DisabledAlgorithmConstraints$Constraint
{
  java.lang.String[] usages;
    descriptor: [Ljava/lang/String;
    flags: (0x0000) 

  void <init>(java.lang.String, java.lang.String[]);
    descriptor: (Ljava/lang/String;[Ljava/lang/String;)V
    flags: (0x0000) 
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // sun.security.util.DisabledAlgorithmConstraints$UsageConstraint this
        start local 1 // java.lang.String algorithm
        start local 2 // java.lang.String[] usages
         0: .line 715
            aload 0 /* this */
            invokespecial sun.security.util.DisabledAlgorithmConstraints$Constraint.<init>:()V
         1: .line 716
            aload 0 /* this */
            aload 1 /* algorithm */
            putfield sun.security.util.DisabledAlgorithmConstraints$UsageConstraint.algorithm:Ljava/lang/String;
         2: .line 717
            aload 0 /* this */
            aload 2 /* usages */
            putfield sun.security.util.DisabledAlgorithmConstraints$UsageConstraint.usages:[Ljava/lang/String;
         3: .line 718
            return
        end local 2 // java.lang.String[] usages
        end local 1 // java.lang.String algorithm
        end local 0 // sun.security.util.DisabledAlgorithmConstraints$UsageConstraint this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    4     0       this  Lsun/security/util/DisabledAlgorithmConstraints$UsageConstraint;
            0    4     1  algorithm  Ljava/lang/String;
            0    4     2     usages  [Ljava/lang/String;
    MethodParameters:
           Name  Flags
      algorithm  
      usages     

  public void permits(sun.security.util.ConstraintsParameters);
    descriptor: (Lsun/security/util/ConstraintsParameters;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=9, args_size=2
        start local 0 // sun.security.util.DisabledAlgorithmConstraints$UsageConstraint this
        start local 1 // sun.security.util.ConstraintsParameters cp
         0: .line 723
            aload 0 /* this */
            getfield sun.security.util.DisabledAlgorithmConstraints$UsageConstraint.usages:[Ljava/lang/String;
            dup
            astore 5
            arraylength
            istore 4
            iconst_0
            istore 3
            goto 28
      StackMap locals: sun.security.util.DisabledAlgorithmConstraints$UsageConstraint sun.security.util.ConstraintsParameters top int int java.lang.String[]
      StackMap stack:
         1: aload 5
            iload 3
            aaload
            astore 2 /* usage */
        start local 2 // java.lang.String usage
         2: .line 725
            aconst_null
            astore 6 /* v */
        start local 6 // java.lang.String v
         3: .line 726
            aload 2 /* usage */
            ldc "TLSServer"
            invokevirtual java.lang.String.compareToIgnoreCase:(Ljava/lang/String;)I
            ifne 6
         4: .line 727
            ldc "tls server"
            astore 6 /* v */
         5: .line 728
            goto 11
      StackMap locals: sun.security.util.DisabledAlgorithmConstraints$UsageConstraint sun.security.util.ConstraintsParameters java.lang.String int int java.lang.String[] java.lang.String
      StackMap stack:
         6: aload 2 /* usage */
            ldc "TLSClient"
            invokevirtual java.lang.String.compareToIgnoreCase:(Ljava/lang/String;)I
            ifne 9
         7: .line 729
            ldc "tls client"
            astore 6 /* v */
         8: .line 730
            goto 11
      StackMap locals:
      StackMap stack:
         9: aload 2 /* usage */
            ldc "SignedJAR"
            invokevirtual java.lang.String.compareToIgnoreCase:(Ljava/lang/String;)I
            ifne 11
        10: .line 731
            ldc "plugin code signing"
            astore 6 /* v */
        11: .line 734
      StackMap locals:
      StackMap stack:
            getstatic sun.security.util.DisabledAlgorithmConstraints.debug:Lsun/security/util/Debug;
            ifnull 19
        12: .line 735
            getstatic sun.security.util.DisabledAlgorithmConstraints.debug:Lsun/security/util/Debug;
            new java.lang.StringBuilder
            dup
            ldc "Checking if usage constraint \""
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 6 /* v */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        13: .line 736
            ldc "\" matches \""
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 1 /* cp */
            invokevirtual sun.security.util.ConstraintsParameters.getVariant:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "\""
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        14: .line 735
            invokevirtual sun.security.util.Debug.println:(Ljava/lang/String;)V
        15: .line 739
            new java.io.ByteArrayOutputStream
            dup
            invokespecial java.io.ByteArrayOutputStream.<init>:()V
            astore 7 /* ba */
        start local 7 // java.io.ByteArrayOutputStream ba
        16: .line 740
            new java.io.PrintStream
            dup
            aload 7 /* ba */
            invokespecial java.io.PrintStream.<init>:(Ljava/io/OutputStream;)V
            astore 8 /* ps */
        start local 8 // java.io.PrintStream ps
        17: .line 741
            new java.lang.Exception
            dup
            invokespecial java.lang.Exception.<init>:()V
            aload 8 /* ps */
            invokevirtual java.lang.Exception.printStackTrace:(Ljava/io/PrintStream;)V
        18: .line 742
            getstatic sun.security.util.DisabledAlgorithmConstraints.debug:Lsun/security/util/Debug;
            aload 7 /* ba */
            invokevirtual java.io.ByteArrayOutputStream.toString:()Ljava/lang/String;
            invokevirtual sun.security.util.Debug.println:(Ljava/lang/String;)V
        end local 8 // java.io.PrintStream ps
        end local 7 // java.io.ByteArrayOutputStream ba
        19: .line 744
      StackMap locals:
      StackMap stack:
            aload 1 /* cp */
            invokevirtual sun.security.util.ConstraintsParameters.getVariant:()Ljava/lang/String;
            aload 6 /* v */
            invokevirtual java.lang.String.compareTo:(Ljava/lang/String;)I
            ifne 27
        20: .line 745
            aload 0 /* this */
            aload 1 /* cp */
            invokevirtual sun.security.util.DisabledAlgorithmConstraints$UsageConstraint.next:(Lsun/security/util/ConstraintsParameters;)Z
            ifeq 22
        21: .line 746
            return
        22: .line 748
      StackMap locals:
      StackMap stack:
            new java.security.cert.CertPathValidatorException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Usage constraint "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        23: .line 749
            aload 2 /* usage */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc " check failed: "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            getfield sun.security.util.DisabledAlgorithmConstraints$UsageConstraint.algorithm:Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        24: .line 750
            aload 0 /* this */
            aload 1 /* cp */
            invokevirtual sun.security.util.DisabledAlgorithmConstraints$UsageConstraint.extendedMsg:(Lsun/security/util/ConstraintsParameters;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        25: .line 751
            aconst_null
            aconst_null
            iconst_m1
            getstatic java.security.cert.CertPathValidatorException$BasicReason.ALGORITHM_CONSTRAINED:Ljava/security/cert/CertPathValidatorException$BasicReason;
        26: .line 748
            invokespecial java.security.cert.CertPathValidatorException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;Ljava/security/cert/CertPath;ILjava/security/cert/CertPathValidatorException$Reason;)V
            athrow
        end local 6 // java.lang.String v
        end local 2 // java.lang.String usage
        27: .line 723
      StackMap locals: sun.security.util.DisabledAlgorithmConstraints$UsageConstraint sun.security.util.ConstraintsParameters top int int java.lang.String[]
      StackMap stack:
            iinc 3 1
      StackMap locals:
      StackMap stack:
        28: iload 3
            iload 4
            if_icmplt 1
        29: .line 754
            return
        end local 1 // sun.security.util.ConstraintsParameters cp
        end local 0 // sun.security.util.DisabledAlgorithmConstraints$UsageConstraint this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   30     0   this  Lsun/security/util/DisabledAlgorithmConstraints$UsageConstraint;
            0   30     1     cp  Lsun/security/util/ConstraintsParameters;
            2   27     2  usage  Ljava/lang/String;
            3   27     6      v  Ljava/lang/String;
           16   19     7     ba  Ljava/io/ByteArrayOutputStream;
           17   19     8     ps  Ljava/io/PrintStream;
    Exceptions:
      throws java.security.cert.CertPathValidatorException
    MethodParameters:
      Name  Flags
      cp    
}
SourceFile: "DisabledAlgorithmConstraints.java"
NestHost: sun.security.util.DisabledAlgorithmConstraints
InnerClasses:
  public final BasicReason = java.security.cert.CertPathValidatorException$BasicReason of java.security.cert.CertPathValidatorException
  public abstract Reason = java.security.cert.CertPathValidatorException$Reason of java.security.cert.CertPathValidatorException
  private abstract Constraint = sun.security.util.DisabledAlgorithmConstraints$Constraint of sun.security.util.DisabledAlgorithmConstraints
  private UsageConstraint = sun.security.util.DisabledAlgorithmConstraints$UsageConstraint of sun.security.util.DisabledAlgorithmConstraints