On Thu, 15 Dec 2022 14:56:03 GMT, Adam Sotona <asot...@openjdk.org> wrote:
> 8294966: jdk.jartool sun.tools.jar.FingerPrint uses ASM to parse class jar > entries > This patch converts it to use Classfile API. > > Please review. > Thanks, > Adam src/jdk.jartool/share/classes/sun/tools/jar/FingerPrint.java line 42: > 40: import jdk.internal.classfile.FieldModel; > 41: import jdk.internal.classfile.MethodModel; > 42: import jdk.internal.classfile.attribute.EnclosingMethodAttribute; this import is unused. src/jdk.jartool/share/classes/sun/tools/jar/FingerPrint.java line 282: > 280: fields.add(new Field(fm.flags().flagsMask(), > 281: fm.fieldName().stringValue(), > 282: fm.fieldType().stringValue())); I find it more readable if the parameters to the Field constructor is aligned: Suggestion: fields.add(new Field(fm.flags().flagsMask(), fm.fieldName().stringValue(), fm.fieldType().stringValue())); src/jdk.jartool/share/classes/sun/tools/jar/FingerPrint.java line 313: > 311: @Override > 312: public void visitEnd() { > 313: this.nestedClass = this.outerClassName != null; `this.nestedClass` is updated after the attributes are visited. Suggest to rename `nestedClass` to `maybeNestedClass` and change `isNestedClass` to: public boolean isNestedClass() { return attrs.maybeNestedClass && attrs.outerClassName != null; } ------------- PR: https://git.openjdk.org/jdk/pull/11694