CORDA-539 - Review comments

This commit is contained in:
Katelyn Baker 2017-09-13 10:48:13 +01:00
parent ef409c4d65
commit a93bd94c44
3 changed files with 8 additions and 6 deletions

View File

@ -30,10 +30,10 @@ class CarpenterClassLoader(parentClassLoader: ClassLoader = Thread.currentThread
*/
private const val TARGET_VERSION = V1_8
private const val jlEnum = "java/lang/Enum"
private const val jlString = "java/lang/String"
private const val jlObject = "java/lang/Object"
private const val jlClass = "java/lang/Class"
private val jlEnum get() = Type.getInternalName(Enum::class.java)
private val jlString get() = Type.getInternalName(String::class.java)
private val jlObject get() = Type.getInternalName(Object::class.java)
private val jlClass get() = Type.getInternalName(Class::class.java)
/**
* A class carpenter generates JVM bytecodes for a class given a schema and then loads it into a sub-classloader.
@ -131,6 +131,8 @@ class ClassCarpenter(cl: ClassLoader = Thread.currentThread().contextClassLoader
cw.apply {
visit(TARGET_VERSION, ACC_PUBLIC + ACC_FINAL + ACC_SUPER + ACC_ENUM, schema.jvmName,
"L$jlEnum<L${schema.jvmName};>;", jlEnum, null)
visitAnnotation(Type.getDescriptor(CordaSerializable::class.java), true).visitEnd()
generateFields(schema)
generateStaticEnumConstructor(schema)
generateEnumConstructor()

View File

@ -93,7 +93,7 @@ class EnumSchema(
}
/**
* Factory object used by the serialiser when build [Schema]s based
* Factory object used by the serialiser when building [Schema]s based
* on an AMQP schema
*/
object CarpenterSchemaFactory {

View File

@ -12,7 +12,7 @@ class EnumClassTests : AmqpCarpenterBase() {
val schema = EnumSchema("gen.enum", enumConstants)
cc.build(schema)
assertTrue(cc.build(schema).isEnum)
}
@Test