From fab6e7f05147efa92b02d43edd73b8e02ab18e37 Mon Sep 17 00:00:00 2001 From: SDK Generator Bot Date: Mon, 27 Apr 2026 07:47:49 +0000 Subject: [PATCH] Generate resourcemanager --- services/resourcemanager/README.md | 26 ++ services/resourcemanager/oas_commit | 2 +- .../{v0api => }/ApiCallback.java | 2 +- .../{v0api => }/ApiClient.java | 12 +- .../{v0api => }/ApiResponse.java | 2 +- .../{v0api => }/GzipRequestInterceptor.java | 2 +- .../sdk/resourcemanager/{v0api => }/JSON.java | 47 ++- .../sdk/resourcemanager/{v0api => }/Pair.java | 2 +- .../{v0api => }/ProgressRequestBody.java | 2 +- .../{v0api => }/ProgressResponseBody.java | 2 +- .../{v0api => }/ServerConfiguration.java | 2 +- .../{v0api => }/ServerVariable.java | 2 +- .../{v0api => }/StringUtil.java | 2 +- .../{v0api => }/api/DefaultApi.java | 36 +- .../{v0api => }/api/ResourceManagerApi.java | 4 +- .../model/AbstractOpenApiSchema.java | 2 +- .../model/ContainerSearchResult.java | 4 +- .../model/CreateFolderPayload.java | 4 +- .../model/CreateProjectPayload.java | 4 +- .../{v0api => }/model/ErrorResponse.java | 4 +- .../{v0api => }/model/FolderResponse.java | 4 +- .../model/GetFolderDetailsResponse.java | 4 +- .../{v0api => }/model/GetProjectResponse.java | 4 +- .../{v0api => }/model/LifecycleState.java | 2 +- .../model/ListFoldersResponse.java | 4 +- .../model/ListFoldersResponseItemsInner.java | 4 +- .../model/ListOrganizationsResponse.java | 4 +- .../ListOrganizationsResponseItemsInner.java | 4 +- .../model/ListProjectsResponse.java | 4 +- .../{v0api => }/model/Member.java | 4 +- .../model/OrganizationResponse.java | 4 +- .../{v0api => }/model/Parent.java | 4 +- .../{v0api => }/model/ParentListInner.java | 4 +- .../model/PartialUpdateFolderPayload.java | 4 +- .../PartialUpdateOrganizationPayload.java | 4 +- .../model/PartialUpdateProjectPayload.java | 4 +- .../{v0api => }/model/Project.java | 4 +- .../v0api/wait/ResourcemanagerWait.java | 157 --------- .../{v0api => }/api/DefaultApiTest.java | 2 +- .../api/ResourceManagerApiTest.java | 2 +- .../v0api/wait/ResourcemanagerWaitTest.java | 309 ------------------ 41 files changed, 128 insertions(+), 571 deletions(-) rename services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/{v0api => }/ApiCallback.java (98%) rename services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/{v0api => }/ApiClient.java (99%) rename services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/{v0api => }/ApiResponse.java (98%) rename services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/{v0api => }/GzipRequestInterceptor.java (98%) rename services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/{v0api => }/JSON.java (89%) rename services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/{v0api => }/Pair.java (97%) rename services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/{v0api => }/ProgressRequestBody.java (98%) rename services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/{v0api => }/ProgressResponseBody.java (98%) rename services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/{v0api => }/ServerConfiguration.java (98%) rename services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/{v0api => }/ServerVariable.java (98%) rename services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/{v0api => }/StringUtil.java (98%) rename services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/{v0api => }/api/DefaultApi.java (99%) rename services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/{v0api => }/api/ResourceManagerApi.java (96%) rename services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/{v0api => }/model/AbstractOpenApiSchema.java (98%) rename services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/{v0api => }/model/ContainerSearchResult.java (99%) rename services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/{v0api => }/model/CreateFolderPayload.java (99%) rename services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/{v0api => }/model/CreateProjectPayload.java (99%) rename services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/{v0api => }/model/ErrorResponse.java (99%) rename services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/{v0api => }/model/FolderResponse.java (99%) rename services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/{v0api => }/model/GetFolderDetailsResponse.java (99%) rename services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/{v0api => }/model/GetProjectResponse.java (99%) rename services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/{v0api => }/model/LifecycleState.java (98%) rename services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/{v0api => }/model/ListFoldersResponse.java (99%) rename services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/{v0api => }/model/ListFoldersResponseItemsInner.java (99%) rename services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/{v0api => }/model/ListOrganizationsResponse.java (99%) rename services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/{v0api => }/model/ListOrganizationsResponseItemsInner.java (99%) rename services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/{v0api => }/model/ListProjectsResponse.java (99%) rename services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/{v0api => }/model/Member.java (99%) rename services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/{v0api => }/model/OrganizationResponse.java (99%) rename services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/{v0api => }/model/Parent.java (99%) rename services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/{v0api => }/model/ParentListInner.java (99%) rename services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/{v0api => }/model/PartialUpdateFolderPayload.java (99%) rename services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/{v0api => }/model/PartialUpdateOrganizationPayload.java (99%) rename services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/{v0api => }/model/PartialUpdateProjectPayload.java (99%) rename services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/{v0api => }/model/Project.java (99%) delete mode 100644 services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/wait/ResourcemanagerWait.java rename services/resourcemanager/src/test/java/cloud/stackit/sdk/resourcemanager/{v0api => }/api/DefaultApiTest.java (98%) rename services/resourcemanager/src/test/java/cloud/stackit/sdk/resourcemanager/{v0api => }/api/ResourceManagerApiTest.java (98%) delete mode 100644 services/resourcemanager/src/test/java/cloud/stackit/sdk/resourcemanager/v0api/wait/ResourcemanagerWaitTest.java diff --git a/services/resourcemanager/README.md b/services/resourcemanager/README.md index 4410d94c..bcac16bf 100644 --- a/services/resourcemanager/README.md +++ b/services/resourcemanager/README.md @@ -1,5 +1,31 @@ # STACKIT Java SDK for STACKIT Resource Manager API +- API version: 2.0 + +API v2 to manage resource containers - organizations, folders, projects incl. labels + +### Resource Management +STACKIT resource management handles the terms _Organization_, _Folder_, _Project_, _Label_, and the hierarchical structure between them. Technically, organizations, +folders, and projects are _Resource Containers_ to which a _Label_ can be attached to. The STACKIT _Resource Manager_ provides CRUD endpoints to query and to modify the state. + +### Organizations +STACKIT organizations are the base element to create and to use cloud-resources. An organization is bound to one customer account. Organizations have a lifecycle. +- Organizations are always the root node in resource hierarchy and do not have a parent + +### Projects +STACKIT projects are needed to use cloud-resources. Projects serve as wrapper for underlying technical structures and processes. Projects have a lifecycle. Projects compared to folders may have different policies. +- Projects are optional, but mandatory for cloud-resource usage +- A project can be created having either an organization, or a folder as parent +- A project must not have a project as parent +- Project names under the same parent must not be unique +- Root organization cannot be changed + +### Label +STACKIT labels are key-value pairs including a resource container reference. Labels can be defined and attached freely to resource containers by which resources can be organized and queried. +- Policy-based, immutable labels may exists + +For more information, please visit [https://support.stackit.cloud/servicedesk](https://support.stackit.cloud/servicedesk) + This package is part of the STACKIT Java SDK. For additional information, please visit the [GitHub repository](https://github.com/stackitcloud/stackit-sdk-java) of the SDK. ## Installation from Maven Central (recommended) diff --git a/services/resourcemanager/oas_commit b/services/resourcemanager/oas_commit index 4baf501c..3417bbd1 100644 --- a/services/resourcemanager/oas_commit +++ b/services/resourcemanager/oas_commit @@ -1 +1 @@ -1a1e006116e3d1246b63402b91590a65c62c3e33 +9918ffafed202332f2a1a5698aafa60eed59886f diff --git a/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/ApiCallback.java b/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/ApiCallback.java similarity index 98% rename from services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/ApiCallback.java rename to services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/ApiCallback.java index a40085b9..26e8213a 100644 --- a/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/ApiCallback.java +++ b/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/ApiCallback.java @@ -10,7 +10,7 @@ * Do not edit the class manually. */ -package cloud.stackit.sdk.resourcemanager.v0api; +package cloud.stackit.sdk.resourcemanager; import cloud.stackit.sdk.core.exception.ApiException; import java.util.List; diff --git a/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/ApiClient.java b/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/ApiClient.java similarity index 99% rename from services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/ApiClient.java rename to services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/ApiClient.java index 946849fb..e0b8a490 100644 --- a/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/ApiClient.java +++ b/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/ApiClient.java @@ -10,7 +10,7 @@ * Do not edit the class manually. */ -package cloud.stackit.sdk.resourcemanager.v0api; +package cloud.stackit.sdk.resourcemanager; import cloud.stackit.sdk.core.KeyFlowAuthenticator; import cloud.stackit.sdk.core.config.CoreConfiguration; @@ -357,7 +357,7 @@ public DateFormat getDateFormat() { * Setter for the field dateFormat. * * @param dateFormat a {@link java.text.DateFormat} object - * @return a {@link cloud.stackit.sdk.resourcemanager.v0api.ApiClient} object + * @return a {@link cloud.stackit.sdk.resourcemanager.ApiClient} object */ public ApiClient setDateFormat(DateFormat dateFormat) { JSON.setDateFormat(dateFormat); @@ -368,7 +368,7 @@ public ApiClient setDateFormat(DateFormat dateFormat) { * Set SqlDateFormat. * * @param dateFormat a {@link java.text.DateFormat} object - * @return a {@link cloud.stackit.sdk.resourcemanager.v0api.ApiClient} object + * @return a {@link cloud.stackit.sdk.resourcemanager.ApiClient} object */ public ApiClient setSqlDateFormat(DateFormat dateFormat) { JSON.setSqlDateFormat(dateFormat); @@ -379,7 +379,7 @@ public ApiClient setSqlDateFormat(DateFormat dateFormat) { * Set OffsetDateTimeFormat. * * @param dateFormat a {@link java.time.format.DateTimeFormatter} object - * @return a {@link cloud.stackit.sdk.resourcemanager.v0api.ApiClient} object + * @return a {@link cloud.stackit.sdk.resourcemanager.ApiClient} object */ public ApiClient setOffsetDateTimeFormat(DateTimeFormatter dateFormat) { JSON.setOffsetDateTimeFormat(dateFormat); @@ -390,7 +390,7 @@ public ApiClient setOffsetDateTimeFormat(DateTimeFormatter dateFormat) { * Set LocalDateFormat. * * @param dateFormat a {@link java.time.format.DateTimeFormatter} object - * @return a {@link cloud.stackit.sdk.resourcemanager.v0api.ApiClient} object + * @return a {@link cloud.stackit.sdk.resourcemanager.ApiClient} object */ public ApiClient setLocalDateFormat(DateTimeFormatter dateFormat) { JSON.setLocalDateFormat(dateFormat); @@ -401,7 +401,7 @@ public ApiClient setLocalDateFormat(DateTimeFormatter dateFormat) { * Set LenientOnJson. * * @param lenientOnJson a boolean - * @return a {@link cloud.stackit.sdk.resourcemanager.v0api.ApiClient} object + * @return a {@link cloud.stackit.sdk.resourcemanager.ApiClient} object */ public ApiClient setLenientOnJson(boolean lenientOnJson) { JSON.setLenientOnJson(lenientOnJson); diff --git a/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/ApiResponse.java b/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/ApiResponse.java similarity index 98% rename from services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/ApiResponse.java rename to services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/ApiResponse.java index 3df9a785..ad364ea7 100644 --- a/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/ApiResponse.java +++ b/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/ApiResponse.java @@ -10,7 +10,7 @@ * Do not edit the class manually. */ -package cloud.stackit.sdk.resourcemanager.v0api; +package cloud.stackit.sdk.resourcemanager; import java.util.List; import java.util.Map; diff --git a/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/GzipRequestInterceptor.java b/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/GzipRequestInterceptor.java similarity index 98% rename from services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/GzipRequestInterceptor.java rename to services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/GzipRequestInterceptor.java index 275bd322..414f2a62 100644 --- a/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/GzipRequestInterceptor.java +++ b/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/GzipRequestInterceptor.java @@ -10,7 +10,7 @@ * Do not edit the class manually. */ -package cloud.stackit.sdk.resourcemanager.v0api; +package cloud.stackit.sdk.resourcemanager; import java.io.IOException; import okhttp3.*; diff --git a/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/JSON.java b/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/JSON.java similarity index 89% rename from services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/JSON.java rename to services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/JSON.java index 3e065f68..fa02f07b 100644 --- a/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/JSON.java +++ b/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/JSON.java @@ -10,7 +10,7 @@ * Do not edit the class manually. */ -package cloud.stackit.sdk.resourcemanager.v0api; +package cloud.stackit.sdk.resourcemanager; import com.google.gson.Gson; import com.google.gson.GsonBuilder; @@ -96,65 +96,62 @@ private static Class getClassByDiscriminator( gsonBuilder.registerTypeAdapter(LocalDate.class, localDateTypeAdapter); gsonBuilder.registerTypeAdapter(byte[].class, byteArrayAdapter); gsonBuilder.registerTypeAdapterFactory( - new cloud.stackit.sdk.resourcemanager.v0api.model.ContainerSearchResult + new cloud.stackit.sdk.resourcemanager.model.ContainerSearchResult .CustomTypeAdapterFactory()); gsonBuilder.registerTypeAdapterFactory( - new cloud.stackit.sdk.resourcemanager.v0api.model.CreateFolderPayload + new cloud.stackit.sdk.resourcemanager.model.CreateFolderPayload .CustomTypeAdapterFactory()); gsonBuilder.registerTypeAdapterFactory( - new cloud.stackit.sdk.resourcemanager.v0api.model.CreateProjectPayload + new cloud.stackit.sdk.resourcemanager.model.CreateProjectPayload .CustomTypeAdapterFactory()); gsonBuilder.registerTypeAdapterFactory( - new cloud.stackit.sdk.resourcemanager.v0api.model.ErrorResponse + new cloud.stackit.sdk.resourcemanager.model.ErrorResponse .CustomTypeAdapterFactory()); gsonBuilder.registerTypeAdapterFactory( - new cloud.stackit.sdk.resourcemanager.v0api.model.FolderResponse + new cloud.stackit.sdk.resourcemanager.model.FolderResponse .CustomTypeAdapterFactory()); gsonBuilder.registerTypeAdapterFactory( - new cloud.stackit.sdk.resourcemanager.v0api.model.GetFolderDetailsResponse + new cloud.stackit.sdk.resourcemanager.model.GetFolderDetailsResponse .CustomTypeAdapterFactory()); gsonBuilder.registerTypeAdapterFactory( - new cloud.stackit.sdk.resourcemanager.v0api.model.GetProjectResponse + new cloud.stackit.sdk.resourcemanager.model.GetProjectResponse .CustomTypeAdapterFactory()); gsonBuilder.registerTypeAdapterFactory( - new cloud.stackit.sdk.resourcemanager.v0api.model.ListFoldersResponse + new cloud.stackit.sdk.resourcemanager.model.ListFoldersResponse .CustomTypeAdapterFactory()); gsonBuilder.registerTypeAdapterFactory( - new cloud.stackit.sdk.resourcemanager.v0api.model.ListFoldersResponseItemsInner + new cloud.stackit.sdk.resourcemanager.model.ListFoldersResponseItemsInner .CustomTypeAdapterFactory()); gsonBuilder.registerTypeAdapterFactory( - new cloud.stackit.sdk.resourcemanager.v0api.model.ListOrganizationsResponse + new cloud.stackit.sdk.resourcemanager.model.ListOrganizationsResponse .CustomTypeAdapterFactory()); gsonBuilder.registerTypeAdapterFactory( - new cloud.stackit.sdk.resourcemanager.v0api.model - .ListOrganizationsResponseItemsInner.CustomTypeAdapterFactory()); - gsonBuilder.registerTypeAdapterFactory( - new cloud.stackit.sdk.resourcemanager.v0api.model.ListProjectsResponse + new cloud.stackit.sdk.resourcemanager.model.ListOrganizationsResponseItemsInner .CustomTypeAdapterFactory()); gsonBuilder.registerTypeAdapterFactory( - new cloud.stackit.sdk.resourcemanager.v0api.model.Member + new cloud.stackit.sdk.resourcemanager.model.ListProjectsResponse .CustomTypeAdapterFactory()); gsonBuilder.registerTypeAdapterFactory( - new cloud.stackit.sdk.resourcemanager.v0api.model.OrganizationResponse - .CustomTypeAdapterFactory()); + new cloud.stackit.sdk.resourcemanager.model.Member.CustomTypeAdapterFactory()); gsonBuilder.registerTypeAdapterFactory( - new cloud.stackit.sdk.resourcemanager.v0api.model.Parent + new cloud.stackit.sdk.resourcemanager.model.OrganizationResponse .CustomTypeAdapterFactory()); gsonBuilder.registerTypeAdapterFactory( - new cloud.stackit.sdk.resourcemanager.v0api.model.ParentListInner - .CustomTypeAdapterFactory()); + new cloud.stackit.sdk.resourcemanager.model.Parent.CustomTypeAdapterFactory()); gsonBuilder.registerTypeAdapterFactory( - new cloud.stackit.sdk.resourcemanager.v0api.model.PartialUpdateFolderPayload + new cloud.stackit.sdk.resourcemanager.model.ParentListInner .CustomTypeAdapterFactory()); gsonBuilder.registerTypeAdapterFactory( - new cloud.stackit.sdk.resourcemanager.v0api.model.PartialUpdateOrganizationPayload + new cloud.stackit.sdk.resourcemanager.model.PartialUpdateFolderPayload .CustomTypeAdapterFactory()); gsonBuilder.registerTypeAdapterFactory( - new cloud.stackit.sdk.resourcemanager.v0api.model.PartialUpdateProjectPayload + new cloud.stackit.sdk.resourcemanager.model.PartialUpdateOrganizationPayload .CustomTypeAdapterFactory()); gsonBuilder.registerTypeAdapterFactory( - new cloud.stackit.sdk.resourcemanager.v0api.model.Project + new cloud.stackit.sdk.resourcemanager.model.PartialUpdateProjectPayload .CustomTypeAdapterFactory()); + gsonBuilder.registerTypeAdapterFactory( + new cloud.stackit.sdk.resourcemanager.model.Project.CustomTypeAdapterFactory()); gson = gsonBuilder.create(); } diff --git a/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/Pair.java b/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/Pair.java similarity index 97% rename from services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/Pair.java rename to services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/Pair.java index 1d077c60..d2454e91 100644 --- a/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/Pair.java +++ b/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/Pair.java @@ -10,7 +10,7 @@ * Do not edit the class manually. */ -package cloud.stackit.sdk.resourcemanager.v0api; +package cloud.stackit.sdk.resourcemanager; @javax.annotation.Generated( value = "org.openapitools.codegen.languages.JavaClientCodegen", diff --git a/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/ProgressRequestBody.java b/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/ProgressRequestBody.java similarity index 98% rename from services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/ProgressRequestBody.java rename to services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/ProgressRequestBody.java index f21cac16..028c4dcd 100644 --- a/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/ProgressRequestBody.java +++ b/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/ProgressRequestBody.java @@ -10,7 +10,7 @@ * Do not edit the class manually. */ -package cloud.stackit.sdk.resourcemanager.v0api; +package cloud.stackit.sdk.resourcemanager; import java.io.IOException; import okhttp3.MediaType; diff --git a/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/ProgressResponseBody.java b/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/ProgressResponseBody.java similarity index 98% rename from services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/ProgressResponseBody.java rename to services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/ProgressResponseBody.java index e052a79f..fd173d39 100644 --- a/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/ProgressResponseBody.java +++ b/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/ProgressResponseBody.java @@ -10,7 +10,7 @@ * Do not edit the class manually. */ -package cloud.stackit.sdk.resourcemanager.v0api; +package cloud.stackit.sdk.resourcemanager; import java.io.IOException; import okhttp3.MediaType; diff --git a/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/ServerConfiguration.java b/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/ServerConfiguration.java similarity index 98% rename from services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/ServerConfiguration.java rename to services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/ServerConfiguration.java index 966460c4..c5c43700 100644 --- a/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/ServerConfiguration.java +++ b/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/ServerConfiguration.java @@ -10,7 +10,7 @@ * Do not edit the class manually. */ -package cloud.stackit.sdk.resourcemanager.v0api; +package cloud.stackit.sdk.resourcemanager; import java.util.Map; diff --git a/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/ServerVariable.java b/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/ServerVariable.java similarity index 98% rename from services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/ServerVariable.java rename to services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/ServerVariable.java index f4d060f5..bd5c1983 100644 --- a/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/ServerVariable.java +++ b/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/ServerVariable.java @@ -10,7 +10,7 @@ * Do not edit the class manually. */ -package cloud.stackit.sdk.resourcemanager.v0api; +package cloud.stackit.sdk.resourcemanager; import java.util.HashSet; diff --git a/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/StringUtil.java b/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/StringUtil.java similarity index 98% rename from services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/StringUtil.java rename to services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/StringUtil.java index 3df153bc..a3263fab 100644 --- a/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/StringUtil.java +++ b/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/StringUtil.java @@ -10,7 +10,7 @@ * Do not edit the class manually. */ -package cloud.stackit.sdk.resourcemanager.v0api; +package cloud.stackit.sdk.resourcemanager; import java.util.Collection; import java.util.Iterator; diff --git a/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/api/DefaultApi.java b/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/api/DefaultApi.java similarity index 99% rename from services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/api/DefaultApi.java rename to services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/api/DefaultApi.java index c451849f..3488deea 100644 --- a/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/api/DefaultApi.java +++ b/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/api/DefaultApi.java @@ -10,27 +10,27 @@ * Do not edit the class manually. */ -package cloud.stackit.sdk.resourcemanager.v0api.api; +package cloud.stackit.sdk.resourcemanager.api; import cloud.stackit.sdk.core.config.CoreConfiguration; import cloud.stackit.sdk.core.exception.ApiException; -import cloud.stackit.sdk.resourcemanager.v0api.ApiCallback; -import cloud.stackit.sdk.resourcemanager.v0api.ApiClient; -import cloud.stackit.sdk.resourcemanager.v0api.ApiResponse; -import cloud.stackit.sdk.resourcemanager.v0api.Pair; -import cloud.stackit.sdk.resourcemanager.v0api.model.CreateFolderPayload; -import cloud.stackit.sdk.resourcemanager.v0api.model.CreateProjectPayload; -import cloud.stackit.sdk.resourcemanager.v0api.model.FolderResponse; -import cloud.stackit.sdk.resourcemanager.v0api.model.GetFolderDetailsResponse; -import cloud.stackit.sdk.resourcemanager.v0api.model.GetProjectResponse; -import cloud.stackit.sdk.resourcemanager.v0api.model.ListFoldersResponse; -import cloud.stackit.sdk.resourcemanager.v0api.model.ListOrganizationsResponse; -import cloud.stackit.sdk.resourcemanager.v0api.model.ListProjectsResponse; -import cloud.stackit.sdk.resourcemanager.v0api.model.OrganizationResponse; -import cloud.stackit.sdk.resourcemanager.v0api.model.PartialUpdateFolderPayload; -import cloud.stackit.sdk.resourcemanager.v0api.model.PartialUpdateOrganizationPayload; -import cloud.stackit.sdk.resourcemanager.v0api.model.PartialUpdateProjectPayload; -import cloud.stackit.sdk.resourcemanager.v0api.model.Project; +import cloud.stackit.sdk.resourcemanager.ApiCallback; +import cloud.stackit.sdk.resourcemanager.ApiClient; +import cloud.stackit.sdk.resourcemanager.ApiResponse; +import cloud.stackit.sdk.resourcemanager.Pair; +import cloud.stackit.sdk.resourcemanager.model.CreateFolderPayload; +import cloud.stackit.sdk.resourcemanager.model.CreateProjectPayload; +import cloud.stackit.sdk.resourcemanager.model.FolderResponse; +import cloud.stackit.sdk.resourcemanager.model.GetFolderDetailsResponse; +import cloud.stackit.sdk.resourcemanager.model.GetProjectResponse; +import cloud.stackit.sdk.resourcemanager.model.ListFoldersResponse; +import cloud.stackit.sdk.resourcemanager.model.ListOrganizationsResponse; +import cloud.stackit.sdk.resourcemanager.model.ListProjectsResponse; +import cloud.stackit.sdk.resourcemanager.model.OrganizationResponse; +import cloud.stackit.sdk.resourcemanager.model.PartialUpdateFolderPayload; +import cloud.stackit.sdk.resourcemanager.model.PartialUpdateOrganizationPayload; +import cloud.stackit.sdk.resourcemanager.model.PartialUpdateProjectPayload; +import cloud.stackit.sdk.resourcemanager.model.Project; import com.google.gson.reflect.TypeToken; import java.io.IOException; import java.lang.reflect.Type; diff --git a/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/api/ResourceManagerApi.java b/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/api/ResourceManagerApi.java similarity index 96% rename from services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/api/ResourceManagerApi.java rename to services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/api/ResourceManagerApi.java index ccf15e3b..3761a5b9 100644 --- a/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/api/ResourceManagerApi.java +++ b/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/api/ResourceManagerApi.java @@ -10,7 +10,7 @@ * Do not edit the class manually. */ -package cloud.stackit.sdk.resourcemanager.v0api.api; +package cloud.stackit.sdk.resourcemanager.api; import cloud.stackit.sdk.core.config.CoreConfiguration; import java.io.IOException; @@ -33,7 +33,7 @@ public ResourceManagerApi() throws IOException { * *

For production use consider using the constructor with the OkHttpClient parameter. * - * @param configuration your STACKIT SDK CoreConfiguration + * @param config your STACKIT SDK CoreConfiguration * @throws IOException */ public ResourceManagerApi(CoreConfiguration configuration) throws IOException { diff --git a/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/model/AbstractOpenApiSchema.java b/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/model/AbstractOpenApiSchema.java similarity index 98% rename from services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/model/AbstractOpenApiSchema.java rename to services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/model/AbstractOpenApiSchema.java index 6dfeffbb..18c43127 100644 --- a/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/model/AbstractOpenApiSchema.java +++ b/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/model/AbstractOpenApiSchema.java @@ -10,7 +10,7 @@ * Do not edit the class manually. */ -package cloud.stackit.sdk.resourcemanager.v0api.model; +package cloud.stackit.sdk.resourcemanager.model; import java.util.Map; import java.util.Objects; diff --git a/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/model/ContainerSearchResult.java b/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/model/ContainerSearchResult.java similarity index 99% rename from services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/model/ContainerSearchResult.java rename to services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/model/ContainerSearchResult.java index 0d8a3007..6ef8e9ec 100644 --- a/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/model/ContainerSearchResult.java +++ b/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/model/ContainerSearchResult.java @@ -10,9 +10,9 @@ * Do not edit the class manually. */ -package cloud.stackit.sdk.resourcemanager.v0api.model; +package cloud.stackit.sdk.resourcemanager.model; -import cloud.stackit.sdk.resourcemanager.v0api.JSON; +import cloud.stackit.sdk.resourcemanager.JSON; import com.google.gson.Gson; import com.google.gson.JsonElement; import com.google.gson.JsonObject; diff --git a/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/model/CreateFolderPayload.java b/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/model/CreateFolderPayload.java similarity index 99% rename from services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/model/CreateFolderPayload.java rename to services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/model/CreateFolderPayload.java index 203f7c0a..7889d90a 100644 --- a/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/model/CreateFolderPayload.java +++ b/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/model/CreateFolderPayload.java @@ -10,9 +10,9 @@ * Do not edit the class manually. */ -package cloud.stackit.sdk.resourcemanager.v0api.model; +package cloud.stackit.sdk.resourcemanager.model; -import cloud.stackit.sdk.resourcemanager.v0api.JSON; +import cloud.stackit.sdk.resourcemanager.JSON; import com.google.gson.Gson; import com.google.gson.JsonArray; import com.google.gson.JsonElement; diff --git a/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/model/CreateProjectPayload.java b/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/model/CreateProjectPayload.java similarity index 99% rename from services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/model/CreateProjectPayload.java rename to services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/model/CreateProjectPayload.java index aa01bb7c..60be49a6 100644 --- a/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/model/CreateProjectPayload.java +++ b/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/model/CreateProjectPayload.java @@ -10,9 +10,9 @@ * Do not edit the class manually. */ -package cloud.stackit.sdk.resourcemanager.v0api.model; +package cloud.stackit.sdk.resourcemanager.model; -import cloud.stackit.sdk.resourcemanager.v0api.JSON; +import cloud.stackit.sdk.resourcemanager.JSON; import com.google.gson.Gson; import com.google.gson.JsonArray; import com.google.gson.JsonElement; diff --git a/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/model/ErrorResponse.java b/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/model/ErrorResponse.java similarity index 99% rename from services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/model/ErrorResponse.java rename to services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/model/ErrorResponse.java index 7e02af5e..41b63b62 100644 --- a/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/model/ErrorResponse.java +++ b/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/model/ErrorResponse.java @@ -10,9 +10,9 @@ * Do not edit the class manually. */ -package cloud.stackit.sdk.resourcemanager.v0api.model; +package cloud.stackit.sdk.resourcemanager.model; -import cloud.stackit.sdk.resourcemanager.v0api.JSON; +import cloud.stackit.sdk.resourcemanager.JSON; import com.google.gson.Gson; import com.google.gson.JsonElement; import com.google.gson.JsonObject; diff --git a/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/model/FolderResponse.java b/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/model/FolderResponse.java similarity index 99% rename from services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/model/FolderResponse.java rename to services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/model/FolderResponse.java index 793a28ae..7fd7eb16 100644 --- a/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/model/FolderResponse.java +++ b/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/model/FolderResponse.java @@ -10,9 +10,9 @@ * Do not edit the class manually. */ -package cloud.stackit.sdk.resourcemanager.v0api.model; +package cloud.stackit.sdk.resourcemanager.model; -import cloud.stackit.sdk.resourcemanager.v0api.JSON; +import cloud.stackit.sdk.resourcemanager.JSON; import com.google.gson.Gson; import com.google.gson.JsonElement; import com.google.gson.JsonObject; diff --git a/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/model/GetFolderDetailsResponse.java b/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/model/GetFolderDetailsResponse.java similarity index 99% rename from services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/model/GetFolderDetailsResponse.java rename to services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/model/GetFolderDetailsResponse.java index 0bc3e581..6abae9dd 100644 --- a/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/model/GetFolderDetailsResponse.java +++ b/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/model/GetFolderDetailsResponse.java @@ -10,9 +10,9 @@ * Do not edit the class manually. */ -package cloud.stackit.sdk.resourcemanager.v0api.model; +package cloud.stackit.sdk.resourcemanager.model; -import cloud.stackit.sdk.resourcemanager.v0api.JSON; +import cloud.stackit.sdk.resourcemanager.JSON; import com.google.gson.Gson; import com.google.gson.JsonArray; import com.google.gson.JsonElement; diff --git a/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/model/GetProjectResponse.java b/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/model/GetProjectResponse.java similarity index 99% rename from services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/model/GetProjectResponse.java rename to services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/model/GetProjectResponse.java index 7aeee6a8..54d4b3e3 100644 --- a/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/model/GetProjectResponse.java +++ b/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/model/GetProjectResponse.java @@ -10,9 +10,9 @@ * Do not edit the class manually. */ -package cloud.stackit.sdk.resourcemanager.v0api.model; +package cloud.stackit.sdk.resourcemanager.model; -import cloud.stackit.sdk.resourcemanager.v0api.JSON; +import cloud.stackit.sdk.resourcemanager.JSON; import com.google.gson.Gson; import com.google.gson.JsonArray; import com.google.gson.JsonElement; diff --git a/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/model/LifecycleState.java b/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/model/LifecycleState.java similarity index 98% rename from services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/model/LifecycleState.java rename to services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/model/LifecycleState.java index 0b64e593..4a342846 100644 --- a/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/model/LifecycleState.java +++ b/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/model/LifecycleState.java @@ -10,7 +10,7 @@ * Do not edit the class manually. */ -package cloud.stackit.sdk.resourcemanager.v0api.model; +package cloud.stackit.sdk.resourcemanager.model; import com.google.gson.JsonElement; import com.google.gson.TypeAdapter; diff --git a/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/model/ListFoldersResponse.java b/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/model/ListFoldersResponse.java similarity index 99% rename from services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/model/ListFoldersResponse.java rename to services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/model/ListFoldersResponse.java index ffe9e0aa..ef487873 100644 --- a/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/model/ListFoldersResponse.java +++ b/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/model/ListFoldersResponse.java @@ -10,9 +10,9 @@ * Do not edit the class manually. */ -package cloud.stackit.sdk.resourcemanager.v0api.model; +package cloud.stackit.sdk.resourcemanager.model; -import cloud.stackit.sdk.resourcemanager.v0api.JSON; +import cloud.stackit.sdk.resourcemanager.JSON; import com.google.gson.Gson; import com.google.gson.JsonArray; import com.google.gson.JsonElement; diff --git a/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/model/ListFoldersResponseItemsInner.java b/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/model/ListFoldersResponseItemsInner.java similarity index 99% rename from services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/model/ListFoldersResponseItemsInner.java rename to services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/model/ListFoldersResponseItemsInner.java index 4daa3047..7442378f 100644 --- a/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/model/ListFoldersResponseItemsInner.java +++ b/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/model/ListFoldersResponseItemsInner.java @@ -10,9 +10,9 @@ * Do not edit the class manually. */ -package cloud.stackit.sdk.resourcemanager.v0api.model; +package cloud.stackit.sdk.resourcemanager.model; -import cloud.stackit.sdk.resourcemanager.v0api.JSON; +import cloud.stackit.sdk.resourcemanager.JSON; import com.google.gson.Gson; import com.google.gson.JsonElement; import com.google.gson.JsonObject; diff --git a/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/model/ListOrganizationsResponse.java b/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/model/ListOrganizationsResponse.java similarity index 99% rename from services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/model/ListOrganizationsResponse.java rename to services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/model/ListOrganizationsResponse.java index f41a93a1..183cc73c 100644 --- a/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/model/ListOrganizationsResponse.java +++ b/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/model/ListOrganizationsResponse.java @@ -10,9 +10,9 @@ * Do not edit the class manually. */ -package cloud.stackit.sdk.resourcemanager.v0api.model; +package cloud.stackit.sdk.resourcemanager.model; -import cloud.stackit.sdk.resourcemanager.v0api.JSON; +import cloud.stackit.sdk.resourcemanager.JSON; import com.google.gson.Gson; import com.google.gson.JsonArray; import com.google.gson.JsonElement; diff --git a/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/model/ListOrganizationsResponseItemsInner.java b/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/model/ListOrganizationsResponseItemsInner.java similarity index 99% rename from services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/model/ListOrganizationsResponseItemsInner.java rename to services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/model/ListOrganizationsResponseItemsInner.java index ef433c9c..73d88369 100644 --- a/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/model/ListOrganizationsResponseItemsInner.java +++ b/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/model/ListOrganizationsResponseItemsInner.java @@ -10,9 +10,9 @@ * Do not edit the class manually. */ -package cloud.stackit.sdk.resourcemanager.v0api.model; +package cloud.stackit.sdk.resourcemanager.model; -import cloud.stackit.sdk.resourcemanager.v0api.JSON; +import cloud.stackit.sdk.resourcemanager.JSON; import com.google.gson.Gson; import com.google.gson.JsonElement; import com.google.gson.JsonObject; diff --git a/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/model/ListProjectsResponse.java b/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/model/ListProjectsResponse.java similarity index 99% rename from services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/model/ListProjectsResponse.java rename to services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/model/ListProjectsResponse.java index 8f045135..a8387449 100644 --- a/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/model/ListProjectsResponse.java +++ b/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/model/ListProjectsResponse.java @@ -10,9 +10,9 @@ * Do not edit the class manually. */ -package cloud.stackit.sdk.resourcemanager.v0api.model; +package cloud.stackit.sdk.resourcemanager.model; -import cloud.stackit.sdk.resourcemanager.v0api.JSON; +import cloud.stackit.sdk.resourcemanager.JSON; import com.google.gson.Gson; import com.google.gson.JsonArray; import com.google.gson.JsonElement; diff --git a/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/model/Member.java b/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/model/Member.java similarity index 99% rename from services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/model/Member.java rename to services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/model/Member.java index 16487528..727ad9f9 100644 --- a/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/model/Member.java +++ b/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/model/Member.java @@ -10,9 +10,9 @@ * Do not edit the class manually. */ -package cloud.stackit.sdk.resourcemanager.v0api.model; +package cloud.stackit.sdk.resourcemanager.model; -import cloud.stackit.sdk.resourcemanager.v0api.JSON; +import cloud.stackit.sdk.resourcemanager.JSON; import com.google.gson.Gson; import com.google.gson.JsonElement; import com.google.gson.JsonObject; diff --git a/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/model/OrganizationResponse.java b/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/model/OrganizationResponse.java similarity index 99% rename from services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/model/OrganizationResponse.java rename to services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/model/OrganizationResponse.java index 382971d5..940db582 100644 --- a/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/model/OrganizationResponse.java +++ b/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/model/OrganizationResponse.java @@ -10,9 +10,9 @@ * Do not edit the class manually. */ -package cloud.stackit.sdk.resourcemanager.v0api.model; +package cloud.stackit.sdk.resourcemanager.model; -import cloud.stackit.sdk.resourcemanager.v0api.JSON; +import cloud.stackit.sdk.resourcemanager.JSON; import com.google.gson.Gson; import com.google.gson.JsonElement; import com.google.gson.JsonObject; diff --git a/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/model/Parent.java b/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/model/Parent.java similarity index 99% rename from services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/model/Parent.java rename to services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/model/Parent.java index 6d863793..af9469fb 100644 --- a/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/model/Parent.java +++ b/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/model/Parent.java @@ -10,9 +10,9 @@ * Do not edit the class manually. */ -package cloud.stackit.sdk.resourcemanager.v0api.model; +package cloud.stackit.sdk.resourcemanager.model; -import cloud.stackit.sdk.resourcemanager.v0api.JSON; +import cloud.stackit.sdk.resourcemanager.JSON; import com.google.gson.Gson; import com.google.gson.JsonElement; import com.google.gson.JsonObject; diff --git a/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/model/ParentListInner.java b/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/model/ParentListInner.java similarity index 99% rename from services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/model/ParentListInner.java rename to services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/model/ParentListInner.java index be82dd9d..f02f204b 100644 --- a/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/model/ParentListInner.java +++ b/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/model/ParentListInner.java @@ -10,9 +10,9 @@ * Do not edit the class manually. */ -package cloud.stackit.sdk.resourcemanager.v0api.model; +package cloud.stackit.sdk.resourcemanager.model; -import cloud.stackit.sdk.resourcemanager.v0api.JSON; +import cloud.stackit.sdk.resourcemanager.JSON; import com.google.gson.Gson; import com.google.gson.JsonElement; import com.google.gson.JsonObject; diff --git a/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/model/PartialUpdateFolderPayload.java b/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/model/PartialUpdateFolderPayload.java similarity index 99% rename from services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/model/PartialUpdateFolderPayload.java rename to services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/model/PartialUpdateFolderPayload.java index 807b2d69..265319a5 100644 --- a/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/model/PartialUpdateFolderPayload.java +++ b/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/model/PartialUpdateFolderPayload.java @@ -10,9 +10,9 @@ * Do not edit the class manually. */ -package cloud.stackit.sdk.resourcemanager.v0api.model; +package cloud.stackit.sdk.resourcemanager.model; -import cloud.stackit.sdk.resourcemanager.v0api.JSON; +import cloud.stackit.sdk.resourcemanager.JSON; import com.google.gson.Gson; import com.google.gson.JsonElement; import com.google.gson.JsonObject; diff --git a/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/model/PartialUpdateOrganizationPayload.java b/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/model/PartialUpdateOrganizationPayload.java similarity index 99% rename from services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/model/PartialUpdateOrganizationPayload.java rename to services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/model/PartialUpdateOrganizationPayload.java index 2d8e54cd..a6183c91 100644 --- a/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/model/PartialUpdateOrganizationPayload.java +++ b/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/model/PartialUpdateOrganizationPayload.java @@ -10,9 +10,9 @@ * Do not edit the class manually. */ -package cloud.stackit.sdk.resourcemanager.v0api.model; +package cloud.stackit.sdk.resourcemanager.model; -import cloud.stackit.sdk.resourcemanager.v0api.JSON; +import cloud.stackit.sdk.resourcemanager.JSON; import com.google.gson.Gson; import com.google.gson.JsonElement; import com.google.gson.JsonObject; diff --git a/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/model/PartialUpdateProjectPayload.java b/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/model/PartialUpdateProjectPayload.java similarity index 99% rename from services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/model/PartialUpdateProjectPayload.java rename to services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/model/PartialUpdateProjectPayload.java index cc70d147..2ca15858 100644 --- a/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/model/PartialUpdateProjectPayload.java +++ b/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/model/PartialUpdateProjectPayload.java @@ -10,9 +10,9 @@ * Do not edit the class manually. */ -package cloud.stackit.sdk.resourcemanager.v0api.model; +package cloud.stackit.sdk.resourcemanager.model; -import cloud.stackit.sdk.resourcemanager.v0api.JSON; +import cloud.stackit.sdk.resourcemanager.JSON; import com.google.gson.Gson; import com.google.gson.JsonElement; import com.google.gson.JsonObject; diff --git a/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/model/Project.java b/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/model/Project.java similarity index 99% rename from services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/model/Project.java rename to services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/model/Project.java index c97f7f66..94baf91a 100644 --- a/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/model/Project.java +++ b/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/model/Project.java @@ -10,9 +10,9 @@ * Do not edit the class manually. */ -package cloud.stackit.sdk.resourcemanager.v0api.model; +package cloud.stackit.sdk.resourcemanager.model; -import cloud.stackit.sdk.resourcemanager.v0api.JSON; +import cloud.stackit.sdk.resourcemanager.JSON; import com.google.gson.Gson; import com.google.gson.JsonElement; import com.google.gson.JsonObject; diff --git a/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/wait/ResourcemanagerWait.java b/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/wait/ResourcemanagerWait.java deleted file mode 100644 index c5ae8a5a..00000000 --- a/services/resourcemanager/src/main/java/cloud/stackit/sdk/resourcemanager/v0api/wait/ResourcemanagerWait.java +++ /dev/null @@ -1,157 +0,0 @@ -package cloud.stackit.sdk.resourcemanager.v0api.wait; - -import cloud.stackit.sdk.core.exception.ApiException; -import cloud.stackit.sdk.core.wait.AsyncActionHandler; -import cloud.stackit.sdk.core.wait.AsyncActionHandler.AsyncActionResult; -import cloud.stackit.sdk.core.wait.CheckFunction; -import cloud.stackit.sdk.resourcemanager.v0api.api.ResourceManagerApi; -import cloud.stackit.sdk.resourcemanager.v0api.model.GetProjectResponse; -import cloud.stackit.sdk.resourcemanager.v0api.model.LifecycleState; -import java.util.concurrent.TimeUnit; - -public final class ResourcemanagerWait { - - /** Prevent instantiation */ - private ResourcemanagerWait() {} - - /** - * createProjectWaitHandler will wait for project creation. Uses the default values for - * sleepBeforeWait (1 min) and timeout (45 min). - * - * @param apiClient - * @param containerId - * @return - */ - public static AsyncActionHandler createProjectWaitHandler( - ResourceManagerApi apiClient, String containerId) throws ApiException { - return createProjectWaitHandler(apiClient, containerId, 1, 45); - } - - /** - * createProjectWaitHandler will wait for project creation - * - * @param apiClient - * @param containerId - * @param sleepBeforeWait in Minutes - * @param timeout in Minutes - * @return - */ - public static AsyncActionHandler createProjectWaitHandler( - ResourceManagerApi apiClient, String containerId, long sleepBeforeWait, long timeout) - throws ApiException { - return createOrUpdateProjectWaitHandler(apiClient, containerId, sleepBeforeWait, timeout); - } - - /** - * updateProjectWaitHandler will wait until the project was updated. Uses the default values for - * sleepBeforeWait (1 min) and timeout (45 min). - * - * @param apiClient - * @param containerId - * @return - */ - public static AsyncActionHandler updateProjectWaitHandler( - ResourceManagerApi apiClient, String containerId) throws ApiException { - return updateProjectWaitHandler(apiClient, containerId, 1, 45); - } - - /** - * updateProjectWaitHandler will wait until the project was updated. - * - * @param apiClient - * @param containerId - * @param sleepBeforeWait in Minutes - * @param timeout in Minutes - * @return - */ - public static AsyncActionHandler updateProjectWaitHandler( - ResourceManagerApi apiClient, String containerId, long sleepBeforeWait, long timeout) - throws ApiException { - return createOrUpdateProjectWaitHandler(apiClient, containerId, sleepBeforeWait, timeout); - } - - /** - * Private helper function for create and update wait handler since the logic is the same. - * - * @param apiClient - * @param containerId - * @param sleepBeforeWait - * @param timeout - * @return - * @throws ApiException - */ - private static AsyncActionHandler createOrUpdateProjectWaitHandler( - ResourceManagerApi apiClient, String containerId, long sleepBeforeWait, long timeout) - throws ApiException { - CheckFunction> checkFn = - () -> { - GetProjectResponse projectResponse = apiClient.getProject(containerId, false); - if (projectResponse.getContainerId().equals(containerId) - && projectResponse.getLifecycleState() == LifecycleState.ACTIVE) { - return new AsyncActionResult<>(true, projectResponse); - } - - if (projectResponse.getContainerId().equals(containerId) - && projectResponse.getLifecycleState() == LifecycleState.CREATING) { - return new AsyncActionResult<>(false, null); - } - // An invalid state was received which should not be possible. - throw new IllegalStateException( - "Creation failed: received project state '" - + projectResponse.getLifecycleState().getValue() - + "'"); - }; - AsyncActionHandler handler = new AsyncActionHandler<>(checkFn); - handler.setSleepBeforeWait(sleepBeforeWait, TimeUnit.MINUTES); - handler.setTimeout(timeout, TimeUnit.MINUTES); - return handler; - } - - /** - * deleteProjectWaitHandler will wait for project deletion. Uses the deault value for timeout - * (15 min). - * - * @param apiClient - * @param containerId - * @return - */ - public static AsyncActionHandler deleteProjectWaitHandler( - ResourceManagerApi apiClient, String containerId) { - return deleteProjectWaitHandler(apiClient, containerId, 15); - } - - /** - * deleteProjectWaitHandler will wait for project deletion - * - * @param apiClient - * @param containerId - * @param timeout in minutes - * @return - */ - public static AsyncActionHandler deleteProjectWaitHandler( - ResourceManagerApi apiClient, String containerId, long timeout) { - CheckFunction> checkFn = - () -> { - try { - GetProjectResponse projectResponse = - apiClient.getProject(containerId, false); - if (projectResponse.getContainerId().equals(containerId) - && projectResponse.getLifecycleState() == LifecycleState.DELETING) { - return new AsyncActionResult<>(true, null); - } - - // The call does throw an exception for HttpURLConnection.HTTP_NOT_FOUND and - // HttpURLConnection.HTTP_FORBIDDEN - return new AsyncActionResult<>(false, null); - } catch (ApiException e) { - if (AsyncActionHandler.checkResourceGoneStatusCodes(e)) { - return new AsyncActionResult<>(true, null); - } - throw e; - } - }; - AsyncActionHandler handler = new AsyncActionHandler<>(checkFn); - handler.setTimeout(timeout, TimeUnit.MINUTES); - return handler; - } -} diff --git a/services/resourcemanager/src/test/java/cloud/stackit/sdk/resourcemanager/v0api/api/DefaultApiTest.java b/services/resourcemanager/src/test/java/cloud/stackit/sdk/resourcemanager/api/DefaultApiTest.java similarity index 98% rename from services/resourcemanager/src/test/java/cloud/stackit/sdk/resourcemanager/v0api/api/DefaultApiTest.java rename to services/resourcemanager/src/test/java/cloud/stackit/sdk/resourcemanager/api/DefaultApiTest.java index a99e2175..8c393451 100644 --- a/services/resourcemanager/src/test/java/cloud/stackit/sdk/resourcemanager/v0api/api/DefaultApiTest.java +++ b/services/resourcemanager/src/test/java/cloud/stackit/sdk/resourcemanager/api/DefaultApiTest.java @@ -10,7 +10,7 @@ * Do not edit the class manually. */ -package cloud.stackit.sdk.resourcemanager.v0api; +package cloud.stackit.sdk.resourcemanager; import cloud.stackit.sdk.core.KeyFlowAuthenticator; import cloud.stackit.sdk.core.auth.SetupAuth; diff --git a/services/resourcemanager/src/test/java/cloud/stackit/sdk/resourcemanager/v0api/api/ResourceManagerApiTest.java b/services/resourcemanager/src/test/java/cloud/stackit/sdk/resourcemanager/api/ResourceManagerApiTest.java similarity index 98% rename from services/resourcemanager/src/test/java/cloud/stackit/sdk/resourcemanager/v0api/api/ResourceManagerApiTest.java rename to services/resourcemanager/src/test/java/cloud/stackit/sdk/resourcemanager/api/ResourceManagerApiTest.java index 97ba399f..85d916dc 100644 --- a/services/resourcemanager/src/test/java/cloud/stackit/sdk/resourcemanager/v0api/api/ResourceManagerApiTest.java +++ b/services/resourcemanager/src/test/java/cloud/stackit/sdk/resourcemanager/api/ResourceManagerApiTest.java @@ -10,7 +10,7 @@ * Do not edit the class manually. */ -package cloud.stackit.sdk.resourcemanager.v0api.api; +package cloud.stackit.sdk.resourcemanager.api; import cloud.stackit.sdk.core.KeyFlowAuthenticator; import cloud.stackit.sdk.core.auth.SetupAuth; diff --git a/services/resourcemanager/src/test/java/cloud/stackit/sdk/resourcemanager/v0api/wait/ResourcemanagerWaitTest.java b/services/resourcemanager/src/test/java/cloud/stackit/sdk/resourcemanager/v0api/wait/ResourcemanagerWaitTest.java deleted file mode 100644 index c83e6fe1..00000000 --- a/services/resourcemanager/src/test/java/cloud/stackit/sdk/resourcemanager/v0api/wait/ResourcemanagerWaitTest.java +++ /dev/null @@ -1,309 +0,0 @@ -package cloud.stackit.sdk.resourcemanager.v0api.wait; - -import static org.junit.jupiter.api.Assertions.*; -import static org.mockito.Mockito.*; - -import cloud.stackit.sdk.core.exception.ApiException; -import cloud.stackit.sdk.core.wait.AsyncActionHandler; -import cloud.stackit.sdk.resourcemanager.v0api.api.ResourceManagerApi; -import cloud.stackit.sdk.resourcemanager.v0api.model.GetProjectResponse; -import cloud.stackit.sdk.resourcemanager.v0api.model.LifecycleState; -import java.net.HttpURLConnection; -import java.util.concurrent.TimeUnit; -import java.util.concurrent.atomic.AtomicInteger; -import org.junit.jupiter.api.BeforeEach; -import org.junit.jupiter.api.Test; -import org.mockito.Mock; -import org.mockito.MockitoAnnotations; - -/** - * @SuppressWarnings is used here to suppress the PMD.TooManyMethods warning because this class is - * an intentional testing class with many tests. - */ -@SuppressWarnings("PMD.TooManyMethods") -class ResourcemanagerWaitTest { - - @Mock private ResourceManagerApi apiClient; - - private static final String CONTAINER_ID = "MY_TEST_CONTAINER"; - private static final int SECOND_CALL = 1; - - @BeforeEach - public void setUp() { - MockitoAnnotations.openMocks(this); - } - - @Test - void testCreateProjectSuccess() throws Exception { - // First call returns "CREATING", second call returns "ACTIVE" - GetProjectResponse creatingResponse = new GetProjectResponse(); - creatingResponse.setContainerId(CONTAINER_ID); - creatingResponse.setLifecycleState(LifecycleState.CREATING); - - GetProjectResponse activeResponse = new GetProjectResponse(); - activeResponse.setContainerId(CONTAINER_ID); - activeResponse.setLifecycleState(LifecycleState.ACTIVE); - - AtomicInteger callCount = new AtomicInteger(0); - when(apiClient.getProject(CONTAINER_ID, false)) - .thenAnswer( - invocation -> { - if (callCount.getAndIncrement() < SECOND_CALL) { - return creatingResponse; - } - return activeResponse; - }); - - AsyncActionHandler handler = - ResourcemanagerWait.createProjectWaitHandler(apiClient, CONTAINER_ID); - handler.setSleepBeforeWait(0, TimeUnit.SECONDS); - handler.setThrottle(10, TimeUnit.MILLISECONDS); - handler.setTimeout(2, TimeUnit.SECONDS); - - GetProjectResponse result = handler.waitWithContextAsync().get(); - - assertNotNull(result); - verify(apiClient, times(2)).getProject(CONTAINER_ID, false); - } - - @Test - void testCreateProjectTimeout() throws Exception { - // Always return "CREATING" to trigger the timeout - GetProjectResponse creatingResponse = new GetProjectResponse(); - creatingResponse.setContainerId(CONTAINER_ID); - creatingResponse.setLifecycleState(LifecycleState.CREATING); - when(apiClient.getProject(CONTAINER_ID, false)).thenReturn(creatingResponse); - - AsyncActionHandler handler = - ResourcemanagerWait.createProjectWaitHandler(apiClient, CONTAINER_ID); - handler.setSleepBeforeWait(0, TimeUnit.SECONDS); - handler.setThrottle(10, TimeUnit.MILLISECONDS); - handler.setTimeout(500, TimeUnit.MILLISECONDS); - - Exception thrown = - assertThrows(Exception.class, () -> handler.waitWithContextAsync().get(), ""); - assertTrue(thrown.getMessage().contains(AsyncActionHandler.TIMEOUT_ERROR_MESSAGE)); - } - - // GenericOpenAPIError not in RetryHttpErrorStatusCodes - @Test - void testCreateProjectOpenAPIError() throws Exception { - // Trigger API Exception which is not in RetryHttpErrorStatusCodes - ApiException apiException = new ApiException(409, ""); - when(apiClient.getProject(CONTAINER_ID, false)).thenThrow(apiException); - - AsyncActionHandler handler = - ResourcemanagerWait.createProjectWaitHandler(apiClient, CONTAINER_ID); - handler.setSleepBeforeWait(0, TimeUnit.SECONDS); - handler.setThrottle(10, TimeUnit.MILLISECONDS); - handler.setTimeout(100, TimeUnit.MILLISECONDS); - handler.setTempErrRetryLimit(2); - - Exception thrown = - assertThrows( - Exception.class, - () -> handler.waitWithContextAsync().get(), - apiException.getMessage()); - assertTrue(thrown.getMessage().contains(AsyncActionHandler.TIMEOUT_ERROR_MESSAGE)); - } - - @Test - void testUpdateProjectSuccess() throws Exception { - // First call returns "CREATING", second call returns "ACTIVE" - GetProjectResponse updateResponse = new GetProjectResponse(); - updateResponse.setContainerId(CONTAINER_ID); - updateResponse.setLifecycleState(LifecycleState.CREATING); - - GetProjectResponse activeResponse = new GetProjectResponse(); - activeResponse.setContainerId(CONTAINER_ID); - activeResponse.setLifecycleState(LifecycleState.ACTIVE); - - AtomicInteger callCount = new AtomicInteger(0); - when(apiClient.getProject(CONTAINER_ID, false)) - .thenAnswer( - invocation -> { - if (callCount.getAndIncrement() < SECOND_CALL) { - return updateResponse; - } - return activeResponse; - }); - - AsyncActionHandler handler = - ResourcemanagerWait.updateProjectWaitHandler(apiClient, CONTAINER_ID); - handler.setSleepBeforeWait(0, TimeUnit.SECONDS); - handler.setThrottle(10, TimeUnit.MILLISECONDS); - handler.setTimeout(2, TimeUnit.SECONDS); - - GetProjectResponse result = handler.waitWithContextAsync().get(); - - assertNotNull(result); - verify(apiClient, times(2)).getProject(CONTAINER_ID, false); - } - - @Test - void testUpdateProjectTimeout() throws Exception { - // Always return "CREATING" to trigger the timeout - GetProjectResponse updateResponse = new GetProjectResponse(); - updateResponse.setContainerId(CONTAINER_ID); - updateResponse.setLifecycleState(LifecycleState.CREATING); - when(apiClient.getProject(CONTAINER_ID, false)).thenReturn(updateResponse); - - AsyncActionHandler handler = - ResourcemanagerWait.createProjectWaitHandler(apiClient, CONTAINER_ID); - handler.setSleepBeforeWait(0, TimeUnit.SECONDS); - handler.setThrottle(10, TimeUnit.MILLISECONDS); - handler.setTimeout(500, TimeUnit.MILLISECONDS); - - Exception thrown = - assertThrows(Exception.class, () -> handler.waitWithContextAsync().get(), ""); - assertTrue(thrown.getMessage().contains(AsyncActionHandler.TIMEOUT_ERROR_MESSAGE)); - } - - // GenericOpenAPIError in RetryHttpErrorStatusCodes -> max retries reached - @Test - void testOpenAPIErrorTimeoutBadGateway() throws Exception { - // Trigger API Exception - ApiException apiException = new ApiException(HttpURLConnection.HTTP_BAD_GATEWAY, ""); - when(apiClient.getProject(CONTAINER_ID, false)).thenThrow(apiException); - - AsyncActionHandler handler = - ResourcemanagerWait.createProjectWaitHandler(apiClient, CONTAINER_ID); - handler.setSleepBeforeWait(0, TimeUnit.SECONDS); - handler.setThrottle(10, TimeUnit.MILLISECONDS); - handler.setTimeout(100, TimeUnit.MILLISECONDS); - handler.setTempErrRetryLimit(2); - - Exception thrown = - assertThrows( - Exception.class, - () -> handler.waitWithContextAsync().get(), - apiException.getMessage()); - assertTrue(thrown.getMessage().contains(AsyncActionHandler.TEMPORARY_ERROR_MESSAGE)); - } - - // GenericOpenAPIError in RetryHttpErrorStatusCodes -> max retries reached - @Test - void testOpenAPIErrorTimeoutGatewayTimeout() throws Exception { - // Trigger API Exception - ApiException apiException = new ApiException(HttpURLConnection.HTTP_GATEWAY_TIMEOUT, ""); - when(apiClient.getProject(CONTAINER_ID, false)).thenThrow(apiException); - - AsyncActionHandler handler = - ResourcemanagerWait.createProjectWaitHandler(apiClient, CONTAINER_ID); - handler.setSleepBeforeWait(0, TimeUnit.SECONDS); - handler.setThrottle(10, TimeUnit.MILLISECONDS); - handler.setTimeout(100, TimeUnit.MILLISECONDS); - handler.setTempErrRetryLimit(2); - - Exception thrown = - assertThrows( - Exception.class, - () -> handler.waitWithContextAsync().get(), - apiException.getMessage()); - assertTrue(thrown.getMessage().contains(AsyncActionHandler.TEMPORARY_ERROR_MESSAGE)); - } - - @Test - void testDeleteProjectSuccessDeleting() throws Exception { - // First call returns "ACTIVE", second call returns "DELETING" - GetProjectResponse activeResponse = new GetProjectResponse(); - activeResponse.setContainerId(CONTAINER_ID); - activeResponse.setLifecycleState(LifecycleState.ACTIVE); - - GetProjectResponse deletingResponse = new GetProjectResponse(); - deletingResponse.setContainerId(CONTAINER_ID); - deletingResponse.setLifecycleState(LifecycleState.DELETING); - - AtomicInteger callCount = new AtomicInteger(0); - when(apiClient.getProject(CONTAINER_ID, false)) - .thenAnswer( - invocation -> { - if (callCount.getAndIncrement() < SECOND_CALL) { - return activeResponse; - } - return deletingResponse; - }); - - AsyncActionHandler handler = - ResourcemanagerWait.deleteProjectWaitHandler(apiClient, CONTAINER_ID); - handler.setSleepBeforeWait(0, TimeUnit.SECONDS); - handler.setThrottle(10, TimeUnit.MILLISECONDS); - handler.setTimeout(2, TimeUnit.SECONDS); - - handler.waitWithContextAsync().get(); - verify(apiClient, times(2)).getProject(CONTAINER_ID, false); - } - - @Test - void testDeleteProjectSuccessNotFoundExc() throws Exception { - // Trigger API Exception - ApiException apiException = new ApiException(HttpURLConnection.HTTP_NOT_FOUND, ""); - when(apiClient.getProject(CONTAINER_ID, false)).thenThrow(apiException); - - AsyncActionHandler handler = - ResourcemanagerWait.deleteProjectWaitHandler(apiClient, CONTAINER_ID); - handler.setSleepBeforeWait(0, TimeUnit.SECONDS); - handler.setThrottle(10, TimeUnit.MILLISECONDS); - handler.setTimeout(2, TimeUnit.SECONDS); - handler.waitWithContextAsync().get(); - // Only one invocation since the project is gone (HTTP_NOT_FOUND) - verify(apiClient, times(1)).getProject(CONTAINER_ID, false); - } - - @Test - void testDeleteProjectSuccessForbiddenExc() throws Exception { - // Trigger API Exception - ApiException apiException = new ApiException(HttpURLConnection.HTTP_FORBIDDEN, ""); - when(apiClient.getProject(CONTAINER_ID, false)).thenThrow(apiException); - - AsyncActionHandler handler = - ResourcemanagerWait.deleteProjectWaitHandler(apiClient, CONTAINER_ID); - handler.setSleepBeforeWait(0, TimeUnit.SECONDS); - handler.setThrottle(10, TimeUnit.MILLISECONDS); - handler.setTimeout(2, TimeUnit.SECONDS); - handler.waitWithContextAsync().get(); - // Only one invocation since the project is gone (HTTP_FORBIDDEN) - verify(apiClient, times(1)).getProject(CONTAINER_ID, false); - } - - @Test - void testDeleteProjectDifferentErrorCode() throws Exception { - // Trigger API Exception - ApiException apiException = new ApiException(HttpURLConnection.HTTP_ENTITY_TOO_LARGE, ""); - when(apiClient.getProject(CONTAINER_ID, false)).thenThrow(apiException); - - AsyncActionHandler handler = - ResourcemanagerWait.deleteProjectWaitHandler(apiClient, CONTAINER_ID); - handler.setSleepBeforeWait(0, TimeUnit.SECONDS); - handler.setThrottle(10, TimeUnit.MILLISECONDS); - handler.setTimeout(100, TimeUnit.MILLISECONDS); - - Exception thrown = - assertThrows( - Exception.class, - () -> handler.waitWithContextAsync().get(), - apiException.getMessage()); - assertTrue(thrown.getMessage().contains(AsyncActionHandler.TIMEOUT_ERROR_MESSAGE)); - } - - @Test - void testOpenAPIErrorGatewayTimeout() throws Exception { - // Trigger API Exception - ApiException apiException = new ApiException(HttpURLConnection.HTTP_GATEWAY_TIMEOUT, ""); - when(apiClient.getProject(CONTAINER_ID, false)).thenThrow(apiException); - - AsyncActionHandler handler = - ResourcemanagerWait.deleteProjectWaitHandler(apiClient, CONTAINER_ID); - handler.setSleepBeforeWait(0, TimeUnit.SECONDS); - handler.setThrottle(10, TimeUnit.MILLISECONDS); - handler.setTimeout(100, TimeUnit.MILLISECONDS); - handler.setTempErrRetryLimit(2); - - Exception thrown = - assertThrows( - Exception.class, - () -> handler.waitWithContextAsync().get(), - apiException.getMessage()); - assertTrue(thrown.getMessage().contains(AsyncActionHandler.TEMPORARY_ERROR_MESSAGE)); - } -}