diff --git a/theodolite/src/main/kotlin/rocks/theodolite/kubernetes/patcher/DataVolumeLoadGeneratorReplicaPatcher.kt b/theodolite/src/main/kotlin/rocks/theodolite/kubernetes/patcher/DataVolumeLoadGeneratorReplicaPatcher.kt
index 2979d06268d4b363ba2c4de35242bd45fa52f423..fce3de2b97e7f3fe23d8aae425af9843c650daa0 100644
--- a/theodolite/src/main/kotlin/rocks/theodolite/kubernetes/patcher/DataVolumeLoadGeneratorReplicaPatcher.kt
+++ b/theodolite/src/main/kotlin/rocks/theodolite/kubernetes/patcher/DataVolumeLoadGeneratorReplicaPatcher.kt
@@ -16,22 +16,22 @@ import io.fabric8.kubernetes.api.model.HasMetadata
  */
 class DataVolumeLoadGeneratorReplicaPatcher(
     private val maxVolume: Int,
-    private val container: String,
-    private val variableName: String
-) : Patcher {
+    val container: String,
+    val variableName: String
+) : AbstractPatcher() {
 
-    override fun patch(resources: List<HasMetadata>, value: String) : List<HasMetadata> {
-        return resources.flatMap { patchSingeResource(it, value)}
-    }
+    private val envVarPatcher = EnvVarPatcher(container, variableName)
+    private val replicaPatcher = ReplicaPatcher()
 
-    private fun patchSingeResource(k8sResource: HasMetadata, value: String): List<HasMetadata> {
+    override fun patchSingleResource(resource: HasMetadata, value: String): HasMetadata {
         // calculate number of load generator instances and load per instance
         val load = Integer.parseInt(value)
         val loadGenInstances = (load + maxVolume - 1) / maxVolume
         val loadPerInstance = load / loadGenInstances
 
         // Patch instance values and load value of generators
-        val resourceList = ReplicaPatcher().patch(listOf(k8sResource), loadGenInstances.toString())
-        return EnvVarPatcher(this.container, this.variableName).patch(resourceList, loadPerInstance.toString())
+        return this.envVarPatcher.patchSingleResource(
+            replicaPatcher.patchSingleResource(resource, loadGenInstances.toString()),
+            loadPerInstance.toString())
     }
 }
diff --git a/theodolite/src/main/kotlin/rocks/theodolite/kubernetes/patcher/ImagePatcher.kt b/theodolite/src/main/kotlin/rocks/theodolite/kubernetes/patcher/ImagePatcher.kt
index 7f54416501bc742499a958566a179b7fad320318..c847f99d26959c06f9828103679395de93f961a5 100644
--- a/theodolite/src/main/kotlin/rocks/theodolite/kubernetes/patcher/ImagePatcher.kt
+++ b/theodolite/src/main/kotlin/rocks/theodolite/kubernetes/patcher/ImagePatcher.kt
@@ -10,15 +10,7 @@ import io.fabric8.kubernetes.client.utils.Serialization
  *
  * @param container Container to be patched.
  */
-class ImagePatcher(
-    private val container: String) :
-    AbstractPatcher() {
-
-    override fun patch(resources: List<HasMetadata>, value: String) : List<HasMetadata> {
-        return resources
-            .map { Serialization.clone(it) }
-            .map { patchSingleResource(it, value as kotlin.String) }
-    }
+class ImagePatcher(private val container: String) : AbstractPatcher() {
 
     override fun patchSingleResource(resource: HasMetadata, value: String): HasMetadata {
         if (resource is Deployment) {
diff --git a/theodolite/src/main/kotlin/rocks/theodolite/kubernetes/patcher/NodeSelectorPatcher.kt b/theodolite/src/main/kotlin/rocks/theodolite/kubernetes/patcher/NodeSelectorPatcher.kt
index c3b5ba1a07afa41dd604f2335baf6b58e362f293..0ffda7d55a20fc5f71133af5cbdc27eee7779f9e 100644
--- a/theodolite/src/main/kotlin/rocks/theodolite/kubernetes/patcher/NodeSelectorPatcher.kt
+++ b/theodolite/src/main/kotlin/rocks/theodolite/kubernetes/patcher/NodeSelectorPatcher.kt
@@ -8,10 +8,7 @@ import io.fabric8.kubernetes.api.model.apps.Deployment
  *
  * @param variableName The `label-key` of the node for which the `label-value` is to be patched.
  */
-class NodeSelectorPatcher(
-    private val variableName: String) :
-    AbstractPatcher() {
-
+class NodeSelectorPatcher(private val variableName: String) : AbstractPatcher() {
 
     override fun patchSingleResource(resource: HasMetadata, value: String): HasMetadata {
         if (resource is Deployment) {
diff --git a/theodolite/src/main/kotlin/rocks/theodolite/kubernetes/patcher/PatchHandler.kt b/theodolite/src/main/kotlin/rocks/theodolite/kubernetes/patcher/PatchHandler.kt
index 92b1e52ba7492181b5f3b06080efe01aae6cf66b..9740952d8a7a4aa016ff3928f344098c65c85088 100644
--- a/theodolite/src/main/kotlin/rocks/theodolite/kubernetes/patcher/PatchHandler.kt
+++ b/theodolite/src/main/kotlin/rocks/theodolite/kubernetes/patcher/PatchHandler.kt
@@ -5,7 +5,7 @@ class PatchHandler {
     companion object {
         private fun getResourcesToPatch(resources: Map<String, List<HasMetadata>>, patcherDefinition: PatcherDefinition): List<HasMetadata> {
             return resources[patcherDefinition.resource]
-                ?: throw InvalidPatcherConfigurationException("Could not find resource ${patcherDefinition.resource}")
+                ?: throw InvalidPatcherConfigurationException("Could not find resource ${patcherDefinition.resource}.")
 
         }
         fun patchResource(
diff --git a/theodolite/src/main/kotlin/rocks/theodolite/kubernetes/patcher/SchedulerNamePatcher.kt b/theodolite/src/main/kotlin/rocks/theodolite/kubernetes/patcher/SchedulerNamePatcher.kt
index c5ac16cdfe25f6b2fd2e4d0a2fb27000f885ffe7..3c6f4be19b74647602a710589a7aea2f016a3d26 100644
--- a/theodolite/src/main/kotlin/rocks/theodolite/kubernetes/patcher/SchedulerNamePatcher.kt
+++ b/theodolite/src/main/kotlin/rocks/theodolite/kubernetes/patcher/SchedulerNamePatcher.kt
@@ -6,7 +6,6 @@ import io.fabric8.kubernetes.api.model.apps.Deployment
 /**
  * The Scheduler name [Patcher] make it possible to set the scheduler which should
  * be used to deploy the given deployment.
- * @param k8sResource Kubernetes resource to be patched.
  */
 class SchedulerNamePatcher : AbstractPatcher() {
 
diff --git a/theodolite/src/main/kotlin/rocks/theodolite/kubernetes/patcher/ServiceSelectorPatcher.kt b/theodolite/src/main/kotlin/rocks/theodolite/kubernetes/patcher/ServiceSelectorPatcher.kt
index b38ae4108748f85e7ac60f3ee3aa8c5d28281432..58ccdea2480ada723aefdd8f10efb06c3c91db91 100644
--- a/theodolite/src/main/kotlin/rocks/theodolite/kubernetes/patcher/ServiceSelectorPatcher.kt
+++ b/theodolite/src/main/kotlin/rocks/theodolite/kubernetes/patcher/ServiceSelectorPatcher.kt
@@ -3,9 +3,7 @@ package rocks.theodolite.kubernetes.patcher
 import io.fabric8.kubernetes.api.model.HasMetadata
 import io.fabric8.kubernetes.api.model.Service
 
-class ServiceSelectorPatcher(
-    private var variableName: String
-    ) : AbstractPatcher() {
+class ServiceSelectorPatcher(private var variableName: String) : AbstractPatcher() {
 
     override fun patchSingleResource(resource: HasMetadata, value: String): HasMetadata {
         if (resource is Service) {
diff --git a/theodolite/src/main/kotlin/rocks/theodolite/kubernetes/patcher/TemplateLabelPatcher.kt b/theodolite/src/main/kotlin/rocks/theodolite/kubernetes/patcher/TemplateLabelPatcher.kt
index e1c1bc3a15b8a9035bcaaa513f040aff9982e7ab..04cbb8e2b5177424f91ddd530b8e8b12d49210f9 100644
--- a/theodolite/src/main/kotlin/rocks/theodolite/kubernetes/patcher/TemplateLabelPatcher.kt
+++ b/theodolite/src/main/kotlin/rocks/theodolite/kubernetes/patcher/TemplateLabelPatcher.kt
@@ -9,9 +9,7 @@ import io.fabric8.kubernetes.api.model.apps.StatefulSet
  *
  * @property variableName The label which should be set
  */
-class TemplateLabelPatcher(
-    val variableName: String) :
-    AbstractPatcher() {
+class TemplateLabelPatcher(val variableName: String) : AbstractPatcher() {
 
     override fun patchSingleResource(resource: HasMetadata, value: String): HasMetadata {
         when (resource) {
diff --git a/theodolite/src/main/kotlin/rocks/theodolite/kubernetes/patcher/VolumesConfigMapPatcher.kt b/theodolite/src/main/kotlin/rocks/theodolite/kubernetes/patcher/VolumesConfigMapPatcher.kt
index 54a459a19b35e74839de647761e8ac22f839ca2d..5dfa2cc176eda9c365a3b83aae8ead310ebd65ef 100644
--- a/theodolite/src/main/kotlin/rocks/theodolite/kubernetes/patcher/VolumesConfigMapPatcher.kt
+++ b/theodolite/src/main/kotlin/rocks/theodolite/kubernetes/patcher/VolumesConfigMapPatcher.kt
@@ -4,8 +4,7 @@ import io.fabric8.kubernetes.api.model.HasMetadata
 import io.fabric8.kubernetes.api.model.apps.Deployment
 import io.fabric8.kubernetes.api.model.apps.StatefulSet
 
-class VolumesConfigMapPatcher(private var volumeName: String
-) : AbstractPatcher() {
+class VolumesConfigMapPatcher(private var volumeName: String) : AbstractPatcher() {
 
     override fun patchSingleResource(resource: HasMetadata, value: String): HasMetadata {
         if (resource is Deployment) {