Browse Source

Polishing

pull/36449/head
Sam Brannen 2 weeks ago
parent
commit
9cedcd65ef
  1. 2
      spring-core/src/main/java24/org/springframework/core/type/classreading/ClassFileAnnotationDelegate.java
  2. 20
      spring-core/src/main/java24/org/springframework/core/type/classreading/ClassFileAnnotationMetadata.java

2
spring-core/src/main/java24/org/springframework/core/type/classreading/ClassFileAnnotationDelegate.java

@ -171,7 +171,7 @@ abstract class ClassFileAnnotationDelegate {
} }
record Source(Annotation entryName) { record Source(Annotation annotation) {
} }
} }

20
spring-core/src/main/java24/org/springframework/core/type/classreading/ClassFileAnnotationMetadata.java

@ -145,8 +145,7 @@ final class ClassFileAnnotationMetadata implements AnnotationMetadata {
public Set<String> getAnnotationTypes() { public Set<String> getAnnotationTypes() {
Set<String> annotationTypes = this.annotationTypes; Set<String> annotationTypes = this.annotationTypes;
if (annotationTypes == null) { if (annotationTypes == null) {
annotationTypes = Collections.unmodifiableSet( annotationTypes = Collections.unmodifiableSet(AnnotationMetadata.super.getAnnotationTypes());
AnnotationMetadata.super.getAnnotationTypes());
this.annotationTypes = annotationTypes; this.annotationTypes = annotationTypes;
} }
return annotationTypes; return annotationTypes;
@ -171,7 +170,8 @@ final class ClassFileAnnotationMetadata implements AnnotationMetadata {
@Override @Override
public boolean equals(@Nullable Object other) { public boolean equals(@Nullable Object other) {
return (this == other || (other instanceof ClassFileAnnotationMetadata that && this.className.equals(that.className))); return (this == other || (other instanceof ClassFileAnnotationMetadata that &&
this.className.equals(that.className)));
} }
@Override @Override
@ -259,11 +259,13 @@ final class ClassFileAnnotationMetadata implements AnnotationMetadata {
void enclosingClass(ClassEntry thisClass) { void enclosingClass(ClassEntry thisClass) {
String thisClassName = thisClass.name().stringValue(); String thisClassName = thisClass.name().stringValue();
int currentClassIndex = thisClassName.lastIndexOf('$'); int currentClassIndex = thisClassName.lastIndexOf('$');
this.enclosingClassName = ClassUtils.convertResourcePathToClassName(thisClassName.substring(0, currentClassIndex)); this.enclosingClassName = ClassUtils.convertResourcePathToClassName(
thisClassName.substring(0, currentClassIndex));
} }
void superClass(Superclass superClass) { void superClass(Superclass superClass) {
this.superClassName = ClassUtils.convertResourcePathToClassName(superClass.superclassEntry().name().stringValue()); this.superClassName = ClassUtils.convertResourcePathToClassName(
superClass.superclassEntry().name().stringValue());
} }
void interfaces(Interfaces interfaces) { void interfaces(Interfaces interfaces) {
@ -300,9 +302,11 @@ final class ClassFileAnnotationMetadata implements AnnotationMetadata {
} }
ClassFileAnnotationMetadata build() { ClassFileAnnotationMetadata build() {
boolean independentInnerClass = (this.enclosingClassName != null) && this.innerAccessFlags.contains(AccessFlag.STATIC); boolean independentInnerClass = (this.enclosingClassName != null) &&
return new ClassFileAnnotationMetadata(this.className, this.accessFlags, this.enclosingClassName, this.superClassName, this.innerAccessFlags.contains(AccessFlag.STATIC);
independentInnerClass, this.interfaceNames, this.memberClassNames, this.declaredMethods, this.mergedAnnotations); return new ClassFileAnnotationMetadata(this.className, this.accessFlags, this.enclosingClassName,
this.superClassName, independentInnerClass, this.interfaceNames, this.memberClassNames,
this.declaredMethods, this.mergedAnnotations);
} }
} }

Loading…
Cancel
Save