From 4fea93cdf9681322bd693a6d0178a147120e54ae Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bart=C5=82omiej=20Przemys=C5=82aw=20Pluta?= Date: Mon, 9 Mar 2020 17:54:54 +0100 Subject: [PATCH] Create stubbed ModuleProvider and add module loading tools to Environment class --- .../kotlin/io/smnp/api/environment/Environment.kt | 15 +++++++++++++++ .../io/smnp/module/loader/ModuleProvider.kt | 10 ++++++++++ 2 files changed, 25 insertions(+) create mode 100644 src/main/kotlin/io/smnp/module/loader/ModuleProvider.kt diff --git a/src/main/kotlin/io/smnp/api/environment/Environment.kt b/src/main/kotlin/io/smnp/api/environment/Environment.kt index 6fd6be6..0466c28 100644 --- a/src/main/kotlin/io/smnp/api/environment/Environment.kt +++ b/src/main/kotlin/io/smnp/api/environment/Environment.kt @@ -1,4 +1,19 @@ package io.smnp.api.environment +import io.smnp.api.module.Module +import io.smnp.module.loader.ModuleProvider + class Environment { + private val rootModule = Module("") + private val loadedModules = mutableListOf() + + fun loadModule(path: String) { + val module = ModuleProvider.getModule(path) + rootModule.addSubmodule(module) + loadedModules.add(path) + } + + fun printModules(printContent: Boolean) { + rootModule.pretty(printContent) + } } \ No newline at end of file diff --git a/src/main/kotlin/io/smnp/module/loader/ModuleProvider.kt b/src/main/kotlin/io/smnp/module/loader/ModuleProvider.kt new file mode 100644 index 0000000..c0cb467 --- /dev/null +++ b/src/main/kotlin/io/smnp/module/loader/ModuleProvider.kt @@ -0,0 +1,10 @@ +package io.smnp.module.loader + +import io.smnp.api.module.Module + +object ModuleProvider { + fun getModule(path: String): Module { + // TODO: It's only stub for real module provider + return Module.create(path) + } +} \ No newline at end of file