diff --git a/benchmarks/workload-generator-commons/src/main/java/theodolite/commons/workloadgeneration/functions/MessageGenerator.java b/benchmarks/workload-generator-commons/src/main/java/theodolite/commons/workloadgeneration/functions/MessageGenerator.java
index 11034c2d527defcfb8ad631f3fc62d332da3e2ce..f59423b950a0156b557427b2ddcea070287ad30c 100644
--- a/benchmarks/workload-generator-commons/src/main/java/theodolite/commons/workloadgeneration/functions/MessageGenerator.java
+++ b/benchmarks/workload-generator-commons/src/main/java/theodolite/commons/workloadgeneration/functions/MessageGenerator.java
@@ -1,5 +1,9 @@
 package theodolite.commons.workloadgeneration.functions;
 
+/**
+ * Interface representing a message generator, which sends messages for given keys to some
+ * destination.
+ */
 @FunctionalInterface
 public interface MessageGenerator {
 
diff --git a/benchmarks/workload-generator-commons/src/main/java/theodolite/commons/workloadgeneration/functions/RecordGenerator.java b/benchmarks/workload-generator-commons/src/main/java/theodolite/commons/workloadgeneration/functions/RecordGenerator.java
index 1075d089f34edaeccdd2e4ac210b00377bd63412..4a94d8c3bacedd754b7f2e5d68c378cf7193fabe 100644
--- a/benchmarks/workload-generator-commons/src/main/java/theodolite/commons/workloadgeneration/functions/RecordGenerator.java
+++ b/benchmarks/workload-generator-commons/src/main/java/theodolite/commons/workloadgeneration/functions/RecordGenerator.java
@@ -1,8 +1,8 @@
 package theodolite.commons.workloadgeneration.functions;
 
 /**
- * This interface describes a function that takes meta information from a string (e.g. an ID) and
- * produces an object of type T.
+ * This interface describes a function that takes meta information from a string key and produces an
+ * object of type T.
  *
  * @param <T> the type of the objects that will be generated by the function.
  */
diff --git a/benchmarks/workload-generator-commons/src/main/java/theodolite/commons/workloadgeneration/functions/TitanMessageGeneratorFactory.java b/benchmarks/workload-generator-commons/src/main/java/theodolite/commons/workloadgeneration/functions/TitanMessageGeneratorFactory.java
index 3fa9dba7c0432d502ef7a53d7a6eaa90e8e556ea..2fd784e80aed44c9fb6c6e8bcf5d27b04a8d5573 100644
--- a/benchmarks/workload-generator-commons/src/main/java/theodolite/commons/workloadgeneration/functions/TitanMessageGeneratorFactory.java
+++ b/benchmarks/workload-generator-commons/src/main/java/theodolite/commons/workloadgeneration/functions/TitanMessageGeneratorFactory.java
@@ -4,6 +4,10 @@ import java.util.Properties;
 import theodolite.commons.workloadgeneration.communication.kafka.KafkaRecordSender;
 import titan.ccp.model.records.ActivePowerRecord;
 
+/**
+ * A factory for creating {@link MessageGenerator}s that creates Titan {@link ActivePowerRecord}s
+ * and sends them via Kafka.
+ */
 public final class TitanMessageGeneratorFactory {
 
   private final RecordSender<ActivePowerRecord> recordSender;
@@ -12,12 +16,19 @@ public final class TitanMessageGeneratorFactory {
     this.recordSender = recordSender;
   }
 
+  /**
+   * Create a {@link MessageGenerator} that generates Titan {@link ActivePowerRecord}s with a
+   * constant value.
+   */
   public MessageGenerator forConstantValue(final double value) {
     return MessageGenerator.from(
         sensor -> new ActivePowerRecord(sensor, System.currentTimeMillis(), value),
         this.recordSender);
   }
 
+  /**
+   * Create a new TitanMessageGeneratorFactory for the given Kafka configuration.
+   */
   public static TitanMessageGeneratorFactory withKafkaConfig(
       final String bootstrapServers,
       final String topic,
@@ -25,6 +36,9 @@ public final class TitanMessageGeneratorFactory {
     return withKafkaConfig(bootstrapServers, topic, schemaRegistryUrl, new Properties());
   }
 
+  /**
+   * Create a new TitanMessageGeneratorFactory for the given Kafka configuration.
+   */
   public static TitanMessageGeneratorFactory withKafkaConfig(
       final String bootstrapServers,
       final String topic,