summaryrefslogtreecommitdiff
path: root/opendc-experiments
diff options
context:
space:
mode:
authormjkwiatkowski <mati.rewa@gmail.com>2026-02-21 18:01:20 +0100
committermjkwiatkowski <mati.rewa@gmail.com>2026-02-21 18:01:20 +0100
commitdaad473975cc3e6eba0536d5a8fe750cf8b2fa7d (patch)
treef4496fcef64999005d55b5276a7a621496a8f1ad /opendc-experiments
parentf5da60e4275ca1172128c3994298691e12d5e1f8 (diff)
feat: removed the Config classHEADmaster
Diffstat (limited to 'opendc-experiments')
-rw-r--r--opendc-experiments/opendc-experiments-base/src/main/kotlin/org/opendc/experiments/base/runner/ExperimentCli.kt38
-rw-r--r--opendc-experiments/opendc-experiments-base/src/main/kotlin/org/opendc/experiments/base/runner/ExperimentRunner.kt37
2 files changed, 14 insertions, 61 deletions
diff --git a/opendc-experiments/opendc-experiments-base/src/main/kotlin/org/opendc/experiments/base/runner/ExperimentCli.kt b/opendc-experiments/opendc-experiments-base/src/main/kotlin/org/opendc/experiments/base/runner/ExperimentCli.kt
index 78ce6158..f3e634e6 100644
--- a/opendc-experiments/opendc-experiments-base/src/main/kotlin/org/opendc/experiments/base/runner/ExperimentCli.kt
+++ b/opendc-experiments/opendc-experiments-base/src/main/kotlin/org/opendc/experiments/base/runner/ExperimentCli.kt
@@ -28,21 +28,15 @@ import com.github.ajalt.clikt.core.CliktCommand
import com.github.ajalt.clikt.parameters.options.defaultLazy
import com.github.ajalt.clikt.parameters.options.option
import com.github.ajalt.clikt.parameters.types.file
-import org.opendc.common.utils.Config
-import org.opendc.common.utils.ConfigReader
-import org.opendc.common.utils.PostgresqlDB
import org.opendc.experiments.base.experiment.getExperiment
import java.io.File
import java.io.IOException
-import java.net.InetAddress
-import java.net.ServerSocket
-import java.net.Socket
/**
* Main entrypoint of the application.
*/
public fun main(args: Array<String>) {
- if(args.size == 4) ExperimentCommand().main(args)
+ if(args.size == 2) ExperimentCommand().main(args)
else ExperimentListener().main(args)
}
@@ -51,55 +45,33 @@ public fun main(args: Array<String>) {
* @author Mateusz
*/
internal class ExperimentCommand : CliktCommand(name = "experiment") {
- private val configPath by option("--config-path", help = "path to config file")
- .file(canBeDir = false, canBeFile = true)
- .defaultLazy { File("resources/config.json") }
-
private val experimentPath by option("--experiment-path", help = "path to experiment file")
.file(canBeDir = false, canBeFile = true)
.defaultLazy { File("resources/experiment.json") }
override fun run() {
- val configReader = ConfigReader()
- val config = configReader.read(configPath)
- var clientSocket : Socket? = null
-
try {
- Config.setConfigSocket(clientSocket)
val experiment = getExperiment(experimentPath)
runExperiment(experiment)
} catch (e: IOException) {
println("${e.message}")
- } finally {
- clientSocket?.close()
}
}
}
/**
- * Creates a server socket and database connection from `config`.
- * @author Mateusz
+ * Parses CLI arguments.
+ *
+ * @author Mateusz Kwiatkowski
*/
internal class ExperimentListener: CliktCommand(name = "listener") {
- private val configPath by option("--config-path", help = "path to config file")
- .file(canBeDir = false, canBeFile = true)
- .defaultLazy { File("resources/config.json") }
-
override fun run() {
- val configReader = ConfigReader()
- var serverSocket: ServerSocket? = null
- val config = configReader.read(configPath)
try {
-
- val inetAddress = InetAddress.getByName(config.address)
- serverSocket = ServerSocket(config.port, config.backlog, inetAddress)
- runListener(serverSocket)
+ runListener()
} catch (e: IOException) {
println("${e.message}")
- } finally {
- serverSocket?.close()
}
}
} \ No newline at end of file
diff --git a/opendc-experiments/opendc-experiments-base/src/main/kotlin/org/opendc/experiments/base/runner/ExperimentRunner.kt b/opendc-experiments/opendc-experiments-base/src/main/kotlin/org/opendc/experiments/base/runner/ExperimentRunner.kt
index 3867a9f0..a777262f 100644
--- a/opendc-experiments/opendc-experiments-base/src/main/kotlin/org/opendc/experiments/base/runner/ExperimentRunner.kt
+++ b/opendc-experiments/opendc-experiments-base/src/main/kotlin/org/opendc/experiments/base/runner/ExperimentRunner.kt
@@ -24,12 +24,9 @@ package org.opendc.experiments.base.runner
import me.tongfei.progressbar.ProgressBarBuilder
import me.tongfei.progressbar.ProgressBarStyle
-import org.opendc.common.utils.Config
+import org.opendc.common.utils.JavalinRunner
import org.opendc.common.utils.PostgresqlDB
import org.opendc.experiments.base.experiment.Scenario
-import java.io.IOException
-import java.net.ServerSocket
-import java.net.Socket
/**
* Run scenario when no pool is available for parallel execution
@@ -65,29 +62,13 @@ public fun runExperiment(experiment: List<Scenario>) {
}
/**
- * @author Mateusz
- * Accepts a (single) connection and listens for requests.
- * @param socket The socket to listen to.
+ * Accepts a HTTP server and listens for requests.
+ *
+ * @author Mateusz Kwiatkowski
+ *
+ * @see <a href=https://ktor.io/docs>https://ktor.io/docs</a>
*/
-public fun runListener(socket: ServerSocket) {
- var client : Socket? = null
- val db = PostgresqlDB()
- try {
- client = socket.accept()
- Config.setConfigSocket(client)
- // val request = ByteArray(1024)
-
- while(true){
-/*
- val ret : Int? = Config.getConfigReader()?.read(request)
- if(ret == -1) break
- if(ret != null && ret > 0) runRequest(String(request, 0, ret))
-
- */ }
-
- } catch (e: IOException) {
- println("${e.message}")
- } finally {
- client?.close()
- }
+public fun runListener() {
+ PostgresqlDB()
+ JavalinRunner()
} \ No newline at end of file