diff --git a/modules/openapi-generator/src/main/resources/Java/libraries/okhttp-gson/ApiClient.mustache b/modules/openapi-generator/src/main/resources/Java/libraries/okhttp-gson/ApiClient.mustache
index 5498f1821ffb..58511e92e4d7 100644
--- a/modules/openapi-generator/src/main/resources/Java/libraries/okhttp-gson/ApiClient.mustache
+++ b/modules/openapi-generator/src/main/resources/Java/libraries/okhttp-gson/ApiClient.mustache
@@ -433,6 +433,29 @@ public class ApiClient {
return this;
}
+ /**
+ * Get TLS server name for SNI (Server Name Indication).
+ *
+ * @return The TLS server name
+ */
+ public String getTlsServerName() {
+ return tlsServerName;
+ }
+
+ /**
+ * Set TLS server name for SNI (Server Name Indication).
+ * This is used to verify the server certificate against a specific hostname
+ * instead of the hostname in the URL.
+ *
+ * @param tlsServerName The TLS server name to use for certificate verification
+ * @return ApiClient
+ */
+ public ApiClient setTlsServerName(String tlsServerName) {
+ this.tlsServerName = tlsServerName;
+ applySslSettings();
+ return this;
+ }
+
/**
*
Getter for the field dateFormat.
*
@@ -1820,7 +1843,17 @@ public class ApiClient {
trustManagerFactory.init(caKeyStore);
}
trustManagers = trustManagerFactory.getTrustManagers();
- hostnameVerifier = OkHostnameVerifier.INSTANCE;
+ if (tlsServerName != null && !tlsServerName.isEmpty()) {
+ hostnameVerifier = new HostnameVerifier() {
+ @Override
+ public boolean verify(String hostname, SSLSession session) {
+ // Verify the certificate against tlsServerName instead of the actual hostname
+ return OkHostnameVerifier.INSTANCE.verify(tlsServerName, session);
+ }
+ };
+ } else {
+ hostnameVerifier = OkHostnameVerifier.INSTANCE;
+ }
}
SSLContext sslContext = SSLContext.getInstance("TLS");
diff --git a/samples/client/echo_api/java/okhttp-gson-user-defined-templates/src/main/java/org/openapitools/client/ApiClient.java b/samples/client/echo_api/java/okhttp-gson-user-defined-templates/src/main/java/org/openapitools/client/ApiClient.java
index 7f2bd977b863..b0219e71642c 100644
--- a/samples/client/echo_api/java/okhttp-gson-user-defined-templates/src/main/java/org/openapitools/client/ApiClient.java
+++ b/samples/client/echo_api/java/okhttp-gson-user-defined-templates/src/main/java/org/openapitools/client/ApiClient.java
@@ -376,6 +376,29 @@ public ApiClient setKeyManagers(KeyManager[] managers) {
return this;
}
+ /**
+ * Get TLS server name for SNI (Server Name Indication).
+ *
+ * @return The TLS server name
+ */
+ public String getTlsServerName() {
+ return tlsServerName;
+ }
+
+ /**
+ * Set TLS server name for SNI (Server Name Indication).
+ * This is used to verify the server certificate against a specific hostname
+ * instead of the hostname in the URL.
+ *
+ * @param tlsServerName The TLS server name to use for certificate verification
+ * @return ApiClient
+ */
+ public ApiClient setTlsServerName(String tlsServerName) {
+ this.tlsServerName = tlsServerName;
+ applySslSettings();
+ return this;
+ }
+
/**
* Getter for the field dateFormat.
*
@@ -1635,7 +1658,17 @@ public boolean verify(String hostname, SSLSession session) {
trustManagerFactory.init(caKeyStore);
}
trustManagers = trustManagerFactory.getTrustManagers();
- hostnameVerifier = OkHostnameVerifier.INSTANCE;
+ if (tlsServerName != null && !tlsServerName.isEmpty()) {
+ hostnameVerifier = new HostnameVerifier() {
+ @Override
+ public boolean verify(String hostname, SSLSession session) {
+ // Verify the certificate against tlsServerName instead of the actual hostname
+ return OkHostnameVerifier.INSTANCE.verify(tlsServerName, session);
+ }
+ };
+ } else {
+ hostnameVerifier = OkHostnameVerifier.INSTANCE;
+ }
}
SSLContext sslContext = SSLContext.getInstance("TLS");
diff --git a/samples/client/echo_api/java/okhttp-gson/src/main/java/org/openapitools/client/ApiClient.java b/samples/client/echo_api/java/okhttp-gson/src/main/java/org/openapitools/client/ApiClient.java
index a8d5afa5aa0f..31e6ce7b7ab5 100644
--- a/samples/client/echo_api/java/okhttp-gson/src/main/java/org/openapitools/client/ApiClient.java
+++ b/samples/client/echo_api/java/okhttp-gson/src/main/java/org/openapitools/client/ApiClient.java
@@ -304,6 +304,29 @@ public ApiClient setKeyManagers(KeyManager[] managers) {
return this;
}
+ /**
+ * Get TLS server name for SNI (Server Name Indication).
+ *
+ * @return The TLS server name
+ */
+ public String getTlsServerName() {
+ return tlsServerName;
+ }
+
+ /**
+ * Set TLS server name for SNI (Server Name Indication).
+ * This is used to verify the server certificate against a specific hostname
+ * instead of the hostname in the URL.
+ *
+ * @param tlsServerName The TLS server name to use for certificate verification
+ * @return ApiClient
+ */
+ public ApiClient setTlsServerName(String tlsServerName) {
+ this.tlsServerName = tlsServerName;
+ applySslSettings();
+ return this;
+ }
+
/**
* Getter for the field dateFormat.
*
@@ -1565,7 +1588,17 @@ public boolean verify(String hostname, SSLSession session) {
trustManagerFactory.init(caKeyStore);
}
trustManagers = trustManagerFactory.getTrustManagers();
- hostnameVerifier = OkHostnameVerifier.INSTANCE;
+ if (tlsServerName != null && !tlsServerName.isEmpty()) {
+ hostnameVerifier = new HostnameVerifier() {
+ @Override
+ public boolean verify(String hostname, SSLSession session) {
+ // Verify the certificate against tlsServerName instead of the actual hostname
+ return OkHostnameVerifier.INSTANCE.verify(tlsServerName, session);
+ }
+ };
+ } else {
+ hostnameVerifier = OkHostnameVerifier.INSTANCE;
+ }
}
SSLContext sslContext = SSLContext.getInstance("TLS");
diff --git a/samples/client/others/java/okhttp-gson-oneOf-array/src/main/java/org/openapitools/client/ApiClient.java b/samples/client/others/java/okhttp-gson-oneOf-array/src/main/java/org/openapitools/client/ApiClient.java
index a7447b640f69..d9dff704f8cf 100644
--- a/samples/client/others/java/okhttp-gson-oneOf-array/src/main/java/org/openapitools/client/ApiClient.java
+++ b/samples/client/others/java/okhttp-gson-oneOf-array/src/main/java/org/openapitools/client/ApiClient.java
@@ -300,6 +300,29 @@ public ApiClient setKeyManagers(KeyManager[] managers) {
return this;
}
+ /**
+ * Get TLS server name for SNI (Server Name Indication).
+ *
+ * @return The TLS server name
+ */
+ public String getTlsServerName() {
+ return tlsServerName;
+ }
+
+ /**
+ * Set TLS server name for SNI (Server Name Indication).
+ * This is used to verify the server certificate against a specific hostname
+ * instead of the hostname in the URL.
+ *
+ * @param tlsServerName The TLS server name to use for certificate verification
+ * @return ApiClient
+ */
+ public ApiClient setTlsServerName(String tlsServerName) {
+ this.tlsServerName = tlsServerName;
+ applySslSettings();
+ return this;
+ }
+
/**
* Getter for the field dateFormat.
*
@@ -1539,7 +1562,17 @@ public boolean verify(String hostname, SSLSession session) {
trustManagerFactory.init(caKeyStore);
}
trustManagers = trustManagerFactory.getTrustManagers();
- hostnameVerifier = OkHostnameVerifier.INSTANCE;
+ if (tlsServerName != null && !tlsServerName.isEmpty()) {
+ hostnameVerifier = new HostnameVerifier() {
+ @Override
+ public boolean verify(String hostname, SSLSession session) {
+ // Verify the certificate against tlsServerName instead of the actual hostname
+ return OkHostnameVerifier.INSTANCE.verify(tlsServerName, session);
+ }
+ };
+ } else {
+ hostnameVerifier = OkHostnameVerifier.INSTANCE;
+ }
}
SSLContext sslContext = SSLContext.getInstance("TLS");
diff --git a/samples/client/others/java/okhttp-gson-oneOf/src/main/java/org/openapitools/client/ApiClient.java b/samples/client/others/java/okhttp-gson-oneOf/src/main/java/org/openapitools/client/ApiClient.java
index 8ae297f5892b..b47ebc2dd5d1 100644
--- a/samples/client/others/java/okhttp-gson-oneOf/src/main/java/org/openapitools/client/ApiClient.java
+++ b/samples/client/others/java/okhttp-gson-oneOf/src/main/java/org/openapitools/client/ApiClient.java
@@ -300,6 +300,29 @@ public ApiClient setKeyManagers(KeyManager[] managers) {
return this;
}
+ /**
+ * Get TLS server name for SNI (Server Name Indication).
+ *
+ * @return The TLS server name
+ */
+ public String getTlsServerName() {
+ return tlsServerName;
+ }
+
+ /**
+ * Set TLS server name for SNI (Server Name Indication).
+ * This is used to verify the server certificate against a specific hostname
+ * instead of the hostname in the URL.
+ *
+ * @param tlsServerName The TLS server name to use for certificate verification
+ * @return ApiClient
+ */
+ public ApiClient setTlsServerName(String tlsServerName) {
+ this.tlsServerName = tlsServerName;
+ applySslSettings();
+ return this;
+ }
+
/**
* Getter for the field dateFormat.
*
@@ -1539,7 +1562,17 @@ public boolean verify(String hostname, SSLSession session) {
trustManagerFactory.init(caKeyStore);
}
trustManagers = trustManagerFactory.getTrustManagers();
- hostnameVerifier = OkHostnameVerifier.INSTANCE;
+ if (tlsServerName != null && !tlsServerName.isEmpty()) {
+ hostnameVerifier = new HostnameVerifier() {
+ @Override
+ public boolean verify(String hostname, SSLSession session) {
+ // Verify the certificate against tlsServerName instead of the actual hostname
+ return OkHostnameVerifier.INSTANCE.verify(tlsServerName, session);
+ }
+ };
+ } else {
+ hostnameVerifier = OkHostnameVerifier.INSTANCE;
+ }
}
SSLContext sslContext = SSLContext.getInstance("TLS");
diff --git a/samples/client/others/java/okhttp-gson-streaming/src/main/java/org/openapitools/client/ApiClient.java b/samples/client/others/java/okhttp-gson-streaming/src/main/java/org/openapitools/client/ApiClient.java
index 4f33f041e69b..4eac37f4bc2b 100644
--- a/samples/client/others/java/okhttp-gson-streaming/src/main/java/org/openapitools/client/ApiClient.java
+++ b/samples/client/others/java/okhttp-gson-streaming/src/main/java/org/openapitools/client/ApiClient.java
@@ -300,6 +300,29 @@ public ApiClient setKeyManagers(KeyManager[] managers) {
return this;
}
+ /**
+ * Get TLS server name for SNI (Server Name Indication).
+ *
+ * @return The TLS server name
+ */
+ public String getTlsServerName() {
+ return tlsServerName;
+ }
+
+ /**
+ * Set TLS server name for SNI (Server Name Indication).
+ * This is used to verify the server certificate against a specific hostname
+ * instead of the hostname in the URL.
+ *
+ * @param tlsServerName The TLS server name to use for certificate verification
+ * @return ApiClient
+ */
+ public ApiClient setTlsServerName(String tlsServerName) {
+ this.tlsServerName = tlsServerName;
+ applySslSettings();
+ return this;
+ }
+
/**
* Getter for the field dateFormat.
*
@@ -1562,7 +1585,17 @@ public boolean verify(String hostname, SSLSession session) {
trustManagerFactory.init(caKeyStore);
}
trustManagers = trustManagerFactory.getTrustManagers();
- hostnameVerifier = OkHostnameVerifier.INSTANCE;
+ if (tlsServerName != null && !tlsServerName.isEmpty()) {
+ hostnameVerifier = new HostnameVerifier() {
+ @Override
+ public boolean verify(String hostname, SSLSession session) {
+ // Verify the certificate against tlsServerName instead of the actual hostname
+ return OkHostnameVerifier.INSTANCE.verify(tlsServerName, session);
+ }
+ };
+ } else {
+ hostnameVerifier = OkHostnameVerifier.INSTANCE;
+ }
}
SSLContext sslContext = SSLContext.getInstance("TLS");
diff --git a/samples/client/petstore/java/okhttp-gson-3.1-duplicated-operationid/src/main/java/org/openapitools/client/ApiClient.java b/samples/client/petstore/java/okhttp-gson-3.1-duplicated-operationid/src/main/java/org/openapitools/client/ApiClient.java
index 7f2bd977b863..b0219e71642c 100644
--- a/samples/client/petstore/java/okhttp-gson-3.1-duplicated-operationid/src/main/java/org/openapitools/client/ApiClient.java
+++ b/samples/client/petstore/java/okhttp-gson-3.1-duplicated-operationid/src/main/java/org/openapitools/client/ApiClient.java
@@ -376,6 +376,29 @@ public ApiClient setKeyManagers(KeyManager[] managers) {
return this;
}
+ /**
+ * Get TLS server name for SNI (Server Name Indication).
+ *
+ * @return The TLS server name
+ */
+ public String getTlsServerName() {
+ return tlsServerName;
+ }
+
+ /**
+ * Set TLS server name for SNI (Server Name Indication).
+ * This is used to verify the server certificate against a specific hostname
+ * instead of the hostname in the URL.
+ *
+ * @param tlsServerName The TLS server name to use for certificate verification
+ * @return ApiClient
+ */
+ public ApiClient setTlsServerName(String tlsServerName) {
+ this.tlsServerName = tlsServerName;
+ applySslSettings();
+ return this;
+ }
+
/**
* Getter for the field dateFormat.
*
@@ -1635,7 +1658,17 @@ public boolean verify(String hostname, SSLSession session) {
trustManagerFactory.init(caKeyStore);
}
trustManagers = trustManagerFactory.getTrustManagers();
- hostnameVerifier = OkHostnameVerifier.INSTANCE;
+ if (tlsServerName != null && !tlsServerName.isEmpty()) {
+ hostnameVerifier = new HostnameVerifier() {
+ @Override
+ public boolean verify(String hostname, SSLSession session) {
+ // Verify the certificate against tlsServerName instead of the actual hostname
+ return OkHostnameVerifier.INSTANCE.verify(tlsServerName, session);
+ }
+ };
+ } else {
+ hostnameVerifier = OkHostnameVerifier.INSTANCE;
+ }
}
SSLContext sslContext = SSLContext.getInstance("TLS");
diff --git a/samples/client/petstore/java/okhttp-gson-3.1/src/main/java/org/openapitools/client/ApiClient.java b/samples/client/petstore/java/okhttp-gson-3.1/src/main/java/org/openapitools/client/ApiClient.java
index 7f2bd977b863..b0219e71642c 100644
--- a/samples/client/petstore/java/okhttp-gson-3.1/src/main/java/org/openapitools/client/ApiClient.java
+++ b/samples/client/petstore/java/okhttp-gson-3.1/src/main/java/org/openapitools/client/ApiClient.java
@@ -376,6 +376,29 @@ public ApiClient setKeyManagers(KeyManager[] managers) {
return this;
}
+ /**
+ * Get TLS server name for SNI (Server Name Indication).
+ *
+ * @return The TLS server name
+ */
+ public String getTlsServerName() {
+ return tlsServerName;
+ }
+
+ /**
+ * Set TLS server name for SNI (Server Name Indication).
+ * This is used to verify the server certificate against a specific hostname
+ * instead of the hostname in the URL.
+ *
+ * @param tlsServerName The TLS server name to use for certificate verification
+ * @return ApiClient
+ */
+ public ApiClient setTlsServerName(String tlsServerName) {
+ this.tlsServerName = tlsServerName;
+ applySslSettings();
+ return this;
+ }
+
/**
* Getter for the field dateFormat.
*
@@ -1635,7 +1658,17 @@ public boolean verify(String hostname, SSLSession session) {
trustManagerFactory.init(caKeyStore);
}
trustManagers = trustManagerFactory.getTrustManagers();
- hostnameVerifier = OkHostnameVerifier.INSTANCE;
+ if (tlsServerName != null && !tlsServerName.isEmpty()) {
+ hostnameVerifier = new HostnameVerifier() {
+ @Override
+ public boolean verify(String hostname, SSLSession session) {
+ // Verify the certificate against tlsServerName instead of the actual hostname
+ return OkHostnameVerifier.INSTANCE.verify(tlsServerName, session);
+ }
+ };
+ } else {
+ hostnameVerifier = OkHostnameVerifier.INSTANCE;
+ }
}
SSLContext sslContext = SSLContext.getInstance("TLS");
diff --git a/samples/client/petstore/java/okhttp-gson-awsv4signature/src/main/java/org/openapitools/client/ApiClient.java b/samples/client/petstore/java/okhttp-gson-awsv4signature/src/main/java/org/openapitools/client/ApiClient.java
index 49ed01e1c208..15274e56f7c6 100644
--- a/samples/client/petstore/java/okhttp-gson-awsv4signature/src/main/java/org/openapitools/client/ApiClient.java
+++ b/samples/client/petstore/java/okhttp-gson-awsv4signature/src/main/java/org/openapitools/client/ApiClient.java
@@ -380,6 +380,29 @@ public ApiClient setKeyManagers(KeyManager[] managers) {
return this;
}
+ /**
+ * Get TLS server name for SNI (Server Name Indication).
+ *
+ * @return The TLS server name
+ */
+ public String getTlsServerName() {
+ return tlsServerName;
+ }
+
+ /**
+ * Set TLS server name for SNI (Server Name Indication).
+ * This is used to verify the server certificate against a specific hostname
+ * instead of the hostname in the URL.
+ *
+ * @param tlsServerName The TLS server name to use for certificate verification
+ * @return ApiClient
+ */
+ public ApiClient setTlsServerName(String tlsServerName) {
+ this.tlsServerName = tlsServerName;
+ applySslSettings();
+ return this;
+ }
+
/**
* Getter for the field dateFormat.
*
@@ -1655,7 +1678,17 @@ public boolean verify(String hostname, SSLSession session) {
trustManagerFactory.init(caKeyStore);
}
trustManagers = trustManagerFactory.getTrustManagers();
- hostnameVerifier = OkHostnameVerifier.INSTANCE;
+ if (tlsServerName != null && !tlsServerName.isEmpty()) {
+ hostnameVerifier = new HostnameVerifier() {
+ @Override
+ public boolean verify(String hostname, SSLSession session) {
+ // Verify the certificate against tlsServerName instead of the actual hostname
+ return OkHostnameVerifier.INSTANCE.verify(tlsServerName, session);
+ }
+ };
+ } else {
+ hostnameVerifier = OkHostnameVerifier.INSTANCE;
+ }
}
SSLContext sslContext = SSLContext.getInstance("TLS");
diff --git a/samples/client/petstore/java/okhttp-gson-dynamicOperations/src/main/java/org/openapitools/client/ApiClient.java b/samples/client/petstore/java/okhttp-gson-dynamicOperations/src/main/java/org/openapitools/client/ApiClient.java
index d6a2613db0aa..3ccbde8e40c1 100644
--- a/samples/client/petstore/java/okhttp-gson-dynamicOperations/src/main/java/org/openapitools/client/ApiClient.java
+++ b/samples/client/petstore/java/okhttp-gson-dynamicOperations/src/main/java/org/openapitools/client/ApiClient.java
@@ -393,6 +393,29 @@ public ApiClient setKeyManagers(KeyManager[] managers) {
return this;
}
+ /**
+ * Get TLS server name for SNI (Server Name Indication).
+ *
+ * @return The TLS server name
+ */
+ public String getTlsServerName() {
+ return tlsServerName;
+ }
+
+ /**
+ * Set TLS server name for SNI (Server Name Indication).
+ * This is used to verify the server certificate against a specific hostname
+ * instead of the hostname in the URL.
+ *
+ * @param tlsServerName The TLS server name to use for certificate verification
+ * @return ApiClient
+ */
+ public ApiClient setTlsServerName(String tlsServerName) {
+ this.tlsServerName = tlsServerName;
+ applySslSettings();
+ return this;
+ }
+
/**
* Getter for the field dateFormat.
*
@@ -1640,7 +1663,17 @@ public boolean verify(String hostname, SSLSession session) {
trustManagerFactory.init(caKeyStore);
}
trustManagers = trustManagerFactory.getTrustManagers();
- hostnameVerifier = OkHostnameVerifier.INSTANCE;
+ if (tlsServerName != null && !tlsServerName.isEmpty()) {
+ hostnameVerifier = new HostnameVerifier() {
+ @Override
+ public boolean verify(String hostname, SSLSession session) {
+ // Verify the certificate against tlsServerName instead of the actual hostname
+ return OkHostnameVerifier.INSTANCE.verify(tlsServerName, session);
+ }
+ };
+ } else {
+ hostnameVerifier = OkHostnameVerifier.INSTANCE;
+ }
}
SSLContext sslContext = SSLContext.getInstance("TLS");
diff --git a/samples/client/petstore/java/okhttp-gson-group-parameter/src/main/java/org/openapitools/client/ApiClient.java b/samples/client/petstore/java/okhttp-gson-group-parameter/src/main/java/org/openapitools/client/ApiClient.java
index 7f2bd977b863..b0219e71642c 100644
--- a/samples/client/petstore/java/okhttp-gson-group-parameter/src/main/java/org/openapitools/client/ApiClient.java
+++ b/samples/client/petstore/java/okhttp-gson-group-parameter/src/main/java/org/openapitools/client/ApiClient.java
@@ -376,6 +376,29 @@ public ApiClient setKeyManagers(KeyManager[] managers) {
return this;
}
+ /**
+ * Get TLS server name for SNI (Server Name Indication).
+ *
+ * @return The TLS server name
+ */
+ public String getTlsServerName() {
+ return tlsServerName;
+ }
+
+ /**
+ * Set TLS server name for SNI (Server Name Indication).
+ * This is used to verify the server certificate against a specific hostname
+ * instead of the hostname in the URL.
+ *
+ * @param tlsServerName The TLS server name to use for certificate verification
+ * @return ApiClient
+ */
+ public ApiClient setTlsServerName(String tlsServerName) {
+ this.tlsServerName = tlsServerName;
+ applySslSettings();
+ return this;
+ }
+
/**
* Getter for the field dateFormat.
*
@@ -1635,7 +1658,17 @@ public boolean verify(String hostname, SSLSession session) {
trustManagerFactory.init(caKeyStore);
}
trustManagers = trustManagerFactory.getTrustManagers();
- hostnameVerifier = OkHostnameVerifier.INSTANCE;
+ if (tlsServerName != null && !tlsServerName.isEmpty()) {
+ hostnameVerifier = new HostnameVerifier() {
+ @Override
+ public boolean verify(String hostname, SSLSession session) {
+ // Verify the certificate against tlsServerName instead of the actual hostname
+ return OkHostnameVerifier.INSTANCE.verify(tlsServerName, session);
+ }
+ };
+ } else {
+ hostnameVerifier = OkHostnameVerifier.INSTANCE;
+ }
}
SSLContext sslContext = SSLContext.getInstance("TLS");
diff --git a/samples/client/petstore/java/okhttp-gson-nullable-required/src/main/java/org/openapitools/client/ApiClient.java b/samples/client/petstore/java/okhttp-gson-nullable-required/src/main/java/org/openapitools/client/ApiClient.java
index 6b7f95ee5c01..e3f93c794723 100644
--- a/samples/client/petstore/java/okhttp-gson-nullable-required/src/main/java/org/openapitools/client/ApiClient.java
+++ b/samples/client/petstore/java/okhttp-gson-nullable-required/src/main/java/org/openapitools/client/ApiClient.java
@@ -379,6 +379,29 @@ public ApiClient setKeyManagers(KeyManager[] managers) {
return this;
}
+ /**
+ * Get TLS server name for SNI (Server Name Indication).
+ *
+ * @return The TLS server name
+ */
+ public String getTlsServerName() {
+ return tlsServerName;
+ }
+
+ /**
+ * Set TLS server name for SNI (Server Name Indication).
+ * This is used to verify the server certificate against a specific hostname
+ * instead of the hostname in the URL.
+ *
+ * @param tlsServerName The TLS server name to use for certificate verification
+ * @return ApiClient
+ */
+ public ApiClient setTlsServerName(String tlsServerName) {
+ this.tlsServerName = tlsServerName;
+ applySslSettings();
+ return this;
+ }
+
/**
* Getter for the field dateFormat.
*
@@ -1638,7 +1661,17 @@ public boolean verify(String hostname, SSLSession session) {
trustManagerFactory.init(caKeyStore);
}
trustManagers = trustManagerFactory.getTrustManagers();
- hostnameVerifier = OkHostnameVerifier.INSTANCE;
+ if (tlsServerName != null && !tlsServerName.isEmpty()) {
+ hostnameVerifier = new HostnameVerifier() {
+ @Override
+ public boolean verify(String hostname, SSLSession session) {
+ // Verify the certificate against tlsServerName instead of the actual hostname
+ return OkHostnameVerifier.INSTANCE.verify(tlsServerName, session);
+ }
+ };
+ } else {
+ hostnameVerifier = OkHostnameVerifier.INSTANCE;
+ }
}
SSLContext sslContext = SSLContext.getInstance("TLS");
diff --git a/samples/client/petstore/java/okhttp-gson-parcelableModel/src/main/java/org/openapitools/client/ApiClient.java b/samples/client/petstore/java/okhttp-gson-parcelableModel/src/main/java/org/openapitools/client/ApiClient.java
index b5c1f0547752..d17f25f8707d 100644
--- a/samples/client/petstore/java/okhttp-gson-parcelableModel/src/main/java/org/openapitools/client/ApiClient.java
+++ b/samples/client/petstore/java/okhttp-gson-parcelableModel/src/main/java/org/openapitools/client/ApiClient.java
@@ -382,6 +382,29 @@ public ApiClient setKeyManagers(KeyManager[] managers) {
return this;
}
+ /**
+ * Get TLS server name for SNI (Server Name Indication).
+ *
+ * @return The TLS server name
+ */
+ public String getTlsServerName() {
+ return tlsServerName;
+ }
+
+ /**
+ * Set TLS server name for SNI (Server Name Indication).
+ * This is used to verify the server certificate against a specific hostname
+ * instead of the hostname in the URL.
+ *
+ * @param tlsServerName The TLS server name to use for certificate verification
+ * @return ApiClient
+ */
+ public ApiClient setTlsServerName(String tlsServerName) {
+ this.tlsServerName = tlsServerName;
+ applySslSettings();
+ return this;
+ }
+
/**
* Getter for the field dateFormat.
*
@@ -1641,7 +1664,17 @@ public boolean verify(String hostname, SSLSession session) {
trustManagerFactory.init(caKeyStore);
}
trustManagers = trustManagerFactory.getTrustManagers();
- hostnameVerifier = OkHostnameVerifier.INSTANCE;
+ if (tlsServerName != null && !tlsServerName.isEmpty()) {
+ hostnameVerifier = new HostnameVerifier() {
+ @Override
+ public boolean verify(String hostname, SSLSession session) {
+ // Verify the certificate against tlsServerName instead of the actual hostname
+ return OkHostnameVerifier.INSTANCE.verify(tlsServerName, session);
+ }
+ };
+ } else {
+ hostnameVerifier = OkHostnameVerifier.INSTANCE;
+ }
}
SSLContext sslContext = SSLContext.getInstance("TLS");
diff --git a/samples/client/petstore/java/okhttp-gson-swagger1/src/main/java/org/openapitools/client/ApiClient.java b/samples/client/petstore/java/okhttp-gson-swagger1/src/main/java/org/openapitools/client/ApiClient.java
index 7f2bd977b863..b0219e71642c 100644
--- a/samples/client/petstore/java/okhttp-gson-swagger1/src/main/java/org/openapitools/client/ApiClient.java
+++ b/samples/client/petstore/java/okhttp-gson-swagger1/src/main/java/org/openapitools/client/ApiClient.java
@@ -376,6 +376,29 @@ public ApiClient setKeyManagers(KeyManager[] managers) {
return this;
}
+ /**
+ * Get TLS server name for SNI (Server Name Indication).
+ *
+ * @return The TLS server name
+ */
+ public String getTlsServerName() {
+ return tlsServerName;
+ }
+
+ /**
+ * Set TLS server name for SNI (Server Name Indication).
+ * This is used to verify the server certificate against a specific hostname
+ * instead of the hostname in the URL.
+ *
+ * @param tlsServerName The TLS server name to use for certificate verification
+ * @return ApiClient
+ */
+ public ApiClient setTlsServerName(String tlsServerName) {
+ this.tlsServerName = tlsServerName;
+ applySslSettings();
+ return this;
+ }
+
/**
* Getter for the field dateFormat.
*
@@ -1635,7 +1658,17 @@ public boolean verify(String hostname, SSLSession session) {
trustManagerFactory.init(caKeyStore);
}
trustManagers = trustManagerFactory.getTrustManagers();
- hostnameVerifier = OkHostnameVerifier.INSTANCE;
+ if (tlsServerName != null && !tlsServerName.isEmpty()) {
+ hostnameVerifier = new HostnameVerifier() {
+ @Override
+ public boolean verify(String hostname, SSLSession session) {
+ // Verify the certificate against tlsServerName instead of the actual hostname
+ return OkHostnameVerifier.INSTANCE.verify(tlsServerName, session);
+ }
+ };
+ } else {
+ hostnameVerifier = OkHostnameVerifier.INSTANCE;
+ }
}
SSLContext sslContext = SSLContext.getInstance("TLS");
diff --git a/samples/client/petstore/java/okhttp-gson-swagger2/src/main/java/org/openapitools/client/ApiClient.java b/samples/client/petstore/java/okhttp-gson-swagger2/src/main/java/org/openapitools/client/ApiClient.java
index 7f2bd977b863..b0219e71642c 100644
--- a/samples/client/petstore/java/okhttp-gson-swagger2/src/main/java/org/openapitools/client/ApiClient.java
+++ b/samples/client/petstore/java/okhttp-gson-swagger2/src/main/java/org/openapitools/client/ApiClient.java
@@ -376,6 +376,29 @@ public ApiClient setKeyManagers(KeyManager[] managers) {
return this;
}
+ /**
+ * Get TLS server name for SNI (Server Name Indication).
+ *
+ * @return The TLS server name
+ */
+ public String getTlsServerName() {
+ return tlsServerName;
+ }
+
+ /**
+ * Set TLS server name for SNI (Server Name Indication).
+ * This is used to verify the server certificate against a specific hostname
+ * instead of the hostname in the URL.
+ *
+ * @param tlsServerName The TLS server name to use for certificate verification
+ * @return ApiClient
+ */
+ public ApiClient setTlsServerName(String tlsServerName) {
+ this.tlsServerName = tlsServerName;
+ applySslSettings();
+ return this;
+ }
+
/**
* Getter for the field dateFormat.
*
@@ -1635,7 +1658,17 @@ public boolean verify(String hostname, SSLSession session) {
trustManagerFactory.init(caKeyStore);
}
trustManagers = trustManagerFactory.getTrustManagers();
- hostnameVerifier = OkHostnameVerifier.INSTANCE;
+ if (tlsServerName != null && !tlsServerName.isEmpty()) {
+ hostnameVerifier = new HostnameVerifier() {
+ @Override
+ public boolean verify(String hostname, SSLSession session) {
+ // Verify the certificate against tlsServerName instead of the actual hostname
+ return OkHostnameVerifier.INSTANCE.verify(tlsServerName, session);
+ }
+ };
+ } else {
+ hostnameVerifier = OkHostnameVerifier.INSTANCE;
+ }
}
SSLContext sslContext = SSLContext.getInstance("TLS");
diff --git a/samples/client/petstore/java/okhttp-gson/src/main/java/org/openapitools/client/ApiClient.java b/samples/client/petstore/java/okhttp-gson/src/main/java/org/openapitools/client/ApiClient.java
index 6a00302c8f2c..7f5d1d4b0d2c 100644
--- a/samples/client/petstore/java/okhttp-gson/src/main/java/org/openapitools/client/ApiClient.java
+++ b/samples/client/petstore/java/okhttp-gson/src/main/java/org/openapitools/client/ApiClient.java
@@ -428,6 +428,29 @@ public ApiClient setKeyManagers(KeyManager[] managers) {
return this;
}
+ /**
+ * Get TLS server name for SNI (Server Name Indication).
+ *
+ * @return The TLS server name
+ */
+ public String getTlsServerName() {
+ return tlsServerName;
+ }
+
+ /**
+ * Set TLS server name for SNI (Server Name Indication).
+ * This is used to verify the server certificate against a specific hostname
+ * instead of the hostname in the URL.
+ *
+ * @param tlsServerName The TLS server name to use for certificate verification
+ * @return ApiClient
+ */
+ public ApiClient setTlsServerName(String tlsServerName) {
+ this.tlsServerName = tlsServerName;
+ applySslSettings();
+ return this;
+ }
+
/**
* Getter for the field dateFormat.
*
@@ -1709,7 +1732,17 @@ public boolean verify(String hostname, SSLSession session) {
trustManagerFactory.init(caKeyStore);
}
trustManagers = trustManagerFactory.getTrustManagers();
- hostnameVerifier = OkHostnameVerifier.INSTANCE;
+ if (tlsServerName != null && !tlsServerName.isEmpty()) {
+ hostnameVerifier = new HostnameVerifier() {
+ @Override
+ public boolean verify(String hostname, SSLSession session) {
+ // Verify the certificate against tlsServerName instead of the actual hostname
+ return OkHostnameVerifier.INSTANCE.verify(tlsServerName, session);
+ }
+ };
+ } else {
+ hostnameVerifier = OkHostnameVerifier.INSTANCE;
+ }
}
SSLContext sslContext = SSLContext.getInstance("TLS");