public abstract class org.jcp.xml.dsig.internal.dom.DOMDigestMethod extends org.jcp.xml.dsig.internal.dom.DOMStructure implements javax.xml.crypto.dsig.DigestMethod
  minor version: 0
  major version: 59
  flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
  this_class: org.jcp.xml.dsig.internal.dom.DOMDigestMethod
  super_class: org.jcp.xml.dsig.internal.dom.DOMStructure
{
  static final java.lang.String SHA384;
    descriptor: Ljava/lang/String;
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: "http://www.w3.org/2001/04/xmldsig-more#sha384"

  private javax.xml.crypto.dsig.spec.DigestMethodParameterSpec params;
    descriptor: Ljavax/xml/crypto/dsig/spec/DigestMethodParameterSpec;
    flags: (0x0002) ACC_PRIVATE

  void <init>(java.security.spec.AlgorithmParameterSpec);
    descriptor: (Ljava/security/spec/AlgorithmParameterSpec;)V
    flags: (0x0000) 
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.jcp.xml.dsig.internal.dom.DOMDigestMethod this
        start local 1 // java.security.spec.AlgorithmParameterSpec params
         0: .line 61
            aload 0 /* this */
            invokespecial org.jcp.xml.dsig.internal.dom.DOMStructure.<init>:()V
         1: .line 64
            aload 1 /* params */
            ifnull 5
            aload 1 /* params */
            instanceof javax.xml.crypto.dsig.spec.DigestMethodParameterSpec
            ifne 5
         2: .line 65
            new java.security.InvalidAlgorithmParameterException
            dup
         3: .line 66
            ldc "params must be of type DigestMethodParameterSpec"
         4: .line 65
            invokespecial java.security.InvalidAlgorithmParameterException.<init>:(Ljava/lang/String;)V
            athrow
         5: .line 68
      StackMap locals: org.jcp.xml.dsig.internal.dom.DOMDigestMethod java.security.spec.AlgorithmParameterSpec
      StackMap stack:
            aload 0 /* this */
            aload 1 /* params */
            checkcast javax.xml.crypto.dsig.spec.DigestMethodParameterSpec
            invokevirtual org.jcp.xml.dsig.internal.dom.DOMDigestMethod.checkParams:(Ljavax/xml/crypto/dsig/spec/DigestMethodParameterSpec;)V
         6: .line 69
            aload 0 /* this */
            aload 1 /* params */
            checkcast javax.xml.crypto.dsig.spec.DigestMethodParameterSpec
            putfield org.jcp.xml.dsig.internal.dom.DOMDigestMethod.params:Ljavax/xml/crypto/dsig/spec/DigestMethodParameterSpec;
         7: .line 70
            return
        end local 1 // java.security.spec.AlgorithmParameterSpec params
        end local 0 // org.jcp.xml.dsig.internal.dom.DOMDigestMethod this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    8     0    this  Lorg/jcp/xml/dsig/internal/dom/DOMDigestMethod;
            0    8     1  params  Ljava/security/spec/AlgorithmParameterSpec;
    Exceptions:
      throws java.security.InvalidAlgorithmParameterException
    MethodParameters:
        Name  Flags
      params  

  void <init>(Element);
    descriptor: (LElement;)V
    flags: (0x0000) 
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.jcp.xml.dsig.internal.dom.DOMDigestMethod this
         0: .line 38
            new java.lang.Error
            dup
            ldc "Unresolved compilation problems: \n\tThe import org.w3c cannot be resolved\n\tThe import org.w3c cannot be resolved\n\tThe import org.w3c cannot be resolved\n\tElement cannot be resolved to a type\n\tElement cannot be resolved to a type\n\tElement cannot be resolved to a type\n\tElement cannot be resolved to a type\n\tNode cannot be resolved to a type\n\tDocument cannot be resolved to a type\n\tElement cannot be resolved to a type\n\tElement cannot be resolved to a type\n\tThe type DOMDigestMethod.SHA1 must implement the inherited abstract method DOMStructure.marshal(Node, String, DOMCryptoContext)\n\tElement cannot be resolved to a type\n\tThe type DOMDigestMethod.SHA256 must implement the inherited abstract method DOMStructure.marshal(Node, String, DOMCryptoContext)\n\tElement cannot be resolved to a type\n\tThe type DOMDigestMethod.SHA384 must implement the inherited abstract method DOMStructure.marshal(Node, String, DOMCryptoContext)\n\tElement cannot be resolved to a type\n\tThe type DOMDigestMethod.SHA512 must implement the inherited abstract method DOMStructure.marshal(Node, String, DOMCryptoContext)\n\tElement cannot be resolved to a type\n"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
        end local 0 // org.jcp.xml.dsig.internal.dom.DOMDigestMethod this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jcp/xml/dsig/internal/dom/DOMDigestMethod;
    Exceptions:
      throws javax.xml.crypto.MarshalException
    MethodParameters:
        Name  Flags
      dmElem  

  static javax.xml.crypto.dsig.DigestMethod unmarshal(Element);
    descriptor: (LElement;)Ljavax/xml/crypto/dsig/DigestMethod;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
         0: .line 91
            new java.lang.Error
            dup
            ldc "Unresolved compilation problem: \n\tElement cannot be resolved to a type\n"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    Exceptions:
      throws javax.xml.crypto.MarshalException
    MethodParameters:
        Name  Flags
      dmElem  

  void checkParams(javax.xml.crypto.dsig.spec.DigestMethodParameterSpec);
    descriptor: (Ljavax/xml/crypto/dsig/spec/DigestMethodParameterSpec;)V
    flags: (0x0000) 
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // org.jcp.xml.dsig.internal.dom.DOMDigestMethod this
        start local 1 // javax.xml.crypto.dsig.spec.DigestMethodParameterSpec params
         0: .line 120
            aload 1 /* params */
            ifnull 5
         1: .line 121
            new java.security.InvalidAlgorithmParameterException
            dup
            new java.lang.StringBuilder
            dup
            ldc "no parameters should be specified for the "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
         2: .line 122
            aload 0 /* this */
            invokevirtual org.jcp.xml.dsig.internal.dom.DOMDigestMethod.getMessageDigestAlgorithm:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         3: .line 123
            ldc " DigestMethod algorithm"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         4: .line 121
            invokespecial java.security.InvalidAlgorithmParameterException.<init>:(Ljava/lang/String;)V
            athrow
         5: .line 125
      StackMap locals:
      StackMap stack:
            return
        end local 1 // javax.xml.crypto.dsig.spec.DigestMethodParameterSpec params
        end local 0 // org.jcp.xml.dsig.internal.dom.DOMDigestMethod this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    6     0    this  Lorg/jcp/xml/dsig/internal/dom/DOMDigestMethod;
            0    6     1  params  Ljavax/xml/crypto/dsig/spec/DigestMethodParameterSpec;
    Exceptions:
      throws java.security.InvalidAlgorithmParameterException
    MethodParameters:
        Name  Flags
      params  

  public final java.security.spec.AlgorithmParameterSpec getParameterSpec();
    descriptor: ()Ljava/security/spec/AlgorithmParameterSpec;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.jcp.xml.dsig.internal.dom.DOMDigestMethod this
         0: .line 128
            aload 0 /* this */
            getfield org.jcp.xml.dsig.internal.dom.DOMDigestMethod.params:Ljavax/xml/crypto/dsig/spec/DigestMethodParameterSpec;
            areturn
        end local 0 // org.jcp.xml.dsig.internal.dom.DOMDigestMethod this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jcp/xml/dsig/internal/dom/DOMDigestMethod;

  javax.xml.crypto.dsig.spec.DigestMethodParameterSpec unmarshalParams(Element);
    descriptor: (LElement;)Ljavax/xml/crypto/dsig/spec/DigestMethodParameterSpec;
    flags: (0x0000) 
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.jcp.xml.dsig.internal.dom.DOMDigestMethod this
         0: .line 141
            new java.lang.Error
            dup
            ldc "Unresolved compilation problem: \n\tElement cannot be resolved to a type\n"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
        end local 0 // org.jcp.xml.dsig.internal.dom.DOMDigestMethod this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jcp/xml/dsig/internal/dom/DOMDigestMethod;
    Exceptions:
      throws javax.xml.crypto.MarshalException
    MethodParameters:
            Name  Flags
      paramsElem  

  public void marshal(Node, java.lang.String, javax.xml.crypto.dom.DOMCryptoContext);
    descriptor: (LNode;Ljava/lang/String;Ljavax/xml/crypto/dom/DOMCryptoContext;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=4
        start local 0 // org.jcp.xml.dsig.internal.dom.DOMDigestMethod this
         0: .line 154
            new java.lang.Error
            dup
            ldc "Unresolved compilation problems: \n\tNode cannot be resolved to a type\n\tDocument cannot be resolved to a type\n\tElement cannot be resolved to a type\n"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
        end local 0 // org.jcp.xml.dsig.internal.dom.DOMDigestMethod this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jcp/xml/dsig/internal/dom/DOMDigestMethod;
    Exceptions:
      throws javax.xml.crypto.MarshalException
    MethodParameters:
         Name  Flags
      parent   
      prefix   
      context  

  public boolean equals(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=4, args_size=2
        start local 0 // org.jcp.xml.dsig.internal.dom.DOMDigestMethod this
        start local 1 // java.lang.Object o
         0: .line 172
            aload 0 /* this */
            aload 1 /* o */
            if_acmpne 2
         1: .line 173
            iconst_1
            ireturn
         2: .line 176
      StackMap locals:
      StackMap stack:
            aload 1 /* o */
            instanceof javax.xml.crypto.dsig.DigestMethod
            ifne 4
         3: .line 177
            iconst_0
            ireturn
         4: .line 179
      StackMap locals:
      StackMap stack:
            aload 1 /* o */
            checkcast javax.xml.crypto.dsig.DigestMethod
            astore 2 /* odm */
        start local 2 // javax.xml.crypto.dsig.DigestMethod odm
         5: .line 181
            aload 0 /* this */
            getfield org.jcp.xml.dsig.internal.dom.DOMDigestMethod.params:Ljavax/xml/crypto/dsig/spec/DigestMethodParameterSpec;
            ifnonnull 7
            aload 2 /* odm */
            invokeinterface javax.xml.crypto.dsig.DigestMethod.getParameterSpec:()Ljava/security/spec/AlgorithmParameterSpec;
            ifnonnull 6
            iconst_1
            goto 8
      StackMap locals: javax.xml.crypto.dsig.DigestMethod
      StackMap stack:
         6: iconst_0
            goto 8
         7: .line 182
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.jcp.xml.dsig.internal.dom.DOMDigestMethod.params:Ljavax/xml/crypto/dsig/spec/DigestMethodParameterSpec;
            aload 2 /* odm */
            invokeinterface javax.xml.crypto.dsig.DigestMethod.getParameterSpec:()Ljava/security/spec/AlgorithmParameterSpec;
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
         8: .line 181
      StackMap locals:
      StackMap stack: int
            istore 3 /* paramsEqual */
        start local 3 // boolean paramsEqual
         9: .line 184
            aload 0 /* this */
            invokevirtual org.jcp.xml.dsig.internal.dom.DOMDigestMethod.getAlgorithm:()Ljava/lang/String;
            aload 2 /* odm */
            invokeinterface javax.xml.crypto.dsig.DigestMethod.getAlgorithm:()Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 10
            iload 3 /* paramsEqual */
            ifeq 10
            iconst_1
            ireturn
      StackMap locals: int
      StackMap stack:
        10: iconst_0
            ireturn
        end local 3 // boolean paramsEqual
        end local 2 // javax.xml.crypto.dsig.DigestMethod odm
        end local 1 // java.lang.Object o
        end local 0 // org.jcp.xml.dsig.internal.dom.DOMDigestMethod this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   11     0         this  Lorg/jcp/xml/dsig/internal/dom/DOMDigestMethod;
            0   11     1            o  Ljava/lang/Object;
            5   11     2          odm  Ljavax/xml/crypto/dsig/DigestMethod;
            9   11     3  paramsEqual  Z
    MethodParameters:
      Name  Flags
      o     

  public int hashCode();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // org.jcp.xml.dsig.internal.dom.DOMDigestMethod this
         0: .line 189
            bipush 17
            istore 1 /* result */
        start local 1 // int result
         1: .line 190
            aload 0 /* this */
            getfield org.jcp.xml.dsig.internal.dom.DOMDigestMethod.params:Ljavax/xml/crypto/dsig/spec/DigestMethodParameterSpec;
            ifnull 3
         2: .line 191
            bipush 31
            iload 1 /* result */
            imul
            aload 0 /* this */
            getfield org.jcp.xml.dsig.internal.dom.DOMDigestMethod.params:Ljavax/xml/crypto/dsig/spec/DigestMethodParameterSpec;
            invokevirtual java.lang.Object.hashCode:()I
            iadd
            istore 1 /* result */
         3: .line 193
      StackMap locals: int
      StackMap stack:
            bipush 31
            iload 1 /* result */
            imul
            aload 0 /* this */
            invokevirtual org.jcp.xml.dsig.internal.dom.DOMDigestMethod.getAlgorithm:()Ljava/lang/String;
            invokevirtual java.lang.String.hashCode:()I
            iadd
            istore 1 /* result */
         4: .line 195
            iload 1 /* result */
            ireturn
        end local 1 // int result
        end local 0 // org.jcp.xml.dsig.internal.dom.DOMDigestMethod this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    5     0    this  Lorg/jcp/xml/dsig/internal/dom/DOMDigestMethod;
            1    5     1  result  I

  void marshalParams(Element, java.lang.String);
    descriptor: (LElement;Ljava/lang/String;)V
    flags: (0x0000) 
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // org.jcp.xml.dsig.internal.dom.DOMDigestMethod this
         0: .line 208
            new java.lang.Error
            dup
            ldc "Unresolved compilation problem: \n\tElement cannot be resolved to a type\n"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
        end local 0 // org.jcp.xml.dsig.internal.dom.DOMDigestMethod this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/jcp/xml/dsig/internal/dom/DOMDigestMethod;
    Exceptions:
      throws javax.xml.crypto.MarshalException
    MethodParameters:
        Name  Flags
      parent  
      prefix  

  abstract java.lang.String getMessageDigestAlgorithm();
    descriptor: ()Ljava/lang/String;
    flags: (0x0400) ACC_ABSTRACT
}
SourceFile: "DOMDigestMethod.java"
NestMembers:
  org.jcp.xml.dsig.internal.dom.DOMDigestMethod$SHA1  org.jcp.xml.dsig.internal.dom.DOMDigestMethod$SHA256  org.jcp.xml.dsig.internal.dom.DOMDigestMethod$SHA384  org.jcp.xml.dsig.internal.dom.DOMDigestMethod$SHA512
InnerClasses:
  final SHA1 = org.jcp.xml.dsig.internal.dom.DOMDigestMethod$SHA1 of org.jcp.xml.dsig.internal.dom.DOMDigestMethod
  final SHA256 = org.jcp.xml.dsig.internal.dom.DOMDigestMethod$SHA256 of org.jcp.xml.dsig.internal.dom.DOMDigestMethod
  final SHA384 = org.jcp.xml.dsig.internal.dom.DOMDigestMethod$SHA384 of org.jcp.xml.dsig.internal.dom.DOMDigestMethod
  final SHA512 = org.jcp.xml.dsig.internal.dom.DOMDigestMethod$SHA512 of org.jcp.xml.dsig.internal.dom.DOMDigestMethod