Skip to content

Instantly share code, notes, and snippets.

@dmlloyd
Created December 21, 2022 15:17
Show Gist options
  • Save dmlloyd/66ef4ee66a888c55da5f58395cc63762 to your computer and use it in GitHub Desktop.
Save dmlloyd/66ef4ee66a888c55da5f58395cc63762 to your computer and use it in GitHub Desktop.
The Naughty Class
Classfile /Users/david/tmp/bad-jar/org/eclipse/microprofile/config/inject/ConfigProperty.class
Last modified Dec 21, 2022; size 1290 bytes
SHA-256 checksum cfa585cf1e9b0107170de337edfd3e0805bac046d033693d14eecce51dea17a3
Compiled from "ConfigProperty.java"
public interface org.eclipse.microprofile.config.inject.ConfigProperty extends java.lang.annotation.Annotation
minor version: 0
major version: 52
flags: (0x2601) ACC_PUBLIC, ACC_INTERFACE, ACC_ABSTRACT, ACC_ANNOTATION
this_class: #1 // org/eclipse/microprofile/config/inject/ConfigProperty
super_class: #2 // java/lang/Object
interfaces: 1, fields: 1, methods: 2, attributes: 4
Constant pool:
#1 = Class #43 // org/eclipse/microprofile/config/inject/ConfigProperty
#2 = Class #44 // java/lang/Object
#3 = Class #45 // java/lang/annotation/Annotation
#4 = Utf8 UNCONFIGURED_VALUE
#5 = Utf8 Ljava/lang/String;
#6 = Utf8 ConstantValue
#7 = String #15 // org.eclipse.microprofile.config.configproperty.unconfigureddvalue
#8 = Utf8 name
#9 = Utf8 ()Ljava/lang/String;
#10 = Utf8 AnnotationDefault
#11 = Utf8
#12 = Utf8 RuntimeVisibleAnnotations
#13 = Utf8 Ljakarta/enterprise/util/Nonbinding;
#14 = Utf8 defaultValue
#15 = Utf8 org.eclipse.microprofile.config.configproperty.unconfigureddvalue
#16 = Utf8 SourceFile
#17 = Utf8 ConfigProperty.java
#18 = Utf8 Ljakarta/inject/Qualifier;
#19 = Utf8 Ljava/lang/annotation/Retention;
#20 = Utf8 value
#21 = Utf8 Ljava/lang/annotation/RetentionPolicy;
#22 = Utf8 RUNTIME
#23 = Utf8 Ljava/lang/annotation/Target;
#24 = Utf8 Ljava/lang/annotation/ElementType;
#25 = Utf8 METHOD
#26 = Utf8 FIELD
#27 = Utf8 PARAMETER
#28 = Utf8 TYPE
#29 = Utf8 RuntimeInvisibleAnnotations
#30 = Utf8 Lorg/osgi/annotation/bundle/Requirements;
#31 = Utf8 Lorg/osgi/annotation/bundle/Requirement;
#32 = Utf8 namespace
#33 = Utf8 osgi.cdi.extension
#34 = Utf8 org.eclipse.microprofile.config
#35 = Utf8 effective
#36 = Utf8 active
#37 = Utf8 resolution
#38 = Class #47 // org/osgi/annotation/bundle/Requirement$Resolution
#39 = Utf8 Resolution
#40 = Utf8 InnerClasses
#41 = Utf8 Lorg/osgi/annotation/bundle/Requirement$Resolution;
#42 = Utf8 OPTIONAL
#43 = Utf8 org/eclipse/microprofile/config/inject/ConfigProperty
#44 = Utf8 java/lang/Object
#45 = Utf8 java/lang/annotation/Annotation
#46 = Class #48 // org/osgi/annotation/bundle/Requirement
#47 = Utf8 org/osgi/annotation/bundle/Requirement$Resolution
#48 = Utf8 org/osgi/annotation/bundle/Requirement
{
public static final java.lang.String UNCONFIGURED_VALUE;
descriptor: Ljava/lang/String;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: String org.eclipse.microprofile.config.configproperty.unconfigureddvalue
public abstract java.lang.String name();
descriptor: ()Ljava/lang/String;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
AnnotationDefault:
default_value: s#11
""
RuntimeVisibleAnnotations:
0: #13()
jakarta.enterprise.util.Nonbinding
public abstract java.lang.String defaultValue();
descriptor: ()Ljava/lang/String;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
AnnotationDefault:
default_value: s#15
"org.eclipse.microprofile.config.configproperty.unconfigureddvalue"
RuntimeVisibleAnnotations:
0: #13()
jakarta.enterprise.util.Nonbinding
}
SourceFile: "ConfigProperty.java"
RuntimeVisibleAnnotations:
0: #18()
jakarta.inject.Qualifier
1: #19(#20=e#21.#22)
java.lang.annotation.Retention(
value=Ljava/lang/annotation/RetentionPolicy;.RUNTIME
)
2: #23(#20=[e#24.#25,e#24.#26,e#24.#27,e#24.#28])
java.lang.annotation.Target(
value=[Ljava/lang/annotation/ElementType;.METHOD,Ljava/lang/annotation/ElementType;.FIELD,Ljava/lang/annotation/ElementType;.PARAMETER,Ljava/lang/annotation/ElementType;.TYPE]
)
RuntimeInvisibleAnnotations:
0: #30(#20=[@#31(#32=s#33,#8=s#34,#35=s#36),@#31(#32=s#33,#8=s#34,#37=e#41.#42)])
org.osgi.annotation.bundle.Requirements(
value=[@org.osgi.annotation.bundle.Requirement(
namespace="osgi.cdi.extension"
name="org.eclipse.microprofile.config"
effective="active"
),@org.osgi.annotation.bundle.Requirement(
namespace="osgi.cdi.extension"
name="org.eclipse.microprofile.config"
resolution=Lorg/osgi/annotation/bundle/Requirement$Resolution;.OPTIONAL
)]
)
InnerClasses:
public static final #39= #38 of #46; // Resolution=class org/osgi/annotation/bundle/Requirement$Resolution of class org/osgi/annotation/bundle/Requirement
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment