From f84f1799457bd7b1637cf1af6a26e9ae956fb75e Mon Sep 17 00:00:00 2001 From: Federico Tomassetti Date: Thu, 3 Aug 2023 14:46:07 +0200 Subject: [PATCH] formatting --- .../strumenta/kolasu/lionweb/ASTGenerator.kt | 16 +++++++++------ .../LionWebLanguageImporterExporter.kt | 6 +++--- .../LionWebModelImporterAndExporter.kt | 20 +++++++++---------- .../KolasuLanguageAssociatedToLionWebTest.kt | 10 +++++----- 4 files changed, 28 insertions(+), 24 deletions(-) diff --git a/lionweb-gen/src/main/kotlin/com/strumenta/kolasu/lionweb/ASTGenerator.kt b/lionweb-gen/src/main/kotlin/com/strumenta/kolasu/lionweb/ASTGenerator.kt index 1896269fe..d1a634d23 100644 --- a/lionweb-gen/src/main/kotlin/com/strumenta/kolasu/lionweb/ASTGenerator.kt +++ b/lionweb-gen/src/main/kotlin/com/strumenta/kolasu/lionweb/ASTGenerator.kt @@ -94,9 +94,11 @@ class ASTGenerator(val packageName: String, val language: Language) { when (element) { is Concept -> { val typeSpec = TypeSpec.classBuilder(element.name!!) - typeSpec.addAnnotation(AnnotationSpec.builder(LionWebAssociation::class.java) - .addMember("key = \"${element.key}\"") - .build()) + typeSpec.addAnnotation( + AnnotationSpec.builder(LionWebAssociation::class.java) + .addMember("key = \"${element.key}\"") + .build() + ) val fqName = "$packageName.${element.name!!}" if (fqName in existingKotlinClasses) { println(" Skipping ${element.name} as a Kotlin class with that name already exist") @@ -136,9 +138,11 @@ class ASTGenerator(val packageName: String, val language: Language) { } is Enumeration -> { val typeSpec = TypeSpec.enumBuilder(element.name!!) - typeSpec.addAnnotation(AnnotationSpec.builder(LionWebAssociation::class.java) - .addMember("key = \"${element.key}\"") - .build()) + typeSpec.addAnnotation( + AnnotationSpec.builder(LionWebAssociation::class.java) + .addMember("key = \"${element.key}\"") + .build() + ) element.literals.forEach { typeSpec.addEnumConstant(it.name!!) } diff --git a/lionweb/src/main/kotlin/com/strumenta/kolasu/lionweb/LionWebLanguageImporterExporter.kt b/lionweb/src/main/kotlin/com/strumenta/kolasu/lionweb/LionWebLanguageImporterExporter.kt index 461fb9c38..8043c3d4e 100644 --- a/lionweb/src/main/kotlin/com/strumenta/kolasu/lionweb/LionWebLanguageImporterExporter.kt +++ b/lionweb/src/main/kotlin/com/strumenta/kolasu/lionweb/LionWebLanguageImporterExporter.kt @@ -149,7 +149,7 @@ class LionWebLanguageImporterExporter { Boolean::class.createType() -> LionCoreBuiltins.getBoolean() else -> { val kClass = kType.classifier as KClass<*> - val isEnum = kClass.supertypes.any { it.classifier == Enum::class } + val isEnum = kClass.supertypes.any { it.classifier == Enum::class } if (isEnum) { val enumeration = astToLWEnumeration[kClass] if (enumeration == null) { @@ -190,7 +190,7 @@ class LionWebLanguageImporterExporter { fun importLanguages(lwLanguage: Language, kolasuLanguage: KolasuLanguage) { this.kLanguageToLWLanguage[kolasuLanguage] = lwLanguage kolasuLanguage.astClasses.forEach { astClass -> - var classifier : Classifier<*>? = null + var classifier: Classifier<*>? = null val annotation = astClass.annotations.filterIsInstance(LionWebAssociation::class.java).firstOrNull() if (annotation != null) { classifier = lwLanguage.elements.filterIsInstance(Classifier::class.java).find { @@ -202,7 +202,7 @@ class LionWebLanguageImporterExporter { } } kolasuLanguage.enumClasses.forEach { enumClass -> - var enumeration : Enumeration? = null + var enumeration: Enumeration? = null val annotation = enumClass.annotations.filterIsInstance(LionWebAssociation::class.java).firstOrNull() if (annotation != null) { enumeration = lwLanguage.elements.filterIsInstance(Enumeration::class.java).find { diff --git a/lionweb/src/main/kotlin/com/strumenta/kolasu/lionweb/LionWebModelImporterAndExporter.kt b/lionweb/src/main/kotlin/com/strumenta/kolasu/lionweb/LionWebModelImporterAndExporter.kt index 34b8eae77..ce25724b2 100644 --- a/lionweb/src/main/kotlin/com/strumenta/kolasu/lionweb/LionWebModelImporterAndExporter.kt +++ b/lionweb/src/main/kotlin/com/strumenta/kolasu/lionweb/LionWebModelImporterAndExporter.kt @@ -21,17 +21,14 @@ import io.lionweb.lioncore.java.model.impl.DynamicNode import io.lionweb.lioncore.java.serialization.JsonSerialization import java.lang.ClassCastException import java.lang.IllegalArgumentException -import java.lang.reflect.Modifier import java.util.IdentityHashMap import kotlin.IllegalStateException import kotlin.reflect.KClass import kotlin.reflect.KFunction import kotlin.reflect.KParameter -import kotlin.reflect.KProperty import kotlin.reflect.KProperty1 import kotlin.reflect.full.memberProperties import kotlin.reflect.full.primaryConstructor -import kotlin.reflect.full.staticProperties private val com.strumenta.kolasu.model.Node.positionalID: String get() { @@ -69,7 +66,7 @@ class LionWebModelImporterAndExporter { return languageExporter.correspondingLanguage(kolasuLanguage) } - fun recordLanguage(kolasuLanguage: KolasuLanguage) : Language { + fun recordLanguage(kolasuLanguage: KolasuLanguage): Language { return languageExporter.export(kolasuLanguage) } @@ -165,16 +162,19 @@ class LionWebModelImporterAndExporter { val propValue = data.getPropertyValue(feature) if (propValue is DynamicEnumerationValue) { val enumeration = propValue.enumeration - val kClass : KClass>? = languageExporter.getEnumerationsToKolasuClassesMapping()[enumeration] as? KClass> + val kClass: KClass>? = languageExporter + .getEnumerationsToKolasuClassesMapping()[enumeration] as? KClass> if (kClass == null) { throw IllegalStateException("Cannot find Kolasu class for Enumeration $enumeration") } - val entries = kClass.java.methods.find{it.name == "getEntries"}!!.invoke(null) as List - //val entriesProp = kClass.memberProperties.find { it.name == "entries" } - //val fields = kClass.java.declaredFields.filter { Modifier.isStatic(it.modifiers) }.map { it.get(null) } + val entries = kClass.java.methods.find { + it.name == "getEntries" + }!!.invoke(null) as List + // val entriesProp = kClass.memberProperties.find { it.name == "entries" } + // val fields = kClass.java.declaredFields.filter { Modifier.isStatic(it.modifiers) }.map { it.get(null) } val nameProp = kClass.memberProperties.find { it.name == "name" }!! as KProperty1 val namesToFields = entries.associate { nameProp.invoke(it) as String to it } - //val entries = kClass.staticProperties.first().get() + // val entries = kClass.staticProperties.first().get() val nameToSearch = propValue.serializedValue.split("/").last() params[param] = namesToFields[nameToSearch]!! } else { @@ -228,7 +228,7 @@ class LionWebModelImporterAndExporter { } try { return constructor.callBy(params) as com.strumenta.kolasu.model.Node - } catch (e: ClassCastException){ + } catch (e: ClassCastException) { throw RuntimeException("Issue instantiating using constructor $constructor with params $params", e) } } diff --git a/lionweb/src/test/kotlin/com/strumenta/kolasu/lionweb/KolasuLanguageAssociatedToLionWebTest.kt b/lionweb/src/test/kotlin/com/strumenta/kolasu/lionweb/KolasuLanguageAssociatedToLionWebTest.kt index 0b5741d94..82a0896ed 100644 --- a/lionweb/src/test/kotlin/com/strumenta/kolasu/lionweb/KolasuLanguageAssociatedToLionWebTest.kt +++ b/lionweb/src/test/kotlin/com/strumenta/kolasu/lionweb/KolasuLanguageAssociatedToLionWebTest.kt @@ -7,7 +7,6 @@ import com.strumenta.kolasu.model.ReferenceByName import io.lionweb.lioncore.java.language.Concept import io.lionweb.lioncore.java.language.Enumeration import io.lionweb.lioncore.java.language.Language -import io.lionweb.lioncore.java.utils.LanguageValidator import kotlin.test.Test import kotlin.test.assertEquals import kotlin.test.assertTrue @@ -31,9 +30,11 @@ class KolasuLanguageAssociatedToLionWebTest { @Test fun enumsAreRecorded() { val lwImpExp = LionWebModelImporterAndExporter() - val lwLanguage = lwImpExp.recordLanguage(KolasuLanguage("pricing").apply { - addClass(LWRoot::class) - }) + val lwLanguage = lwImpExp.recordLanguage( + KolasuLanguage("pricing").apply { + addClass(LWRoot::class) + } + ) assertEquals(4, lwLanguage.elements.size) val myEnum = lwLanguage.getElementByName("MyEnum") assertTrue { myEnum is Enumeration } @@ -67,5 +68,4 @@ class KolasuLanguageAssociatedToLionWebTest { assertEquals(LWNodeA::class, lie.matchingKClass(lwNodeA)) assertEquals(LWNodeB::class, lie.matchingKClass(lwNodeB)) } - }