diff --git a/src/main/java/org/hisp/dhis/BaseDhis2.java b/src/main/java/org/hisp/dhis/BaseDhis2.java
index 7b76edc6..d02a657c 100644
--- a/src/main/java/org/hisp/dhis/BaseDhis2.java
+++ b/src/main/java/org/hisp/dhis/BaseDhis2.java
@@ -1160,7 +1160,7 @@ private void handleErrors(HttpResponse response, String url) {
*
409 Conflict
*
*
- * @param response the {@link CloseableHttpResponse}.
+ * @param response the {@link ClassicHttpResponse}.
* @param url the request URL.
* @throws Dhis2ClientException in the case of error status codes.
*/
diff --git a/src/main/java/org/hisp/dhis/util/CodecUtils.java b/src/main/java/org/hisp/dhis/util/CodecUtils.java
index 412b7bdb..3b834e05 100644
--- a/src/main/java/org/hisp/dhis/util/CodecUtils.java
+++ b/src/main/java/org/hisp/dhis/util/CodecUtils.java
@@ -35,7 +35,7 @@
import org.apache.commons.codec.digest.DigestUtils;
@NoArgsConstructor(access = AccessLevel.PRIVATE)
-public class CodecUtils {
+public final class CodecUtils {
/**
* Generates an MD5 hash of the given input string.
*
diff --git a/src/main/java/org/hisp/dhis/util/CollectionUtils.java b/src/main/java/org/hisp/dhis/util/CollectionUtils.java
index 876a92ca..37421d70 100644
--- a/src/main/java/org/hisp/dhis/util/CollectionUtils.java
+++ b/src/main/java/org/hisp/dhis/util/CollectionUtils.java
@@ -47,7 +47,7 @@
/** Utilities for collections. */
@NoArgsConstructor(access = AccessLevel.PRIVATE)
-public class CollectionUtils {
+public final class CollectionUtils {
/**
* Returns an immutable set containing the given items. Accepts null items.
*
diff --git a/src/main/java/org/hisp/dhis/util/ConfigUtils.java b/src/main/java/org/hisp/dhis/util/ConfigUtils.java
index f6fbb5aa..3bdd9217 100644
--- a/src/main/java/org/hisp/dhis/util/ConfigUtils.java
+++ b/src/main/java/org/hisp/dhis/util/ConfigUtils.java
@@ -40,7 +40,7 @@
/** Utilities for configuration. */
@NoArgsConstructor(access = AccessLevel.PRIVATE)
-public class ConfigUtils {
+public final class ConfigUtils {
private static final char VALUE_SEPARATOR = ',';
private static final String VALUE_ENABLED = "on";
diff --git a/src/main/java/org/hisp/dhis/util/DateTimeUtils.java b/src/main/java/org/hisp/dhis/util/DateTimeUtils.java
index cc76b020..72f56672 100644
--- a/src/main/java/org/hisp/dhis/util/DateTimeUtils.java
+++ b/src/main/java/org/hisp/dhis/util/DateTimeUtils.java
@@ -47,7 +47,7 @@
/** Utilities for date and time. */
@Slf4j
@NoArgsConstructor(access = AccessLevel.PRIVATE)
-public class DateTimeUtils {
+public final class DateTimeUtils {
/** Default date format. */
public static final String DATE_FORMAT = "yyyy-MM-dd";
diff --git a/src/main/java/org/hisp/dhis/util/GeoUtils.java b/src/main/java/org/hisp/dhis/util/GeoUtils.java
index 4d4b22fa..8473c97b 100644
--- a/src/main/java/org/hisp/dhis/util/GeoUtils.java
+++ b/src/main/java/org/hisp/dhis/util/GeoUtils.java
@@ -35,7 +35,7 @@
/** Utilities for geospatial objects. */
@NoArgsConstructor(access = AccessLevel.PRIVATE)
-public class GeoUtils {
+public final class GeoUtils {
private static final GeometryFactory GEO_FACTORY = new GeometryFactory();
/**
diff --git a/src/main/java/org/hisp/dhis/util/HttpUtils.java b/src/main/java/org/hisp/dhis/util/HttpUtils.java
index afc42583..deda38ec 100644
--- a/src/main/java/org/hisp/dhis/util/HttpUtils.java
+++ b/src/main/java/org/hisp/dhis/util/HttpUtils.java
@@ -44,7 +44,7 @@
/** Utilities for HTTP communication. */
@NoArgsConstructor(access = AccessLevel.PRIVATE)
-public class HttpUtils {
+public final class HttpUtils {
/** Pattern for matching a DHIS2 access token as part of a HTTP header value. */
public static final Pattern PATTERN_ACCESS_TOKEN = Pattern.compile("^ApiToken\\s+(.+)$");
diff --git a/src/main/java/org/hisp/dhis/util/IdentifiableObjectUtils.java b/src/main/java/org/hisp/dhis/util/IdentifiableObjectUtils.java
index 2bb515dc..331b9738 100644
--- a/src/main/java/org/hisp/dhis/util/IdentifiableObjectUtils.java
+++ b/src/main/java/org/hisp/dhis/util/IdentifiableObjectUtils.java
@@ -39,7 +39,7 @@
/** Utilities for {@link IdentifiableObject}. */
@NoArgsConstructor(access = AccessLevel.PRIVATE)
-public class IdentifiableObjectUtils {
+public final class IdentifiableObjectUtils {
/**
* Converts the given collection of identifiable objects to a new list of object identifiers.
*
diff --git a/src/main/java/org/hisp/dhis/util/JacksonUtils.java b/src/main/java/org/hisp/dhis/util/JacksonUtils.java
index 5b235fad..1d1c14aa 100644
--- a/src/main/java/org/hisp/dhis/util/JacksonUtils.java
+++ b/src/main/java/org/hisp/dhis/util/JacksonUtils.java
@@ -51,7 +51,7 @@
/** Utilities for JSON parsing and serialization. */
@NoArgsConstructor(access = AccessLevel.PRIVATE)
-public class JacksonUtils {
+public final class JacksonUtils {
/** Static JSON mapper. */
private static final JsonMapper JSON_MAPPER;
diff --git a/src/main/java/org/hisp/dhis/util/JacksonXmlUtils.java b/src/main/java/org/hisp/dhis/util/JacksonXmlUtils.java
index b1d5a774..14a33e02 100644
--- a/src/main/java/org/hisp/dhis/util/JacksonXmlUtils.java
+++ b/src/main/java/org/hisp/dhis/util/JacksonXmlUtils.java
@@ -47,7 +47,7 @@
/** Utilities for XML parsing and serialization. */
@Slf4j
@NoArgsConstructor(access = AccessLevel.PRIVATE)
-public class JacksonXmlUtils {
+public final class JacksonXmlUtils {
/** Default date format. */
private static final String DATE_FORMAT = "yyyy-MM-dd";
diff --git a/src/main/java/org/hisp/dhis/util/JacksonYamlUtils.java b/src/main/java/org/hisp/dhis/util/JacksonYamlUtils.java
index db069df7..777030f7 100644
--- a/src/main/java/org/hisp/dhis/util/JacksonYamlUtils.java
+++ b/src/main/java/org/hisp/dhis/util/JacksonYamlUtils.java
@@ -37,7 +37,7 @@
@Slf4j
@NoArgsConstructor(access = AccessLevel.PRIVATE)
-public class JacksonYamlUtils {
+public final class JacksonYamlUtils {
private static final YAMLMapper YAML_MAPPER;
static {
diff --git a/src/main/java/org/hisp/dhis/util/MetadataItemUtils.java b/src/main/java/org/hisp/dhis/util/MetadataItemUtils.java
index 55a5b466..8950e57c 100644
--- a/src/main/java/org/hisp/dhis/util/MetadataItemUtils.java
+++ b/src/main/java/org/hisp/dhis/util/MetadataItemUtils.java
@@ -32,7 +32,7 @@
import java.util.Objects;
import org.hisp.dhis.model.analytics.MetaDataItem;
-public class MetadataItemUtils {
+public final class MetadataItemUtils {
/**
* Converts the given collection of metaedata items a new list of names.
*
diff --git a/src/main/java/org/hisp/dhis/util/NumberUtils.java b/src/main/java/org/hisp/dhis/util/NumberUtils.java
index e65c7be4..b1ffef34 100644
--- a/src/main/java/org/hisp/dhis/util/NumberUtils.java
+++ b/src/main/java/org/hisp/dhis/util/NumberUtils.java
@@ -38,7 +38,7 @@
/** Utilities for numbers. */
@NoArgsConstructor(access = AccessLevel.PRIVATE)
-public class NumberUtils {
+public final class NumberUtils {
/**
* Scales (rounds) the given double value to the given scale.
*
diff --git a/src/main/java/org/hisp/dhis/util/ObjectUtils.java b/src/main/java/org/hisp/dhis/util/ObjectUtils.java
index 0660c88c..3dfb8dac 100644
--- a/src/main/java/org/hisp/dhis/util/ObjectUtils.java
+++ b/src/main/java/org/hisp/dhis/util/ObjectUtils.java
@@ -31,7 +31,7 @@
import lombok.NoArgsConstructor;
@NoArgsConstructor(access = AccessLevel.PRIVATE)
-public class ObjectUtils {
+public final class ObjectUtils {
/**
* Indicates whether the given object is not null.
*
diff --git a/src/main/java/org/hisp/dhis/util/RegexUtils.java b/src/main/java/org/hisp/dhis/util/RegexUtils.java
index af597d2f..7297dc0b 100644
--- a/src/main/java/org/hisp/dhis/util/RegexUtils.java
+++ b/src/main/java/org/hisp/dhis/util/RegexUtils.java
@@ -34,7 +34,7 @@
/** Utilitis for regular expressions. */
@NoArgsConstructor(access = AccessLevel.PRIVATE)
-public class RegexUtils {
+public final class RegexUtils {
/**
* Returns the first match of the given pattern in the provided value.
*
diff --git a/src/main/java/org/hisp/dhis/util/TextUtils.java b/src/main/java/org/hisp/dhis/util/TextUtils.java
index ded015cf..f8ace200 100644
--- a/src/main/java/org/hisp/dhis/util/TextUtils.java
+++ b/src/main/java/org/hisp/dhis/util/TextUtils.java
@@ -31,13 +31,16 @@
import java.util.regex.Pattern;
import java.util.stream.Collectors;
import java.util.stream.Stream;
+import lombok.AccessLevel;
+import lombok.NoArgsConstructor;
import org.apache.commons.lang3.ObjectUtils;
import org.apache.commons.lang3.StringUtils;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import org.slf4j.helpers.MessageFormatter;
-public class TextUtils {
+@NoArgsConstructor(access = AccessLevel.PRIVATE)
+public final class TextUtils {
private static final Pattern PATTTERN_VARIABLE = Pattern.compile("^\\$\\{(.*?)\\}$");
private static final String PATTERN_LEAD_TICKS = "^```[a-zA-Z0-9]*\\s*\\n?";