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