diff --git a/src/main/kotlin/com/aitrainer/api/controller/ExerciseTreeController.kt b/src/main/kotlin/com/aitrainer/api/controller/ExerciseTreeController.kt index 377beaf..3dc4d79 100644 --- a/src/main/kotlin/com/aitrainer/api/controller/ExerciseTreeController.kt +++ b/src/main/kotlin/com/aitrainer/api/controller/ExerciseTreeController.kt @@ -15,7 +15,7 @@ class ExerciseTreeController (private val exerciseTreeRepository: ExerciseTreeRe @GetMapping("/exercise_tree") fun getAllActiveMenu(): List { val list: List = exerciseTreeRepository.getActiveMenu() - logger.info(" -- Get All active Exercise Tree menu..") + logger.info(" -- Get All active Exercise Tree menu.. $list") return list } } \ No newline at end of file diff --git a/src/main/kotlin/com/aitrainer/api/controller/ExerciseTreeControllerAspect.kt b/src/main/kotlin/com/aitrainer/api/controller/ExerciseTreeControllerAspect.kt new file mode 100644 index 0000000..fa2ee4d --- /dev/null +++ b/src/main/kotlin/com/aitrainer/api/controller/ExerciseTreeControllerAspect.kt @@ -0,0 +1,33 @@ +package com.aitrainer.api.controller + +import com.aitrainer.api.ApiApplication +import com.aitrainer.api.repository.ConfigurationRepository +import org.aspectj.lang.annotation.Aspect +import org.aspectj.lang.annotation.Before +import org.aspectj.lang.annotation.Pointcut +import org.slf4j.LoggerFactory +import org.springframework.beans.factory.annotation.Autowired +import org.springframework.stereotype.Component + +@Suppress("unused") +@Aspect +@Component +class ExerciseTreeControllerAspect { + private val logger = LoggerFactory.getLogger(ApiApplication::class.simpleName) + + @Autowired + private lateinit var configurationRepository: ConfigurationRepository + @Autowired + private lateinit var properties: ApplicationProperties + + @Suppress("unused") + @Pointcut("execution(* com.aitrainer.api.controller.ExerciseTreeController.*())") + fun exerciseTreeControllerAspect() { + } + + @Before("exerciseTreeControllerAspect()") + fun loggingAop() { + Singleton.checkDBUpdate(configurationRepository, properties) + } + +} \ No newline at end of file diff --git a/src/main/kotlin/com/aitrainer/api/model/ExerciseTreeTranslation.kt b/src/main/kotlin/com/aitrainer/api/model/ExerciseTreeTranslation.kt index 7ba720a..2a9c613 100644 --- a/src/main/kotlin/com/aitrainer/api/model/ExerciseTreeTranslation.kt +++ b/src/main/kotlin/com/aitrainer/api/model/ExerciseTreeTranslation.kt @@ -10,10 +10,12 @@ data class ExerciseTreeTranslation ( val translationId: Long = 0, @get: NotBlank var languageCode: String?, - @get: NotBlank var name: String = "", + @get: NotBlank var name: String = "" + +) { @ManyToOne(fetch = FetchType.EAGER, optional = false) @JoinColumn(name = "treeId", nullable = false) val exerciseTree: ExerciseTree? = null -) +} diff --git a/src/test/kotlin/com/aitrainer/api/test/ExerciseTreeTest.kt b/src/test/kotlin/com/aitrainer/api/test/ExerciseTreeTest.kt index 3d690fd..7d34baf 100644 --- a/src/test/kotlin/com/aitrainer/api/test/ExerciseTreeTest.kt +++ b/src/test/kotlin/com/aitrainer/api/test/ExerciseTreeTest.kt @@ -20,6 +20,7 @@ class ExerciseTreeTest { fun testActiveExercises() { val exerciseTreeController = ExerciseTreeController(exerciseTreeRepository) val exerciseTree = exerciseTreeController.getAllActiveMenu() + logger.info("Tree $exerciseTree") val exerciseTreeItem = exerciseTree[0] assertEquals(exerciseTreeItem.name, "Cardio")