Skip to content

Commit 8e6eb6f

Browse files
Merge branch 'main' into generator-bot-22093716594/serverupdate
2 parents d8ece63 + a5e2c41 commit 8e6eb6f

File tree

190 files changed

+1289
-293
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

190 files changed

+1289
-293
lines changed

CHANGELOG.md

Lines changed: 38 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,42 @@
11
## Release (2026-MM-DD)
2-
- `alb`: [v0.3.0](services/alb/CHANGELOG.md#v030)
3-
- **Feature:** Add fields `usedCredentials` and `usedLoadbalancers` to `GetQuotaResponse`
4-
- **Improvement:** Support additional properties in models
5-
- `loadbalancer`: [v0.2.0](services/loadbalancer/CHANGELOG.md#v020)
6-
- **Feature:** Add fields `maxCredentials`, `usedCredentials` and `usedLoadbalancers` to model `GetQuotaResponse`
7-
- **Improvement:** Support additional properties in models
8-
- `objectstorage`: [v0.1.2](services/objectstorage/CHANGELOG.md#v012)
9-
- **Improvement:** Support additional properties in models
10-
- `resourcemanager`: [v0.4.2](services/resourcemanager/CHANGELOG.md#v042)
11-
- **Improvement:** Support additional properties in models
12-
- `serverbackup`: [v0.1.1](services/serverbackup/CHANGELOG.md#v011)
13-
- **Improvement:** Support additional properties in models
14-
- `serverupdate`: [v0.1.2](services/serverupdate/CHANGELOG.md#v012)
15-
- **Improvement:** Support additional properties in models
2+
- `alb`:
3+
- [v0.3.1](services/alb/CHANGELOG.md#v031)
4+
- Bump dependency `org.apache.commons:commons-lang3` to `3.18.0`
5+
- Bump dependency `org.openapitools:jackson-databind-nullable` to `0.2.8`
6+
- [v0.3.0](services/alb/CHANGELOG.md#v030)
7+
- **Feature:** Add fields `usedCredentials` and `usedLoadbalancers` to `GetQuotaResponse`
8+
- **Improvement:** Support additional properties in models
9+
- `loadbalancer`:
10+
- [v0.2.1](services/loadbalancer/CHANGELOG.md#v021)
11+
- Bump dependency `org.apache.commons:commons-lang3` to `3.18.0`
12+
- Bump dependency `org.openapitools:jackson-databind-nullable` to `0.2.8`
13+
- [v0.2.0](services/loadbalancer/CHANGELOG.md#v020)
14+
- **Feature:** Add fields `maxCredentials`, `usedCredentials` and `usedLoadbalancers` to model `GetQuotaResponse`
15+
- **Improvement:** Support additional properties in models
16+
- `objectstorage`:
17+
- [v0.1.3](services/objectstorage/CHANGELOG.md#v013)
18+
- Bump dependency `org.apache.commons:commons-lang3` to `3.18.0`
19+
- Bump dependency `org.openapitools:jackson-databind-nullable` to `0.2.8`
20+
- [v0.1.2](services/objectstorage/CHANGELOG.md#v012)
21+
- **Improvement:** Support additional properties in models
22+
- `resourcemanager`:
23+
- [v0.4.3](services/resourcemanager/CHANGELOG.md#v043)
24+
- Bump dependency `org.apache.commons:commons-lang3` to `3.18.0`
25+
- Bump dependency `org.openapitools:jackson-databind-nullable` to `0.2.8`
26+
- [v0.4.2](services/resourcemanager/CHANGELOG.md#v042)
27+
- **Improvement:** Support additional properties in models
28+
- `serverbackup`:
29+
- [v0.1.2](services/serverbackup/CHANGELOG.md#v012)
30+
- Bump dependency `org.apache.commons:commons-lang3` to `3.18.0`
31+
- Bump dependency `org.openapitools:jackson-databind-nullable` to `0.2.8`
32+
- [v0.1.1](services/serverbackup/CHANGELOG.md#v011)
33+
- **Improvement:** Support additional properties in models
34+
- `serverupdate`:
35+
- [v0.1.3](services/serverupdate/CHANGELOG.md#v013)
36+
- Bump dependency `org.apache.commons:commons-lang3` to `3.18.0`
37+
- Bump dependency `org.openapitools:jackson-databind-nullable` to `0.2.8`
38+
- [v0.1.2](services/serverupdate/CHANGELOG.md#v012)
39+
- **Improvement:** Support additional properties in models
1640
- `sfs`: [v0.1.0](services/sfs/CHANGELOG.md#v010)
1741
- Initial onboarding of STACKIT Java SDK for STACKIT File Storage (SFS) service
1842

gradle/wrapper/gradle-wrapper.jar

2.35 KB
Binary file not shown.

gradle/wrapper/gradle-wrapper.properties

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
distributionBase=GRADLE_USER_HOME
22
distributionPath=wrapper/dists
3-
distributionUrl=https\://services.gradle.org/distributions/gradle-9.3.0-bin.zip
3+
distributionUrl=https\://services.gradle.org/distributions/gradle-9.3.1-bin.zip
44
networkTimeout=10000
55
validateDistributionUrl=true
66
zipStoreBase=GRADLE_USER_HOME

gradlew

Lines changed: 1 addition & 4 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

gradlew.bat

Lines changed: 1 addition & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

services/alb/CHANGELOG.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,7 @@
1+
## v0.3.1
2+
- Bump dependency `org.apache.commons:commons-lang3` to `3.18.0`
3+
- Bump dependency `org.openapitools:jackson-databind-nullable` to `0.2.8`
4+
15
## v0.3.0
26
- **Feature:** Add fields `usedCredentials` and `usedLoadbalancers` to `GetQuotaResponse`
37
- **Improvement:** Support additional properties in models

services/alb/VERSION

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
0.3.0
1+
0.3.1

services/alb/build.gradle

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,8 @@ dependencies {
1010
implementation 'com.google.code.gson:gson:2.9.1'
1111
implementation 'io.gsonfire:gson-fire:1.9.0'
1212
implementation 'jakarta.ws.rs:jakarta.ws.rs-api:2.1.6'
13-
implementation 'org.openapitools:jackson-databind-nullable:0.2.6'
14-
implementation group: 'org.apache.commons', name: 'commons-lang3', version: '3.17.0'
13+
implementation 'org.openapitools:jackson-databind-nullable:0.2.8'
14+
implementation group: 'org.apache.commons', name: 'commons-lang3', version: '3.18.0'
1515
implementation "jakarta.annotation:jakarta.annotation-api:$jakarta_annotation_version"
1616
testImplementation 'org.junit.jupiter:junit-jupiter-api:5.10.3'
1717
testImplementation 'org.mockito:mockito-core:3.12.4'

services/alb/oas_commit

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
ed4e4fbee2f5db4d95725108fb3d736e5363fb2f
1+
29ed135519d2a7b1b043cd0c8243bb8d423a784b

services/alb/src/main/java/cloud/stackit/sdk/alb/ApiClient.java

Lines changed: 60 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -84,6 +84,7 @@ public class ApiClient {
8484
protected InputStream sslCaCert;
8585
protected boolean verifyingSsl;
8686
protected KeyManager[] keyManagers;
87+
protected String tlsServerName;
8788

8889
protected OkHttpClient httpClient;
8990
protected JSON json;
@@ -189,8 +190,8 @@ public String getBasePath() {
189190
/**
190191
* Set base path
191192
*
192-
* @param basePath Base path of the URL (e.g https://alb.api.stackit.cloud
193-
* @return An instance of OkHttpClient
193+
* @param basePath Base path of the URL (e.g https://alb.api.stackit.cloud)
194+
* @return An instance of ApiClient
194195
*/
195196
public ApiClient setBasePath(String basePath) {
196197
this.basePath = basePath;
@@ -321,6 +322,28 @@ public ApiClient setKeyManagers(KeyManager[] managers) {
321322
return this;
322323
}
323324

325+
/**
326+
* Get TLS server name for SNI (Server Name Indication).
327+
*
328+
* @return The TLS server name
329+
*/
330+
public String getTlsServerName() {
331+
return tlsServerName;
332+
}
333+
334+
/**
335+
* Set TLS server name for SNI (Server Name Indication). This is used to verify the server
336+
* certificate against a specific hostname instead of the hostname in the URL.
337+
*
338+
* @param tlsServerName The TLS server name to use for certificate verification
339+
* @return ApiClient
340+
*/
341+
public ApiClient setTlsServerName(String tlsServerName) {
342+
this.tlsServerName = tlsServerName;
343+
applySslSettings();
344+
return this;
345+
}
346+
324347
/**
325348
* Getter for the field <code>dateFormat</code>.
326349
*
@@ -605,7 +628,7 @@ public List<Pair> parameterToPair(String name, Object value) {
605628
* @param value The value of the parameter.
606629
* @return A list of {@code Pair} objects.
607630
*/
608-
public List<Pair> parameterToPairs(String collectionFormat, String name, Collection value) {
631+
public List<Pair> parameterToPairs(String collectionFormat, String name, Collection<?> value) {
609632
List<Pair> params = new ArrayList<Pair>();
610633

611634
// preconditions
@@ -827,7 +850,17 @@ public <T> T deserialize(Response response, Type returnType) throws ApiException
827850
}
828851
try {
829852
if (isJsonMime(contentType)) {
830-
return JSON.deserialize(respBody.byteStream(), returnType);
853+
if (returnType.equals(String.class)) {
854+
String respBodyString = respBody.string();
855+
if (respBodyString.isEmpty()) {
856+
return null;
857+
}
858+
// Use String-based deserialize for String return type with fallback
859+
return JSON.deserialize(respBodyString, returnType);
860+
} else {
861+
// Use InputStream-based deserialize which supports responses > 2GB
862+
return JSON.deserialize(respBody.byteStream(), returnType);
863+
}
831864
} else if (returnType.equals(String.class)) {
832865
String respBodyString = respBody.string();
833866
if (respBodyString.isEmpty()) {
@@ -1227,8 +1260,10 @@ public String buildUrl(
12271260
if (serverIndex < 0 || serverIndex >= servers.size()) {
12281261
throw new ArrayIndexOutOfBoundsException(
12291262
String.format(
1263+
java.util.Locale.ROOT,
12301264
"Invalid index %d when selecting the host settings. Must be less than %d",
1231-
serverIndex, servers.size()));
1265+
serverIndex,
1266+
servers.size()));
12321267
}
12331268
baseURL = servers.get(serverIndex).URL(serverVariables);
12341269
} else {
@@ -1302,12 +1337,16 @@ public void processHeaderParams(Map<String, String> headerParams, Request.Builde
13021337
public void processCookieParams(Map<String, String> cookieParams, Request.Builder reqBuilder) {
13031338
for (Entry<String, String> param : cookieParams.entrySet()) {
13041339
reqBuilder.addHeader(
1305-
"Cookie", String.format("%s=%s", param.getKey(), param.getValue()));
1340+
"Cookie",
1341+
String.format(
1342+
java.util.Locale.ROOT, "%s=%s", param.getKey(), param.getValue()));
13061343
}
13071344
for (Entry<String, String> param : defaultCookieMap.entrySet()) {
13081345
if (!cookieParams.containsKey(param.getKey())) {
13091346
reqBuilder.addHeader(
1310-
"Cookie", String.format("%s=%s", param.getKey(), param.getValue()));
1347+
"Cookie",
1348+
String.format(
1349+
java.util.Locale.ROOT, "%s=%s", param.getKey(), param.getValue()));
13111350
}
13121351
}
13131352
}
@@ -1495,7 +1534,20 @@ public boolean verify(String hostname, SSLSession session) {
14951534
trustManagerFactory.init(caKeyStore);
14961535
}
14971536
trustManagers = trustManagerFactory.getTrustManagers();
1498-
hostnameVerifier = OkHostnameVerifier.INSTANCE;
1537+
if (tlsServerName != null && !tlsServerName.isEmpty()) {
1538+
hostnameVerifier =
1539+
new HostnameVerifier() {
1540+
@Override
1541+
public boolean verify(String hostname, SSLSession session) {
1542+
// Verify the certificate against tlsServerName instead of the
1543+
// actual hostname
1544+
return OkHostnameVerifier.INSTANCE.verify(
1545+
tlsServerName, session);
1546+
}
1547+
};
1548+
} else {
1549+
hostnameVerifier = OkHostnameVerifier.INSTANCE;
1550+
}
14991551
}
15001552

15011553
SSLContext sslContext = SSLContext.getInstance("TLS");

0 commit comments

Comments
 (0)