From 814ec2a0ca428e584950269bac6404a4b90b3eb7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=B6ren=20Henning?= <soeren.henning@email.uni-kiel.de> Date: Wed, 24 Feb 2021 12:22:47 +0100 Subject: [PATCH] Add JavaDoc --- .../workloadgeneration/LoadGenerator.java | 17 ++++++++++++----- .../workloadgeneration/LoadGeneratorConfig.java | 10 +++------- .../LoadGeneratorExecution.java | 11 +++++++++++ 3 files changed, 26 insertions(+), 12 deletions(-) diff --git a/benchmarks/workload-generator-commons/src/main/java/theodolite/commons/workloadgeneration/LoadGenerator.java b/benchmarks/workload-generator-commons/src/main/java/theodolite/commons/workloadgeneration/LoadGenerator.java index fdbd31ad4..2e5fc627e 100644 --- a/benchmarks/workload-generator-commons/src/main/java/theodolite/commons/workloadgeneration/LoadGenerator.java +++ b/benchmarks/workload-generator-commons/src/main/java/theodolite/commons/workloadgeneration/LoadGenerator.java @@ -5,6 +5,9 @@ import java.util.Objects; import java.util.Properties; import org.apache.kafka.clients.producer.ProducerConfig; +/** + * A Theodolite load generator. + */ public final class LoadGenerator { private static final String SENSOR_PREFIX_DEFAULT = "s_"; @@ -49,6 +52,9 @@ public final class LoadGenerator { return this; } + /** + * Run the constructed load generator until cancellation. + */ public void run() { Objects.requireNonNull(this.clusterConfig, "No cluster config set."); Objects.requireNonNull(this.generatorConfig, "No generator config set."); @@ -64,6 +70,9 @@ public final class LoadGenerator { runner.runBlocking(); } + /** + * Create a basic {@link LoadGenerator} from its default values. + */ public static LoadGenerator fromDefaults() { return new LoadGenerator() .setClusterConfig(new ClusterConfig()) @@ -79,6 +88,9 @@ public final class LoadGenerator { .forConstantValue(VALUE_DEFAULT))); } + /** + * Create a basic {@link LoadGenerator} from environment variables. + */ public static LoadGenerator fromEnvironment() { final String bootstrapServer = Objects.requireNonNullElse( System.getenv(ConfigurationKeys.BOOTSTRAP_SERVER), @@ -137,9 +149,4 @@ public final class LoadGenerator { .forConstantValue(value))); } - public static void main(final String[] args) { - LoadGenerator.fromEnvironment() - .run(); - } - } diff --git a/benchmarks/workload-generator-commons/src/main/java/theodolite/commons/workloadgeneration/LoadGeneratorConfig.java b/benchmarks/workload-generator-commons/src/main/java/theodolite/commons/workloadgeneration/LoadGeneratorConfig.java index f8a9647a6..2e907d8e9 100644 --- a/benchmarks/workload-generator-commons/src/main/java/theodolite/commons/workloadgeneration/LoadGeneratorConfig.java +++ b/benchmarks/workload-generator-commons/src/main/java/theodolite/commons/workloadgeneration/LoadGeneratorConfig.java @@ -1,12 +1,10 @@ package theodolite.commons.workloadgeneration; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - +/** + * Configuration of a load generator. + */ public class LoadGeneratorConfig { - private static final Logger LOGGER = LoggerFactory.getLogger(LoadGeneratorConfig.class); - private final MessageGenerator messageGenerator; private BeforeAction beforeAction = BeforeAction.doNothing(); private int threads = 1; @@ -17,10 +15,8 @@ public class LoadGeneratorConfig { public LoadGeneratorConfig( final MessageGenerator messageGenerator, - final BeforeAction beforeAction, final int threads) { this.messageGenerator = messageGenerator; - this.beforeAction = beforeAction; this.threads = threads; } diff --git a/benchmarks/workload-generator-commons/src/main/java/theodolite/commons/workloadgeneration/LoadGeneratorExecution.java b/benchmarks/workload-generator-commons/src/main/java/theodolite/commons/workloadgeneration/LoadGeneratorExecution.java index 184bf686b..3934c3d34 100644 --- a/benchmarks/workload-generator-commons/src/main/java/theodolite/commons/workloadgeneration/LoadGeneratorExecution.java +++ b/benchmarks/workload-generator-commons/src/main/java/theodolite/commons/workloadgeneration/LoadGeneratorExecution.java @@ -7,6 +7,10 @@ import java.util.concurrent.TimeUnit; import org.slf4j.Logger; import org.slf4j.LoggerFactory; +/** + * A {@link LoadGeneratorExecution} represents the execution of load generator, i.e., it can be + * started and stopped. + */ public class LoadGeneratorExecution { private static final Logger LOGGER = LoggerFactory.getLogger(LoadGeneratorExecution.class); @@ -16,6 +20,10 @@ public class LoadGeneratorExecution { private final MessageGenerator messageGenerator; private final ScheduledExecutorService executor; + /** + * Create a new {@link LoadGeneratorExecution} for a given {@link WorkloadDefinition} and a + * {@link MessageGenerator}. Load is generated by the given number of threads. + */ public LoadGeneratorExecution( final WorkloadDefinition workloadDefinition, final MessageGenerator messageGenerator, @@ -25,6 +33,9 @@ public class LoadGeneratorExecution { this.executor = Executors.newScheduledThreadPool(threads); } + /** + * Start the load generation and run it until it is stopped. + */ public void start() { LOGGER.info("Beginning of Experiment..."); LOGGER.info("Generating records for {} keys.", -- GitLab