From ba0b655ec2aeb8eb4867978ffeb50c77bad93c73 Mon Sep 17 00:00:00 2001 From: SDK Generator Bot Date: Tue, 3 Jun 2025 12:34:39 +0000 Subject: [PATCH 1/2] Generate resourcemanager --- services/resourcemanager/api_default.go | 1048 ++++++++++++++--- services/resourcemanager/api_default_test.go | 192 +++ .../model_list_folders_response.go | 217 ++++ ...model_list_folders_response_items_inner.go | 397 +++++++ ..._list_folders_response_items_inner_test.go | 11 + .../model_list_folders_response_test.go | 11 + ...del_partial_update_organization_payload.go | 177 +++ ...artial_update_organization_payload_test.go | 11 + 8 files changed, 1928 insertions(+), 136 deletions(-) create mode 100644 services/resourcemanager/model_list_folders_response.go create mode 100644 services/resourcemanager/model_list_folders_response_items_inner.go create mode 100644 services/resourcemanager/model_list_folders_response_items_inner_test.go create mode 100644 services/resourcemanager/model_list_folders_response_test.go create mode 100644 services/resourcemanager/model_partial_update_organization_payload.go create mode 100644 services/resourcemanager/model_partial_update_organization_payload_test.go diff --git a/services/resourcemanager/api_default.go b/services/resourcemanager/api_default.go index a4823248a..db8506a0e 100644 --- a/services/resourcemanager/api_default.go +++ b/services/resourcemanager/api_default.go @@ -92,6 +92,22 @@ type DefaultApi interface { */ DeleteFolderLabelsExecute(ctx context.Context, containerId string) error + /* + DeleteOrganizationLabels Delete Organization Labels + Deletes all organization labels by given keys. + - Specific labels may be deleted by key(s) + - If no key is specified, all labels will be deleted! + + @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). + @param containerId Organization identifier - containerId as well as UUID identifier is supported. + @return ApiDeleteOrganizationLabelsRequest + */ + DeleteOrganizationLabels(ctx context.Context, containerId string) ApiDeleteOrganizationLabelsRequest + /* + DeleteOrganizationLabelsExecute executes the request + + */ + DeleteOrganizationLabelsExecute(ctx context.Context, containerId string) error /* DeleteProject Delete Project Triggers the deletion of a project. @@ -108,6 +124,22 @@ type DefaultApi interface { */ DeleteProjectExecute(ctx context.Context, id string) error + /* + DeleteProjectLabels Delete Project Labels + Deletes all project labels by given keys. + - Specific labels may be deleted by key(s) + - If no key is specified, all labels will be deleted! + + @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). + @param containerId Project identifier - containerId as well as UUID identifier is supported. + @return ApiDeleteProjectLabelsRequest + */ + DeleteProjectLabels(ctx context.Context, containerId string) ApiDeleteProjectLabelsRequest + /* + DeleteProjectLabelsExecute executes the request + + */ + DeleteProjectLabelsExecute(ctx context.Context, containerId string) error /* GetFolderDetails Get Folder Details Returns all metadata for a specific folder. @@ -162,6 +194,32 @@ type DefaultApi interface { */ GetProjectExecute(ctx context.Context, id string) (*GetProjectResponse, error) + /* + ListFolders Get All Folders + Returns all folders and their metadata that: + - Are children of the specific containerParentId + - Match the given containerIds + - User is member of
+ + Filter: + - Either containerParentId OR containerIds OR member must be passed + - If containerId and containerParentId are given, both are used for filtering - containers must point to the same parent + - If member and containerParentId are given, both are used for filtering + - If member is given, containers must not point to the same container parent + + + @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). + @return ApiListFoldersRequest + */ + ListFolders(ctx context.Context) ApiListFoldersRequest + /* + ListFoldersExecute executes the request + + @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). + @return ListFoldersResponse + + */ + ListFoldersExecute(ctx context.Context) (*ListFoldersResponse, error) /* ListOrganizations Get All Organizations Returns all organizations and their metadata. @@ -229,6 +287,26 @@ type DefaultApi interface { */ PartialUpdateFolderExecute(ctx context.Context, containerId string) (*FolderResponse, error) + /* + PartialUpdateOrganization Update Organization + Update the organization and its metadata. + - Update organization name + - Update organization labels + + @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). + @param id Organization identifier - containerId as well as UUID identifier is supported. + @return ApiPartialUpdateOrganizationRequest + */ + PartialUpdateOrganization(ctx context.Context, id string) ApiPartialUpdateOrganizationRequest + /* + PartialUpdateOrganizationExecute executes the request + + @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). + @param id Organization identifier - containerId as well as UUID identifier is supported. + @return OrganizationResponse + + */ + PartialUpdateOrganizationExecute(ctx context.Context, id string) (*OrganizationResponse, error) /* PartialUpdateProject Update Project Update the project and its metadata. @@ -274,10 +352,22 @@ type ApiDeleteFolderLabelsRequest interface { Execute() error } +type ApiDeleteOrganizationLabelsRequest interface { + // Label name. + Keys(keys []string) ApiDeleteOrganizationLabelsRequest + Execute() error +} + type ApiDeleteProjectRequest interface { Execute() error } +type ApiDeleteProjectLabelsRequest interface { + // Label name. + Keys(keys []string) ApiDeleteProjectLabelsRequest + Execute() error +} + type ApiGetFolderDetailsRequest interface { IncludeParents(includeParents bool) ApiGetFolderDetailsRequest Execute() (*GetFolderDetailsResponse, error) @@ -292,6 +382,22 @@ type ApiGetProjectRequest interface { Execute() (*GetProjectResponse, error) } +type ApiListFoldersRequest interface { + // Identifier of the parent resource container - containerId as well as UUID identifier is supported. + ContainerParentId(containerParentId string) ApiListFoldersRequest + // List of container identifiers - containerId as well as UUID identifier is supported. + ContainerIds(containerIds []string) ApiListFoldersRequest + // E-Mail address of the user for whom the visible resource containers should be filtered. + Member(member string) ApiListFoldersRequest + // The maximum number of projects to return in the response. If not present, an appropriate default will be used. If maximum is exceeded, maximum is used. + Limit(limit float32) ApiListFoldersRequest + // The offset of the first item in the collection to return. + Offset(offset float32) ApiListFoldersRequest + // A timestamp to specify the beginning of the creationTime from which entries should be returned. If not given, defaults to the beginning of time. + CreationTimeStart(creationTimeStart time.Time) ApiListFoldersRequest + Execute() (*ListFoldersResponse, error) +} + type ApiListOrganizationsRequest interface { // Organization identifiers - containerId as well as UUID identifier is supported. A combination of both is not allowed. ContainerIds(containerIds []string) ApiListOrganizationsRequest @@ -327,6 +433,11 @@ type ApiPartialUpdateFolderRequest interface { Execute() (*FolderResponse, error) } +type ApiPartialUpdateOrganizationRequest interface { + PartialUpdateOrganizationPayload(partialUpdateOrganizationPayload PartialUpdateOrganizationPayload) ApiPartialUpdateOrganizationRequest + Execute() (*OrganizationResponse, error) +} + type ApiPartialUpdateProjectRequest interface { PartialUpdateProjectPayload(partialUpdateProjectPayload PartialUpdateProjectPayload) ApiPartialUpdateProjectRequest Execute() (*Project, error) @@ -934,13 +1045,21 @@ func (a *APIClient) DeleteFolderLabelsExecute(ctx context.Context, containerId s return r.Execute() } -type DeleteProjectRequest struct { - ctx context.Context - apiService *DefaultApiService - id string +type DeleteOrganizationLabelsRequest struct { + ctx context.Context + apiService *DefaultApiService + containerId string + keys *[]string } -func (r DeleteProjectRequest) Execute() error { +// Label name. + +func (r DeleteOrganizationLabelsRequest) Keys(keys []string) ApiDeleteOrganizationLabelsRequest { + r.keys = &keys + return r +} + +func (r DeleteOrganizationLabelsRequest) Execute() error { var ( localVarHTTPMethod = http.MethodDelete localVarPostBody interface{} @@ -951,18 +1070,29 @@ func (r DeleteProjectRequest) Execute() error { if !ok { return fmt.Errorf("could not parse client to type APIClient") } - localBasePath, err := client.cfg.ServerURLWithContext(r.ctx, "DefaultApiService.DeleteProject") + localBasePath, err := client.cfg.ServerURLWithContext(r.ctx, "DefaultApiService.DeleteOrganizationLabels") if err != nil { return &oapierror.GenericOpenAPIError{ErrorMessage: err.Error()} } - localVarPath := localBasePath + "/v2/projects/{id}" - localVarPath = strings.Replace(localVarPath, "{"+"id"+"}", url.PathEscape(ParameterValueToString(r.id, "id")), -1) + localVarPath := localBasePath + "/v2/organizations/{containerId}/labels" + localVarPath = strings.Replace(localVarPath, "{"+"containerId"+"}", url.PathEscape(ParameterValueToString(r.containerId, "containerId")), -1) localVarHeaderParams := make(map[string]string) localVarQueryParams := url.Values{} localVarFormParams := url.Values{} + if r.keys != nil { + t := *r.keys + if reflect.TypeOf(t).Kind() == reflect.Slice { + s := reflect.ValueOf(t) + for i := 0; i < s.Len(); i++ { + parameterAddToHeaderOrQuery(localVarQueryParams, "keys", s.Index(i).Interface(), "multi") + } + } else { + parameterAddToHeaderOrQuery(localVarQueryParams, "keys", t, "multi") + } + } // to determine the Content-Type header localVarHTTPContentTypes := []string{} @@ -1029,72 +1159,62 @@ func (r DeleteProjectRequest) Execute() error { } /* -DeleteProject: Delete Project +DeleteOrganizationLabels: Delete Organization Labels -Triggers the deletion of a project. -- The request is synchronous, but the workflow-based deletion is asynchronous -- Lifecycle state remains in DELETING, until workflow completes +Deletes all organization labels by given keys. +- Specific labels may be deleted by key(s) +- If no key is specified, all labels will be deleted! @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). - @param id Project identifier - containerId as well as UUID identifier is supported. - @return ApiDeleteProjectRequest + @param containerId Organization identifier - containerId as well as UUID identifier is supported. + @return ApiDeleteOrganizationLabelsRequest */ -func (a *APIClient) DeleteProject(ctx context.Context, id string) ApiDeleteProjectRequest { - return DeleteProjectRequest{ - apiService: a.defaultApi, - ctx: ctx, - id: id, +func (a *APIClient) DeleteOrganizationLabels(ctx context.Context, containerId string) ApiDeleteOrganizationLabelsRequest { + return DeleteOrganizationLabelsRequest{ + apiService: a.defaultApi, + ctx: ctx, + containerId: containerId, } } -func (a *APIClient) DeleteProjectExecute(ctx context.Context, id string) error { - r := DeleteProjectRequest{ - apiService: a.defaultApi, - ctx: ctx, - id: id, +func (a *APIClient) DeleteOrganizationLabelsExecute(ctx context.Context, containerId string) error { + r := DeleteOrganizationLabelsRequest{ + apiService: a.defaultApi, + ctx: ctx, + containerId: containerId, } return r.Execute() } -type GetFolderDetailsRequest struct { - ctx context.Context - apiService *DefaultApiService - containerId string - includeParents *bool -} - -func (r GetFolderDetailsRequest) IncludeParents(includeParents bool) ApiGetFolderDetailsRequest { - r.includeParents = &includeParents - return r +type DeleteProjectRequest struct { + ctx context.Context + apiService *DefaultApiService + id string } -func (r GetFolderDetailsRequest) Execute() (*GetFolderDetailsResponse, error) { +func (r DeleteProjectRequest) Execute() error { var ( - localVarHTTPMethod = http.MethodGet - localVarPostBody interface{} - formFiles []formFile - localVarReturnValue *GetFolderDetailsResponse + localVarHTTPMethod = http.MethodDelete + localVarPostBody interface{} + formFiles []formFile ) a := r.apiService client, ok := a.client.(*APIClient) if !ok { - return localVarReturnValue, fmt.Errorf("could not parse client to type APIClient") + return fmt.Errorf("could not parse client to type APIClient") } - localBasePath, err := client.cfg.ServerURLWithContext(r.ctx, "DefaultApiService.GetFolderDetails") + localBasePath, err := client.cfg.ServerURLWithContext(r.ctx, "DefaultApiService.DeleteProject") if err != nil { - return localVarReturnValue, &oapierror.GenericOpenAPIError{ErrorMessage: err.Error()} + return &oapierror.GenericOpenAPIError{ErrorMessage: err.Error()} } - localVarPath := localBasePath + "/v2/folders/{containerId}" - localVarPath = strings.Replace(localVarPath, "{"+"containerId"+"}", url.PathEscape(ParameterValueToString(r.containerId, "containerId")), -1) + localVarPath := localBasePath + "/v2/projects/{id}" + localVarPath = strings.Replace(localVarPath, "{"+"id"+"}", url.PathEscape(ParameterValueToString(r.id, "id")), -1) localVarHeaderParams := make(map[string]string) localVarQueryParams := url.Values{} localVarFormParams := url.Values{} - if r.includeParents != nil { - parameterAddToHeaderOrQuery(localVarQueryParams, "includeParents", r.includeParents, "") - } // to determine the Content-Type header localVarHTTPContentTypes := []string{} @@ -1114,7 +1234,7 @@ func (r GetFolderDetailsRequest) Execute() (*GetFolderDetailsResponse, error) { } req, err := client.prepareRequest(r.ctx, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, formFiles) if err != nil { - return localVarReturnValue, err + return err } contextHTTPRequest, ok := r.ctx.Value(config.ContextHTTPRequest).(**http.Request) @@ -1128,14 +1248,14 @@ func (r GetFolderDetailsRequest) Execute() (*GetFolderDetailsResponse, error) { *contextHTTPResponse = localVarHTTPResponse } if err != nil || localVarHTTPResponse == nil { - return localVarReturnValue, err + return err } localVarBody, err := io.ReadAll(localVarHTTPResponse.Body) localVarHTTPResponse.Body.Close() localVarHTTPResponse.Body = io.NopCloser(bytes.NewBuffer(localVarBody)) if err != nil { - return localVarReturnValue, err + return err } if localVarHTTPResponse.StatusCode >= 300 { @@ -1144,103 +1264,376 @@ func (r GetFolderDetailsRequest) Execute() (*GetFolderDetailsResponse, error) { Body: localVarBody, ErrorMessage: localVarHTTPResponse.Status, } - if localVarHTTPResponse.StatusCode == 403 { - var v ErrorResponse - err = client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) - if err != nil { - newErr.ErrorMessage = err.Error() - return localVarReturnValue, newErr - } - newErr.ErrorMessage = oapierror.FormatErrorMessage(localVarHTTPResponse.Status, &v) - newErr.Model = v - return localVarReturnValue, newErr - } - if localVarHTTPResponse.StatusCode == 404 { + if localVarHTTPResponse.StatusCode == 409 { var v ErrorResponse err = client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) if err != nil { newErr.ErrorMessage = err.Error() - return localVarReturnValue, newErr + return newErr } newErr.ErrorMessage = oapierror.FormatErrorMessage(localVarHTTPResponse.Status, &v) newErr.Model = v } - return localVarReturnValue, newErr - } - - err = client.decode(&localVarReturnValue, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) - if err != nil { - newErr := &oapierror.GenericOpenAPIError{ - StatusCode: localVarHTTPResponse.StatusCode, - Body: localVarBody, - ErrorMessage: err.Error(), - } - return localVarReturnValue, newErr + return newErr } - return localVarReturnValue, nil + return nil } /* -GetFolderDetails: Get Folder Details +DeleteProject: Delete Project -Returns all metadata for a specific folder. +Triggers the deletion of a project. +- The request is synchronous, but the workflow-based deletion is asynchronous +- Lifecycle state remains in DELETING, until workflow completes @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). - @param containerId Folder identifier - containerId as well as UUID identifier is supported. - @return ApiGetFolderDetailsRequest + @param id Project identifier - containerId as well as UUID identifier is supported. + @return ApiDeleteProjectRequest */ -func (a *APIClient) GetFolderDetails(ctx context.Context, containerId string) ApiGetFolderDetailsRequest { - return GetFolderDetailsRequest{ - apiService: a.defaultApi, - ctx: ctx, - containerId: containerId, +func (a *APIClient) DeleteProject(ctx context.Context, id string) ApiDeleteProjectRequest { + return DeleteProjectRequest{ + apiService: a.defaultApi, + ctx: ctx, + id: id, } } -func (a *APIClient) GetFolderDetailsExecute(ctx context.Context, containerId string) (*GetFolderDetailsResponse, error) { - r := GetFolderDetailsRequest{ - apiService: a.defaultApi, - ctx: ctx, - containerId: containerId, +func (a *APIClient) DeleteProjectExecute(ctx context.Context, id string) error { + r := DeleteProjectRequest{ + apiService: a.defaultApi, + ctx: ctx, + id: id, } return r.Execute() } -type GetOrganizationRequest struct { - ctx context.Context - apiService *DefaultApiService - id string +type DeleteProjectLabelsRequest struct { + ctx context.Context + apiService *DefaultApiService + containerId string + keys *[]string } -func (r GetOrganizationRequest) Execute() (*OrganizationResponse, error) { +// Label name. + +func (r DeleteProjectLabelsRequest) Keys(keys []string) ApiDeleteProjectLabelsRequest { + r.keys = &keys + return r +} + +func (r DeleteProjectLabelsRequest) Execute() error { var ( - localVarHTTPMethod = http.MethodGet - localVarPostBody interface{} - formFiles []formFile - localVarReturnValue *OrganizationResponse + localVarHTTPMethod = http.MethodDelete + localVarPostBody interface{} + formFiles []formFile ) a := r.apiService client, ok := a.client.(*APIClient) if !ok { - return localVarReturnValue, fmt.Errorf("could not parse client to type APIClient") + return fmt.Errorf("could not parse client to type APIClient") } - localBasePath, err := client.cfg.ServerURLWithContext(r.ctx, "DefaultApiService.GetOrganization") + localBasePath, err := client.cfg.ServerURLWithContext(r.ctx, "DefaultApiService.DeleteProjectLabels") if err != nil { - return localVarReturnValue, &oapierror.GenericOpenAPIError{ErrorMessage: err.Error()} + return &oapierror.GenericOpenAPIError{ErrorMessage: err.Error()} } - localVarPath := localBasePath + "/v2/organizations/{id}" - localVarPath = strings.Replace(localVarPath, "{"+"id"+"}", url.PathEscape(ParameterValueToString(r.id, "id")), -1) + localVarPath := localBasePath + "/v2/projects/{containerId}/labels" + localVarPath = strings.Replace(localVarPath, "{"+"containerId"+"}", url.PathEscape(ParameterValueToString(r.containerId, "containerId")), -1) localVarHeaderParams := make(map[string]string) localVarQueryParams := url.Values{} localVarFormParams := url.Values{} - // to determine the Content-Type header - localVarHTTPContentTypes := []string{} - - // set Content-Type header + if r.keys != nil { + t := *r.keys + if reflect.TypeOf(t).Kind() == reflect.Slice { + s := reflect.ValueOf(t) + for i := 0; i < s.Len(); i++ { + parameterAddToHeaderOrQuery(localVarQueryParams, "keys", s.Index(i).Interface(), "multi") + } + } else { + parameterAddToHeaderOrQuery(localVarQueryParams, "keys", t, "multi") + } + } + // to determine the Content-Type header + localVarHTTPContentTypes := []string{} + + // set Content-Type header + localVarHTTPContentType := selectHeaderContentType(localVarHTTPContentTypes) + if localVarHTTPContentType != "" { + localVarHeaderParams["Content-Type"] = localVarHTTPContentType + } + + // to determine the Accept header + localVarHTTPHeaderAccepts := []string{"application/json"} + + // set Accept header + localVarHTTPHeaderAccept := selectHeaderAccept(localVarHTTPHeaderAccepts) + if localVarHTTPHeaderAccept != "" { + localVarHeaderParams["Accept"] = localVarHTTPHeaderAccept + } + req, err := client.prepareRequest(r.ctx, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, formFiles) + if err != nil { + return err + } + + contextHTTPRequest, ok := r.ctx.Value(config.ContextHTTPRequest).(**http.Request) + if ok { + *contextHTTPRequest = req + } + + localVarHTTPResponse, err := client.callAPI(req) + contextHTTPResponse, ok := r.ctx.Value(config.ContextHTTPResponse).(**http.Response) + if ok { + *contextHTTPResponse = localVarHTTPResponse + } + if err != nil || localVarHTTPResponse == nil { + return err + } + + localVarBody, err := io.ReadAll(localVarHTTPResponse.Body) + localVarHTTPResponse.Body.Close() + localVarHTTPResponse.Body = io.NopCloser(bytes.NewBuffer(localVarBody)) + if err != nil { + return err + } + + if localVarHTTPResponse.StatusCode >= 300 { + newErr := &oapierror.GenericOpenAPIError{ + StatusCode: localVarHTTPResponse.StatusCode, + Body: localVarBody, + ErrorMessage: localVarHTTPResponse.Status, + } + if localVarHTTPResponse.StatusCode == 409 { + var v ErrorResponse + err = client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.ErrorMessage = err.Error() + return newErr + } + newErr.ErrorMessage = oapierror.FormatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.Model = v + } + return newErr + } + + return nil +} + +/* +DeleteProjectLabels: Delete Project Labels + +Deletes all project labels by given keys. +- Specific labels may be deleted by key(s) +- If no key is specified, all labels will be deleted! + + @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). + @param containerId Project identifier - containerId as well as UUID identifier is supported. + @return ApiDeleteProjectLabelsRequest +*/ +func (a *APIClient) DeleteProjectLabels(ctx context.Context, containerId string) ApiDeleteProjectLabelsRequest { + return DeleteProjectLabelsRequest{ + apiService: a.defaultApi, + ctx: ctx, + containerId: containerId, + } +} + +func (a *APIClient) DeleteProjectLabelsExecute(ctx context.Context, containerId string) error { + r := DeleteProjectLabelsRequest{ + apiService: a.defaultApi, + ctx: ctx, + containerId: containerId, + } + return r.Execute() +} + +type GetFolderDetailsRequest struct { + ctx context.Context + apiService *DefaultApiService + containerId string + includeParents *bool +} + +func (r GetFolderDetailsRequest) IncludeParents(includeParents bool) ApiGetFolderDetailsRequest { + r.includeParents = &includeParents + return r +} + +func (r GetFolderDetailsRequest) Execute() (*GetFolderDetailsResponse, error) { + var ( + localVarHTTPMethod = http.MethodGet + localVarPostBody interface{} + formFiles []formFile + localVarReturnValue *GetFolderDetailsResponse + ) + a := r.apiService + client, ok := a.client.(*APIClient) + if !ok { + return localVarReturnValue, fmt.Errorf("could not parse client to type APIClient") + } + localBasePath, err := client.cfg.ServerURLWithContext(r.ctx, "DefaultApiService.GetFolderDetails") + if err != nil { + return localVarReturnValue, &oapierror.GenericOpenAPIError{ErrorMessage: err.Error()} + } + + localVarPath := localBasePath + "/v2/folders/{containerId}" + localVarPath = strings.Replace(localVarPath, "{"+"containerId"+"}", url.PathEscape(ParameterValueToString(r.containerId, "containerId")), -1) + + localVarHeaderParams := make(map[string]string) + localVarQueryParams := url.Values{} + localVarFormParams := url.Values{} + + if r.includeParents != nil { + parameterAddToHeaderOrQuery(localVarQueryParams, "includeParents", r.includeParents, "") + } + // to determine the Content-Type header + localVarHTTPContentTypes := []string{} + + // set Content-Type header + localVarHTTPContentType := selectHeaderContentType(localVarHTTPContentTypes) + if localVarHTTPContentType != "" { + localVarHeaderParams["Content-Type"] = localVarHTTPContentType + } + + // to determine the Accept header + localVarHTTPHeaderAccepts := []string{"application/json"} + + // set Accept header + localVarHTTPHeaderAccept := selectHeaderAccept(localVarHTTPHeaderAccepts) + if localVarHTTPHeaderAccept != "" { + localVarHeaderParams["Accept"] = localVarHTTPHeaderAccept + } + req, err := client.prepareRequest(r.ctx, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, formFiles) + if err != nil { + return localVarReturnValue, err + } + + contextHTTPRequest, ok := r.ctx.Value(config.ContextHTTPRequest).(**http.Request) + if ok { + *contextHTTPRequest = req + } + + localVarHTTPResponse, err := client.callAPI(req) + contextHTTPResponse, ok := r.ctx.Value(config.ContextHTTPResponse).(**http.Response) + if ok { + *contextHTTPResponse = localVarHTTPResponse + } + if err != nil || localVarHTTPResponse == nil { + return localVarReturnValue, err + } + + localVarBody, err := io.ReadAll(localVarHTTPResponse.Body) + localVarHTTPResponse.Body.Close() + localVarHTTPResponse.Body = io.NopCloser(bytes.NewBuffer(localVarBody)) + if err != nil { + return localVarReturnValue, err + } + + if localVarHTTPResponse.StatusCode >= 300 { + newErr := &oapierror.GenericOpenAPIError{ + StatusCode: localVarHTTPResponse.StatusCode, + Body: localVarBody, + ErrorMessage: localVarHTTPResponse.Status, + } + if localVarHTTPResponse.StatusCode == 403 { + var v ErrorResponse + err = client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.ErrorMessage = err.Error() + return localVarReturnValue, newErr + } + newErr.ErrorMessage = oapierror.FormatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.Model = v + return localVarReturnValue, newErr + } + if localVarHTTPResponse.StatusCode == 404 { + var v ErrorResponse + err = client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.ErrorMessage = err.Error() + return localVarReturnValue, newErr + } + newErr.ErrorMessage = oapierror.FormatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.Model = v + } + return localVarReturnValue, newErr + } + + err = client.decode(&localVarReturnValue, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr := &oapierror.GenericOpenAPIError{ + StatusCode: localVarHTTPResponse.StatusCode, + Body: localVarBody, + ErrorMessage: err.Error(), + } + return localVarReturnValue, newErr + } + + return localVarReturnValue, nil +} + +/* +GetFolderDetails: Get Folder Details + +Returns all metadata for a specific folder. + + @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). + @param containerId Folder identifier - containerId as well as UUID identifier is supported. + @return ApiGetFolderDetailsRequest +*/ +func (a *APIClient) GetFolderDetails(ctx context.Context, containerId string) ApiGetFolderDetailsRequest { + return GetFolderDetailsRequest{ + apiService: a.defaultApi, + ctx: ctx, + containerId: containerId, + } +} + +func (a *APIClient) GetFolderDetailsExecute(ctx context.Context, containerId string) (*GetFolderDetailsResponse, error) { + r := GetFolderDetailsRequest{ + apiService: a.defaultApi, + ctx: ctx, + containerId: containerId, + } + return r.Execute() +} + +type GetOrganizationRequest struct { + ctx context.Context + apiService *DefaultApiService + id string +} + +func (r GetOrganizationRequest) Execute() (*OrganizationResponse, error) { + var ( + localVarHTTPMethod = http.MethodGet + localVarPostBody interface{} + formFiles []formFile + localVarReturnValue *OrganizationResponse + ) + a := r.apiService + client, ok := a.client.(*APIClient) + if !ok { + return localVarReturnValue, fmt.Errorf("could not parse client to type APIClient") + } + localBasePath, err := client.cfg.ServerURLWithContext(r.ctx, "DefaultApiService.GetOrganization") + if err != nil { + return localVarReturnValue, &oapierror.GenericOpenAPIError{ErrorMessage: err.Error()} + } + + localVarPath := localBasePath + "/v2/organizations/{id}" + localVarPath = strings.Replace(localVarPath, "{"+"id"+"}", url.PathEscape(ParameterValueToString(r.id, "id")), -1) + + localVarHeaderParams := make(map[string]string) + localVarQueryParams := url.Values{} + localVarFormParams := url.Values{} + + // to determine the Content-Type header + localVarHTTPContentTypes := []string{} + + // set Content-Type header localVarHTTPContentType := selectHeaderContentType(localVarHTTPContentTypes) if localVarHTTPContentType != "" { localVarHeaderParams["Content-Type"] = localVarHTTPContentType @@ -1321,16 +1714,167 @@ Returns the organization and its metadata. @param id Organization identifier - containerId as well as UUID identifier is supported. @return ApiGetOrganizationRequest */ -func (a *APIClient) GetOrganization(ctx context.Context, id string) ApiGetOrganizationRequest { - return GetOrganizationRequest{ +func (a *APIClient) GetOrganization(ctx context.Context, id string) ApiGetOrganizationRequest { + return GetOrganizationRequest{ + apiService: a.defaultApi, + ctx: ctx, + id: id, + } +} + +func (a *APIClient) GetOrganizationExecute(ctx context.Context, id string) (*OrganizationResponse, error) { + r := GetOrganizationRequest{ + apiService: a.defaultApi, + ctx: ctx, + id: id, + } + return r.Execute() +} + +type GetProjectRequest struct { + ctx context.Context + apiService *DefaultApiService + id string + includeParents *bool +} + +func (r GetProjectRequest) IncludeParents(includeParents bool) ApiGetProjectRequest { + r.includeParents = &includeParents + return r +} + +func (r GetProjectRequest) Execute() (*GetProjectResponse, error) { + var ( + localVarHTTPMethod = http.MethodGet + localVarPostBody interface{} + formFiles []formFile + localVarReturnValue *GetProjectResponse + ) + a := r.apiService + client, ok := a.client.(*APIClient) + if !ok { + return localVarReturnValue, fmt.Errorf("could not parse client to type APIClient") + } + localBasePath, err := client.cfg.ServerURLWithContext(r.ctx, "DefaultApiService.GetProject") + if err != nil { + return localVarReturnValue, &oapierror.GenericOpenAPIError{ErrorMessage: err.Error()} + } + + localVarPath := localBasePath + "/v2/projects/{id}" + localVarPath = strings.Replace(localVarPath, "{"+"id"+"}", url.PathEscape(ParameterValueToString(r.id, "id")), -1) + + localVarHeaderParams := make(map[string]string) + localVarQueryParams := url.Values{} + localVarFormParams := url.Values{} + + if r.includeParents != nil { + parameterAddToHeaderOrQuery(localVarQueryParams, "includeParents", r.includeParents, "") + } + // to determine the Content-Type header + localVarHTTPContentTypes := []string{} + + // set Content-Type header + localVarHTTPContentType := selectHeaderContentType(localVarHTTPContentTypes) + if localVarHTTPContentType != "" { + localVarHeaderParams["Content-Type"] = localVarHTTPContentType + } + + // to determine the Accept header + localVarHTTPHeaderAccepts := []string{"application/json"} + + // set Accept header + localVarHTTPHeaderAccept := selectHeaderAccept(localVarHTTPHeaderAccepts) + if localVarHTTPHeaderAccept != "" { + localVarHeaderParams["Accept"] = localVarHTTPHeaderAccept + } + req, err := client.prepareRequest(r.ctx, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, formFiles) + if err != nil { + return localVarReturnValue, err + } + + contextHTTPRequest, ok := r.ctx.Value(config.ContextHTTPRequest).(**http.Request) + if ok { + *contextHTTPRequest = req + } + + localVarHTTPResponse, err := client.callAPI(req) + contextHTTPResponse, ok := r.ctx.Value(config.ContextHTTPResponse).(**http.Response) + if ok { + *contextHTTPResponse = localVarHTTPResponse + } + if err != nil || localVarHTTPResponse == nil { + return localVarReturnValue, err + } + + localVarBody, err := io.ReadAll(localVarHTTPResponse.Body) + localVarHTTPResponse.Body.Close() + localVarHTTPResponse.Body = io.NopCloser(bytes.NewBuffer(localVarBody)) + if err != nil { + return localVarReturnValue, err + } + + if localVarHTTPResponse.StatusCode >= 300 { + newErr := &oapierror.GenericOpenAPIError{ + StatusCode: localVarHTTPResponse.StatusCode, + Body: localVarBody, + ErrorMessage: localVarHTTPResponse.Status, + } + if localVarHTTPResponse.StatusCode == 403 { + var v ErrorResponse + err = client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.ErrorMessage = err.Error() + return localVarReturnValue, newErr + } + newErr.ErrorMessage = oapierror.FormatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.Model = v + return localVarReturnValue, newErr + } + if localVarHTTPResponse.StatusCode == 404 { + var v ErrorResponse + err = client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.ErrorMessage = err.Error() + return localVarReturnValue, newErr + } + newErr.ErrorMessage = oapierror.FormatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.Model = v + } + return localVarReturnValue, newErr + } + + err = client.decode(&localVarReturnValue, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr := &oapierror.GenericOpenAPIError{ + StatusCode: localVarHTTPResponse.StatusCode, + Body: localVarBody, + ErrorMessage: err.Error(), + } + return localVarReturnValue, newErr + } + + return localVarReturnValue, nil +} + +/* +GetProject: Get Project Details + +Returns the project and its metadata. + + @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). + @param id Project identifier - containerId as well as UUID identifier is supported. + @return ApiGetProjectRequest +*/ +func (a *APIClient) GetProject(ctx context.Context, id string) ApiGetProjectRequest { + return GetProjectRequest{ apiService: a.defaultApi, ctx: ctx, id: id, } } -func (a *APIClient) GetOrganizationExecute(ctx context.Context, id string) (*OrganizationResponse, error) { - r := GetOrganizationRequest{ +func (a *APIClient) GetProjectExecute(ctx context.Context, id string) (*GetProjectResponse, error) { + r := GetProjectRequest{ apiService: a.defaultApi, ctx: ctx, id: id, @@ -1338,44 +1882,107 @@ func (a *APIClient) GetOrganizationExecute(ctx context.Context, id string) (*Org return r.Execute() } -type GetProjectRequest struct { - ctx context.Context - apiService *DefaultApiService - id string - includeParents *bool +type ListFoldersRequest struct { + ctx context.Context + apiService *DefaultApiService + containerParentId *string + containerIds *[]string + member *string + limit *float32 + offset *float32 + creationTimeStart *time.Time } -func (r GetProjectRequest) IncludeParents(includeParents bool) ApiGetProjectRequest { - r.includeParents = &includeParents +// Identifier of the parent resource container - containerId as well as UUID identifier is supported. + +func (r ListFoldersRequest) ContainerParentId(containerParentId string) ApiListFoldersRequest { + r.containerParentId = &containerParentId return r } -func (r GetProjectRequest) Execute() (*GetProjectResponse, error) { +// List of container identifiers - containerId as well as UUID identifier is supported. + +func (r ListFoldersRequest) ContainerIds(containerIds []string) ApiListFoldersRequest { + r.containerIds = &containerIds + return r +} + +// E-Mail address of the user for whom the visible resource containers should be filtered. + +func (r ListFoldersRequest) Member(member string) ApiListFoldersRequest { + r.member = &member + return r +} + +// The maximum number of projects to return in the response. If not present, an appropriate default will be used. If maximum is exceeded, maximum is used. + +func (r ListFoldersRequest) Limit(limit float32) ApiListFoldersRequest { + r.limit = &limit + return r +} + +// The offset of the first item in the collection to return. + +func (r ListFoldersRequest) Offset(offset float32) ApiListFoldersRequest { + r.offset = &offset + return r +} + +// A timestamp to specify the beginning of the creationTime from which entries should be returned. If not given, defaults to the beginning of time. + +func (r ListFoldersRequest) CreationTimeStart(creationTimeStart time.Time) ApiListFoldersRequest { + r.creationTimeStart = &creationTimeStart + return r +} + +func (r ListFoldersRequest) Execute() (*ListFoldersResponse, error) { var ( localVarHTTPMethod = http.MethodGet localVarPostBody interface{} formFiles []formFile - localVarReturnValue *GetProjectResponse + localVarReturnValue *ListFoldersResponse ) a := r.apiService client, ok := a.client.(*APIClient) if !ok { return localVarReturnValue, fmt.Errorf("could not parse client to type APIClient") } - localBasePath, err := client.cfg.ServerURLWithContext(r.ctx, "DefaultApiService.GetProject") + localBasePath, err := client.cfg.ServerURLWithContext(r.ctx, "DefaultApiService.ListFolders") if err != nil { return localVarReturnValue, &oapierror.GenericOpenAPIError{ErrorMessage: err.Error()} } - localVarPath := localBasePath + "/v2/projects/{id}" - localVarPath = strings.Replace(localVarPath, "{"+"id"+"}", url.PathEscape(ParameterValueToString(r.id, "id")), -1) + localVarPath := localBasePath + "/v2/folders" localVarHeaderParams := make(map[string]string) localVarQueryParams := url.Values{} localVarFormParams := url.Values{} - if r.includeParents != nil { - parameterAddToHeaderOrQuery(localVarQueryParams, "includeParents", r.includeParents, "") + if r.containerParentId != nil { + parameterAddToHeaderOrQuery(localVarQueryParams, "containerParentId", r.containerParentId, "") + } + if r.containerIds != nil { + t := *r.containerIds + if reflect.TypeOf(t).Kind() == reflect.Slice { + s := reflect.ValueOf(t) + for i := 0; i < s.Len(); i++ { + parameterAddToHeaderOrQuery(localVarQueryParams, "containerIds", s.Index(i).Interface(), "multi") + } + } else { + parameterAddToHeaderOrQuery(localVarQueryParams, "containerIds", t, "multi") + } + } + if r.member != nil { + parameterAddToHeaderOrQuery(localVarQueryParams, "member", r.member, "") + } + if r.limit != nil { + parameterAddToHeaderOrQuery(localVarQueryParams, "limit", r.limit, "") + } + if r.offset != nil { + parameterAddToHeaderOrQuery(localVarQueryParams, "offset", r.offset, "") + } + if r.creationTimeStart != nil { + parameterAddToHeaderOrQuery(localVarQueryParams, "creation-time-start", r.creationTimeStart, "") } // to determine the Content-Type header localVarHTTPContentTypes := []string{} @@ -1426,6 +2033,17 @@ func (r GetProjectRequest) Execute() (*GetProjectResponse, error) { Body: localVarBody, ErrorMessage: localVarHTTPResponse.Status, } + if localVarHTTPResponse.StatusCode == 400 { + var v ErrorResponse + err = client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.ErrorMessage = err.Error() + return localVarReturnValue, newErr + } + newErr.ErrorMessage = oapierror.FormatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.Model = v + return localVarReturnValue, newErr + } if localVarHTTPResponse.StatusCode == 403 { var v ErrorResponse err = client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -1437,7 +2055,7 @@ func (r GetProjectRequest) Execute() (*GetProjectResponse, error) { newErr.Model = v return localVarReturnValue, newErr } - if localVarHTTPResponse.StatusCode == 404 { + if localVarHTTPResponse.StatusCode == 409 { var v ErrorResponse err = client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) if err != nil { @@ -1464,27 +2082,33 @@ func (r GetProjectRequest) Execute() (*GetProjectResponse, error) { } /* -GetProject: Get Project Details +ListFolders: Get All Folders -Returns the project and its metadata. +Returns all folders and their metadata that: +- Are children of the specific containerParentId +- Match the given containerIds +- User is member of
+ +Filter: +- Either containerParentId OR containerIds OR member must be passed +- If containerId and containerParentId are given, both are used for filtering - containers must point to the same parent +- If member and containerParentId are given, both are used for filtering +- If member is given, containers must not point to the same container parent @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). - @param id Project identifier - containerId as well as UUID identifier is supported. - @return ApiGetProjectRequest + @return ApiListFoldersRequest */ -func (a *APIClient) GetProject(ctx context.Context, id string) ApiGetProjectRequest { - return GetProjectRequest{ +func (a *APIClient) ListFolders(ctx context.Context) ApiListFoldersRequest { + return ListFoldersRequest{ apiService: a.defaultApi, ctx: ctx, - id: id, } } -func (a *APIClient) GetProjectExecute(ctx context.Context, id string) (*GetProjectResponse, error) { - r := GetProjectRequest{ +func (a *APIClient) ListFoldersExecute(ctx context.Context) (*ListFoldersResponse, error) { + r := ListFoldersRequest{ apiService: a.defaultApi, ctx: ctx, - id: id, } return r.Execute() } @@ -2077,6 +2701,158 @@ func (a *APIClient) PartialUpdateFolderExecute(ctx context.Context, containerId return r.Execute() } +type PartialUpdateOrganizationRequest struct { + ctx context.Context + apiService *DefaultApiService + id string + partialUpdateOrganizationPayload *PartialUpdateOrganizationPayload +} + +func (r PartialUpdateOrganizationRequest) PartialUpdateOrganizationPayload(partialUpdateOrganizationPayload PartialUpdateOrganizationPayload) ApiPartialUpdateOrganizationRequest { + r.partialUpdateOrganizationPayload = &partialUpdateOrganizationPayload + return r +} + +func (r PartialUpdateOrganizationRequest) Execute() (*OrganizationResponse, error) { + var ( + localVarHTTPMethod = http.MethodPatch + localVarPostBody interface{} + formFiles []formFile + localVarReturnValue *OrganizationResponse + ) + a := r.apiService + client, ok := a.client.(*APIClient) + if !ok { + return localVarReturnValue, fmt.Errorf("could not parse client to type APIClient") + } + localBasePath, err := client.cfg.ServerURLWithContext(r.ctx, "DefaultApiService.PartialUpdateOrganization") + if err != nil { + return localVarReturnValue, &oapierror.GenericOpenAPIError{ErrorMessage: err.Error()} + } + + localVarPath := localBasePath + "/v2/organizations/{id}" + localVarPath = strings.Replace(localVarPath, "{"+"id"+"}", url.PathEscape(ParameterValueToString(r.id, "id")), -1) + + localVarHeaderParams := make(map[string]string) + localVarQueryParams := url.Values{} + localVarFormParams := url.Values{} + + // to determine the Content-Type header + localVarHTTPContentTypes := []string{"application/json"} + + // set Content-Type header + localVarHTTPContentType := selectHeaderContentType(localVarHTTPContentTypes) + if localVarHTTPContentType != "" { + localVarHeaderParams["Content-Type"] = localVarHTTPContentType + } + + // to determine the Accept header + localVarHTTPHeaderAccepts := []string{"application/json"} + + // set Accept header + localVarHTTPHeaderAccept := selectHeaderAccept(localVarHTTPHeaderAccepts) + if localVarHTTPHeaderAccept != "" { + localVarHeaderParams["Accept"] = localVarHTTPHeaderAccept + } + // body params + localVarPostBody = r.partialUpdateOrganizationPayload + req, err := client.prepareRequest(r.ctx, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, formFiles) + if err != nil { + return localVarReturnValue, err + } + + contextHTTPRequest, ok := r.ctx.Value(config.ContextHTTPRequest).(**http.Request) + if ok { + *contextHTTPRequest = req + } + + localVarHTTPResponse, err := client.callAPI(req) + contextHTTPResponse, ok := r.ctx.Value(config.ContextHTTPResponse).(**http.Response) + if ok { + *contextHTTPResponse = localVarHTTPResponse + } + if err != nil || localVarHTTPResponse == nil { + return localVarReturnValue, err + } + + localVarBody, err := io.ReadAll(localVarHTTPResponse.Body) + localVarHTTPResponse.Body.Close() + localVarHTTPResponse.Body = io.NopCloser(bytes.NewBuffer(localVarBody)) + if err != nil { + return localVarReturnValue, err + } + + if localVarHTTPResponse.StatusCode >= 300 { + newErr := &oapierror.GenericOpenAPIError{ + StatusCode: localVarHTTPResponse.StatusCode, + Body: localVarBody, + ErrorMessage: localVarHTTPResponse.Status, + } + if localVarHTTPResponse.StatusCode == 404 { + var v ErrorResponse + err = client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.ErrorMessage = err.Error() + return localVarReturnValue, newErr + } + newErr.ErrorMessage = oapierror.FormatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.Model = v + return localVarReturnValue, newErr + } + if localVarHTTPResponse.StatusCode == 409 { + var v ErrorResponse + err = client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr.ErrorMessage = err.Error() + return localVarReturnValue, newErr + } + newErr.ErrorMessage = oapierror.FormatErrorMessage(localVarHTTPResponse.Status, &v) + newErr.Model = v + } + return localVarReturnValue, newErr + } + + err = client.decode(&localVarReturnValue, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) + if err != nil { + newErr := &oapierror.GenericOpenAPIError{ + StatusCode: localVarHTTPResponse.StatusCode, + Body: localVarBody, + ErrorMessage: err.Error(), + } + return localVarReturnValue, newErr + } + + return localVarReturnValue, nil +} + +/* +PartialUpdateOrganization: Update Organization + +Update the organization and its metadata. +- Update organization name +- Update organization labels + + @param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background(). + @param id Organization identifier - containerId as well as UUID identifier is supported. + @return ApiPartialUpdateOrganizationRequest +*/ +func (a *APIClient) PartialUpdateOrganization(ctx context.Context, id string) ApiPartialUpdateOrganizationRequest { + return PartialUpdateOrganizationRequest{ + apiService: a.defaultApi, + ctx: ctx, + id: id, + } +} + +func (a *APIClient) PartialUpdateOrganizationExecute(ctx context.Context, id string) (*OrganizationResponse, error) { + r := PartialUpdateOrganizationRequest{ + apiService: a.defaultApi, + ctx: ctx, + id: id, + } + return r.Execute() +} + type PartialUpdateProjectRequest struct { ctx context.Context apiService *DefaultApiService diff --git a/services/resourcemanager/api_default_test.go b/services/resourcemanager/api_default_test.go index 6ffeab9e6..39d2baf10 100644 --- a/services/resourcemanager/api_default_test.go +++ b/services/resourcemanager/api_default_test.go @@ -211,6 +211,52 @@ func Test_resourcemanager_DefaultApiService(t *testing.T) { } }) + t.Run("Test DefaultApiService DeleteOrganizationLabels", func(t *testing.T) { + _apiUrlPath := "/v2/organizations/{containerId}/labels" + containerIdValue := "containerId-value" + _apiUrlPath = strings.Replace(_apiUrlPath, "{"+"containerId"+"}", url.PathEscape(ParameterValueToString(containerIdValue, "containerId")), -1) + + testDefaultApiServeMux := http.NewServeMux() + testDefaultApiServeMux.HandleFunc(_apiUrlPath, func(w http.ResponseWriter, req *http.Request) { + }) + testServer := httptest.NewServer(testDefaultApiServeMux) + defer testServer.Close() + + configuration := &config.Configuration{ + DefaultHeader: make(map[string]string), + UserAgent: "OpenAPI-Generator/1.0.0/go", + Debug: false, + Region: "test_region", + Servers: config.ServerConfigurations{ + { + URL: testServer.URL, + Description: "Localhost for resourcemanager_DefaultApi", + Variables: map[string]config.ServerVariable{ + "region": { + DefaultValue: "test_region.", + EnumValues: []string{ + "test_region.", + }, + }, + }, + }, + }, + OperationServers: map[string]config.ServerConfigurations{}, + } + apiClient, err := NewAPIClient(config.WithCustomConfiguration(configuration), config.WithoutAuthentication()) + if err != nil { + t.Fatalf("creating API client: %v", err) + } + + containerId := containerIdValue + + reqErr := apiClient.DeleteOrganizationLabels(context.Background(), containerId).Execute() + + if reqErr != nil { + t.Fatalf("error in call: %v", reqErr) + } + }) + t.Run("Test DefaultApiService DeleteProject", func(t *testing.T) { _apiUrlPath := "/v2/projects/{id}" idValue := "id-value" @@ -257,6 +303,52 @@ func Test_resourcemanager_DefaultApiService(t *testing.T) { } }) + t.Run("Test DefaultApiService DeleteProjectLabels", func(t *testing.T) { + _apiUrlPath := "/v2/projects/{containerId}/labels" + containerIdValue := "containerId-value" + _apiUrlPath = strings.Replace(_apiUrlPath, "{"+"containerId"+"}", url.PathEscape(ParameterValueToString(containerIdValue, "containerId")), -1) + + testDefaultApiServeMux := http.NewServeMux() + testDefaultApiServeMux.HandleFunc(_apiUrlPath, func(w http.ResponseWriter, req *http.Request) { + }) + testServer := httptest.NewServer(testDefaultApiServeMux) + defer testServer.Close() + + configuration := &config.Configuration{ + DefaultHeader: make(map[string]string), + UserAgent: "OpenAPI-Generator/1.0.0/go", + Debug: false, + Region: "test_region", + Servers: config.ServerConfigurations{ + { + URL: testServer.URL, + Description: "Localhost for resourcemanager_DefaultApi", + Variables: map[string]config.ServerVariable{ + "region": { + DefaultValue: "test_region.", + EnumValues: []string{ + "test_region.", + }, + }, + }, + }, + }, + OperationServers: map[string]config.ServerConfigurations{}, + } + apiClient, err := NewAPIClient(config.WithCustomConfiguration(configuration), config.WithoutAuthentication()) + if err != nil { + t.Fatalf("creating API client: %v", err) + } + + containerId := containerIdValue + + reqErr := apiClient.DeleteProjectLabels(context.Background(), containerId).Execute() + + if reqErr != nil { + t.Fatalf("error in call: %v", reqErr) + } + }) + t.Run("Test DefaultApiService GetFolderDetails", func(t *testing.T) { _apiUrlPath := "/v2/folders/{containerId}" containerIdValue := "containerId-value" @@ -413,6 +505,54 @@ func Test_resourcemanager_DefaultApiService(t *testing.T) { } }) + t.Run("Test DefaultApiService ListFolders", func(t *testing.T) { + _apiUrlPath := "/v2/folders" + + testDefaultApiServeMux := http.NewServeMux() + testDefaultApiServeMux.HandleFunc(_apiUrlPath, func(w http.ResponseWriter, req *http.Request) { + data := ListFoldersResponse{} + w.Header().Add("Content-Type", "application/json") + json.NewEncoder(w).Encode(data) + }) + testServer := httptest.NewServer(testDefaultApiServeMux) + defer testServer.Close() + + configuration := &config.Configuration{ + DefaultHeader: make(map[string]string), + UserAgent: "OpenAPI-Generator/1.0.0/go", + Debug: false, + Region: "test_region", + Servers: config.ServerConfigurations{ + { + URL: testServer.URL, + Description: "Localhost for resourcemanager_DefaultApi", + Variables: map[string]config.ServerVariable{ + "region": { + DefaultValue: "test_region.", + EnumValues: []string{ + "test_region.", + }, + }, + }, + }, + }, + OperationServers: map[string]config.ServerConfigurations{}, + } + apiClient, err := NewAPIClient(config.WithCustomConfiguration(configuration), config.WithoutAuthentication()) + if err != nil { + t.Fatalf("creating API client: %v", err) + } + + resp, reqErr := apiClient.ListFolders(context.Background()).Execute() + + if reqErr != nil { + t.Fatalf("error in call: %v", reqErr) + } + if IsNil(resp) { + t.Fatalf("response not present") + } + }) + t.Run("Test DefaultApiService ListOrganizations", func(t *testing.T) { _apiUrlPath := "/v2/organizations" @@ -561,6 +701,58 @@ func Test_resourcemanager_DefaultApiService(t *testing.T) { } }) + t.Run("Test DefaultApiService PartialUpdateOrganization", func(t *testing.T) { + _apiUrlPath := "/v2/organizations/{id}" + idValue := "id-value" + _apiUrlPath = strings.Replace(_apiUrlPath, "{"+"id"+"}", url.PathEscape(ParameterValueToString(idValue, "id")), -1) + + testDefaultApiServeMux := http.NewServeMux() + testDefaultApiServeMux.HandleFunc(_apiUrlPath, func(w http.ResponseWriter, req *http.Request) { + data := OrganizationResponse{} + w.Header().Add("Content-Type", "application/json") + json.NewEncoder(w).Encode(data) + }) + testServer := httptest.NewServer(testDefaultApiServeMux) + defer testServer.Close() + + configuration := &config.Configuration{ + DefaultHeader: make(map[string]string), + UserAgent: "OpenAPI-Generator/1.0.0/go", + Debug: false, + Region: "test_region", + Servers: config.ServerConfigurations{ + { + URL: testServer.URL, + Description: "Localhost for resourcemanager_DefaultApi", + Variables: map[string]config.ServerVariable{ + "region": { + DefaultValue: "test_region.", + EnumValues: []string{ + "test_region.", + }, + }, + }, + }, + }, + OperationServers: map[string]config.ServerConfigurations{}, + } + apiClient, err := NewAPIClient(config.WithCustomConfiguration(configuration), config.WithoutAuthentication()) + if err != nil { + t.Fatalf("creating API client: %v", err) + } + + id := idValue + + resp, reqErr := apiClient.PartialUpdateOrganization(context.Background(), id).Execute() + + if reqErr != nil { + t.Fatalf("error in call: %v", reqErr) + } + if IsNil(resp) { + t.Fatalf("response not present") + } + }) + t.Run("Test DefaultApiService PartialUpdateProject", func(t *testing.T) { _apiUrlPath := "/v2/projects/{id}" idValue := "id-value" diff --git a/services/resourcemanager/model_list_folders_response.go b/services/resourcemanager/model_list_folders_response.go new file mode 100644 index 000000000..2f6856a05 --- /dev/null +++ b/services/resourcemanager/model_list_folders_response.go @@ -0,0 +1,217 @@ +/* +Resource Manager API + +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 + +API version: 2.0 +*/ + +// Code generated by OpenAPI Generator (https://openapi-generator.tech); DO NOT EDIT. + +package resourcemanager + +import ( + "encoding/json" +) + +// checks if the ListFoldersResponse type satisfies the MappedNullable interface at compile time +var _ MappedNullable = &ListFoldersResponse{} + +/* + types and functions for items +*/ + +// isArray +type ListFoldersResponseGetItemsAttributeType = *[]ListFoldersResponseItemsInner +type ListFoldersResponseGetItemsArgType = []ListFoldersResponseItemsInner +type ListFoldersResponseGetItemsRetType = []ListFoldersResponseItemsInner + +func getListFoldersResponseGetItemsAttributeTypeOk(arg ListFoldersResponseGetItemsAttributeType) (ret ListFoldersResponseGetItemsRetType, ok bool) { + if arg == nil { + return ret, false + } + return *arg, true +} + +func setListFoldersResponseGetItemsAttributeType(arg *ListFoldersResponseGetItemsAttributeType, val ListFoldersResponseGetItemsRetType) { + *arg = &val +} + +/* + types and functions for limit +*/ + +// isNumber +type ListFoldersResponseGetLimitAttributeType = *float64 +type ListFoldersResponseGetLimitArgType = float64 +type ListFoldersResponseGetLimitRetType = float64 + +func getListFoldersResponseGetLimitAttributeTypeOk(arg ListFoldersResponseGetLimitAttributeType) (ret ListFoldersResponseGetLimitRetType, ok bool) { + if arg == nil { + return ret, false + } + return *arg, true +} + +func setListFoldersResponseGetLimitAttributeType(arg *ListFoldersResponseGetLimitAttributeType, val ListFoldersResponseGetLimitRetType) { + *arg = &val +} + +/* + types and functions for offset +*/ + +// isNumber +type ListFoldersResponseGetOffsetAttributeType = *float64 +type ListFoldersResponseGetOffsetArgType = float64 +type ListFoldersResponseGetOffsetRetType = float64 + +func getListFoldersResponseGetOffsetAttributeTypeOk(arg ListFoldersResponseGetOffsetAttributeType) (ret ListFoldersResponseGetOffsetRetType, ok bool) { + if arg == nil { + return ret, false + } + return *arg, true +} + +func setListFoldersResponseGetOffsetAttributeType(arg *ListFoldersResponseGetOffsetAttributeType, val ListFoldersResponseGetOffsetRetType) { + *arg = &val +} + +// ListFoldersResponse struct for ListFoldersResponse +type ListFoldersResponse struct { + // REQUIRED + Items ListFoldersResponseGetItemsAttributeType `json:"items"` + // The maximum number of projects to return in the response. If not present, an appropriate default will be used. + // REQUIRED + Limit ListFoldersResponseGetLimitAttributeType `json:"limit"` + // The offset of the first item in the collection to return. + // REQUIRED + Offset ListFoldersResponseGetOffsetAttributeType `json:"offset"` +} + +type _ListFoldersResponse ListFoldersResponse + +// NewListFoldersResponse instantiates a new ListFoldersResponse object +// This constructor will assign default values to properties that have it defined, +// and makes sure properties required by API are set, but the set of arguments +// will change when the set of required properties is changed +func NewListFoldersResponse(items ListFoldersResponseGetItemsArgType, limit ListFoldersResponseGetLimitArgType, offset ListFoldersResponseGetOffsetArgType) *ListFoldersResponse { + this := ListFoldersResponse{} + setListFoldersResponseGetItemsAttributeType(&this.Items, items) + setListFoldersResponseGetLimitAttributeType(&this.Limit, limit) + setListFoldersResponseGetOffsetAttributeType(&this.Offset, offset) + return &this +} + +// NewListFoldersResponseWithDefaults instantiates a new ListFoldersResponse object +// This constructor will only assign default values to properties that have it defined, +// but it doesn't guarantee that properties required by API are set +func NewListFoldersResponseWithDefaults() *ListFoldersResponse { + this := ListFoldersResponse{} + var limit float64 = 50 + this.Limit = &limit + var offset float64 = 0 + this.Offset = &offset + return &this +} + +// GetItems returns the Items field value +func (o *ListFoldersResponse) GetItems() (ret ListFoldersResponseGetItemsRetType) { + ret, _ = o.GetItemsOk() + return ret +} + +// GetItemsOk returns a tuple with the Items field value +// and a boolean to check if the value has been set. +func (o *ListFoldersResponse) GetItemsOk() (ret ListFoldersResponseGetItemsRetType, ok bool) { + return getListFoldersResponseGetItemsAttributeTypeOk(o.Items) +} + +// SetItems sets field value +func (o *ListFoldersResponse) SetItems(v ListFoldersResponseGetItemsRetType) { + setListFoldersResponseGetItemsAttributeType(&o.Items, v) +} + +// GetLimit returns the Limit field value +func (o *ListFoldersResponse) GetLimit() (ret ListFoldersResponseGetLimitRetType) { + ret, _ = o.GetLimitOk() + return ret +} + +// GetLimitOk returns a tuple with the Limit field value +// and a boolean to check if the value has been set. +func (o *ListFoldersResponse) GetLimitOk() (ret ListFoldersResponseGetLimitRetType, ok bool) { + return getListFoldersResponseGetLimitAttributeTypeOk(o.Limit) +} + +// SetLimit sets field value +func (o *ListFoldersResponse) SetLimit(v ListFoldersResponseGetLimitRetType) { + setListFoldersResponseGetLimitAttributeType(&o.Limit, v) +} + +// GetOffset returns the Offset field value +func (o *ListFoldersResponse) GetOffset() (ret ListFoldersResponseGetOffsetRetType) { + ret, _ = o.GetOffsetOk() + return ret +} + +// GetOffsetOk returns a tuple with the Offset field value +// and a boolean to check if the value has been set. +func (o *ListFoldersResponse) GetOffsetOk() (ret ListFoldersResponseGetOffsetRetType, ok bool) { + return getListFoldersResponseGetOffsetAttributeTypeOk(o.Offset) +} + +// SetOffset sets field value +func (o *ListFoldersResponse) SetOffset(v ListFoldersResponseGetOffsetRetType) { + setListFoldersResponseGetOffsetAttributeType(&o.Offset, v) +} + +func (o ListFoldersResponse) ToMap() (map[string]interface{}, error) { + toSerialize := map[string]interface{}{} + if val, ok := getListFoldersResponseGetItemsAttributeTypeOk(o.Items); ok { + toSerialize["Items"] = val + } + if val, ok := getListFoldersResponseGetLimitAttributeTypeOk(o.Limit); ok { + toSerialize["Limit"] = val + } + if val, ok := getListFoldersResponseGetOffsetAttributeTypeOk(o.Offset); ok { + toSerialize["Offset"] = val + } + return toSerialize, nil +} + +type NullableListFoldersResponse struct { + value *ListFoldersResponse + isSet bool +} + +func (v NullableListFoldersResponse) Get() *ListFoldersResponse { + return v.value +} + +func (v *NullableListFoldersResponse) Set(val *ListFoldersResponse) { + v.value = val + v.isSet = true +} + +func (v NullableListFoldersResponse) IsSet() bool { + return v.isSet +} + +func (v *NullableListFoldersResponse) Unset() { + v.value = nil + v.isSet = false +} + +func NewNullableListFoldersResponse(val *ListFoldersResponse) *NullableListFoldersResponse { + return &NullableListFoldersResponse{value: val, isSet: true} +} + +func (v NullableListFoldersResponse) MarshalJSON() ([]byte, error) { + return json.Marshal(v.value) +} + +func (v *NullableListFoldersResponse) UnmarshalJSON(src []byte) error { + v.isSet = true + return json.Unmarshal(src, &v.value) +} diff --git a/services/resourcemanager/model_list_folders_response_items_inner.go b/services/resourcemanager/model_list_folders_response_items_inner.go new file mode 100644 index 000000000..84ff9be49 --- /dev/null +++ b/services/resourcemanager/model_list_folders_response_items_inner.go @@ -0,0 +1,397 @@ +/* +Resource Manager API + +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 + +API version: 2.0 +*/ + +// Code generated by OpenAPI Generator (https://openapi-generator.tech); DO NOT EDIT. + +package resourcemanager + +import ( + "encoding/json" + "time" +) + +// checks if the ListFoldersResponseItemsInner type satisfies the MappedNullable interface at compile time +var _ MappedNullable = &ListFoldersResponseItemsInner{} + +/* + types and functions for containerId +*/ + +// isNotNullableString +type ListFoldersResponseItemsInnerGetContainerIdAttributeType = *string + +func getListFoldersResponseItemsInnerGetContainerIdAttributeTypeOk(arg ListFoldersResponseItemsInnerGetContainerIdAttributeType) (ret ListFoldersResponseItemsInnerGetContainerIdRetType, ok bool) { + if arg == nil { + return ret, false + } + return *arg, true +} + +func setListFoldersResponseItemsInnerGetContainerIdAttributeType(arg *ListFoldersResponseItemsInnerGetContainerIdAttributeType, val ListFoldersResponseItemsInnerGetContainerIdRetType) { + *arg = &val +} + +type ListFoldersResponseItemsInnerGetContainerIdArgType = string +type ListFoldersResponseItemsInnerGetContainerIdRetType = string + +/* + types and functions for creationTime +*/ + +// isDateTime +type ListFoldersResponseItemsInnerGetCreationTimeAttributeType = *time.Time +type ListFoldersResponseItemsInnerGetCreationTimeArgType = time.Time +type ListFoldersResponseItemsInnerGetCreationTimeRetType = time.Time + +func getListFoldersResponseItemsInnerGetCreationTimeAttributeTypeOk(arg ListFoldersResponseItemsInnerGetCreationTimeAttributeType) (ret ListFoldersResponseItemsInnerGetCreationTimeRetType, ok bool) { + if arg == nil { + return ret, false + } + return *arg, true +} + +func setListFoldersResponseItemsInnerGetCreationTimeAttributeType(arg *ListFoldersResponseItemsInnerGetCreationTimeAttributeType, val ListFoldersResponseItemsInnerGetCreationTimeRetType) { + *arg = &val +} + +/* + types and functions for folderId +*/ + +// isNotNullableString +type ListFoldersResponseItemsInnerGetFolderIdAttributeType = *string + +func getListFoldersResponseItemsInnerGetFolderIdAttributeTypeOk(arg ListFoldersResponseItemsInnerGetFolderIdAttributeType) (ret ListFoldersResponseItemsInnerGetFolderIdRetType, ok bool) { + if arg == nil { + return ret, false + } + return *arg, true +} + +func setListFoldersResponseItemsInnerGetFolderIdAttributeType(arg *ListFoldersResponseItemsInnerGetFolderIdAttributeType, val ListFoldersResponseItemsInnerGetFolderIdRetType) { + *arg = &val +} + +type ListFoldersResponseItemsInnerGetFolderIdArgType = string +type ListFoldersResponseItemsInnerGetFolderIdRetType = string + +/* + types and functions for labels +*/ + +// isContainer +type ListFoldersResponseItemsInnerGetLabelsAttributeType = *map[string]string +type ListFoldersResponseItemsInnerGetLabelsArgType = map[string]string +type ListFoldersResponseItemsInnerGetLabelsRetType = map[string]string + +func getListFoldersResponseItemsInnerGetLabelsAttributeTypeOk(arg ListFoldersResponseItemsInnerGetLabelsAttributeType) (ret ListFoldersResponseItemsInnerGetLabelsRetType, ok bool) { + if arg == nil { + return ret, false + } + return *arg, true +} + +func setListFoldersResponseItemsInnerGetLabelsAttributeType(arg *ListFoldersResponseItemsInnerGetLabelsAttributeType, val ListFoldersResponseItemsInnerGetLabelsRetType) { + *arg = &val +} + +/* + types and functions for name +*/ + +// isNotNullableString +type ListFoldersResponseItemsInnerGetNameAttributeType = *string + +func getListFoldersResponseItemsInnerGetNameAttributeTypeOk(arg ListFoldersResponseItemsInnerGetNameAttributeType) (ret ListFoldersResponseItemsInnerGetNameRetType, ok bool) { + if arg == nil { + return ret, false + } + return *arg, true +} + +func setListFoldersResponseItemsInnerGetNameAttributeType(arg *ListFoldersResponseItemsInnerGetNameAttributeType, val ListFoldersResponseItemsInnerGetNameRetType) { + *arg = &val +} + +type ListFoldersResponseItemsInnerGetNameArgType = string +type ListFoldersResponseItemsInnerGetNameRetType = string + +/* + types and functions for parent +*/ + +// isModel +type ListFoldersResponseItemsInnerGetParentAttributeType = *Parent +type ListFoldersResponseItemsInnerGetParentArgType = Parent +type ListFoldersResponseItemsInnerGetParentRetType = Parent + +func getListFoldersResponseItemsInnerGetParentAttributeTypeOk(arg ListFoldersResponseItemsInnerGetParentAttributeType) (ret ListFoldersResponseItemsInnerGetParentRetType, ok bool) { + if arg == nil { + return ret, false + } + return *arg, true +} + +func setListFoldersResponseItemsInnerGetParentAttributeType(arg *ListFoldersResponseItemsInnerGetParentAttributeType, val ListFoldersResponseItemsInnerGetParentRetType) { + *arg = &val +} + +/* + types and functions for updateTime +*/ + +// isDateTime +type ListFoldersResponseItemsInnerGetUpdateTimeAttributeType = *time.Time +type ListFoldersResponseItemsInnerGetUpdateTimeArgType = time.Time +type ListFoldersResponseItemsInnerGetUpdateTimeRetType = time.Time + +func getListFoldersResponseItemsInnerGetUpdateTimeAttributeTypeOk(arg ListFoldersResponseItemsInnerGetUpdateTimeAttributeType) (ret ListFoldersResponseItemsInnerGetUpdateTimeRetType, ok bool) { + if arg == nil { + return ret, false + } + return *arg, true +} + +func setListFoldersResponseItemsInnerGetUpdateTimeAttributeType(arg *ListFoldersResponseItemsInnerGetUpdateTimeAttributeType, val ListFoldersResponseItemsInnerGetUpdateTimeRetType) { + *arg = &val +} + +// ListFoldersResponseItemsInner struct for ListFoldersResponseItemsInner +type ListFoldersResponseItemsInner struct { + // Globally unique folder identifier. + // REQUIRED + ContainerId ListFoldersResponseItemsInnerGetContainerIdAttributeType `json:"containerId"` + // Timestamp at which the folder was created. + // REQUIRED + CreationTime ListFoldersResponseItemsInnerGetCreationTimeAttributeType `json:"creationTime"` + // Globally unique folder identifier. + // REQUIRED + FolderId ListFoldersResponseItemsInnerGetFolderIdAttributeType `json:"folderId"` + // Labels are key-value string pairs that can be attached to a resource container. Some labels may be enforced via policies. - A label key must match the regex `[A-ZÄÜÖa-zäüöß0-9_-]{1,64}`. - A label value must match the regex `^$|[A-ZÄÜÖa-zäüöß0-9_-]{1,64}`. + Labels ListFoldersResponseItemsInnerGetLabelsAttributeType `json:"labels,omitempty"` + // Name of the folder. + // REQUIRED + Name ListFoldersResponseItemsInnerGetNameAttributeType `json:"name"` + // REQUIRED + Parent ListFoldersResponseItemsInnerGetParentAttributeType `json:"parent"` + // Timestamp at which the folder was created. + // REQUIRED + UpdateTime ListFoldersResponseItemsInnerGetUpdateTimeAttributeType `json:"updateTime"` +} + +type _ListFoldersResponseItemsInner ListFoldersResponseItemsInner + +// NewListFoldersResponseItemsInner instantiates a new ListFoldersResponseItemsInner object +// This constructor will assign default values to properties that have it defined, +// and makes sure properties required by API are set, but the set of arguments +// will change when the set of required properties is changed +func NewListFoldersResponseItemsInner(containerId ListFoldersResponseItemsInnerGetContainerIdArgType, creationTime ListFoldersResponseItemsInnerGetCreationTimeArgType, folderId ListFoldersResponseItemsInnerGetFolderIdArgType, name ListFoldersResponseItemsInnerGetNameArgType, parent ListFoldersResponseItemsInnerGetParentArgType, updateTime ListFoldersResponseItemsInnerGetUpdateTimeArgType) *ListFoldersResponseItemsInner { + this := ListFoldersResponseItemsInner{} + setListFoldersResponseItemsInnerGetContainerIdAttributeType(&this.ContainerId, containerId) + setListFoldersResponseItemsInnerGetCreationTimeAttributeType(&this.CreationTime, creationTime) + setListFoldersResponseItemsInnerGetFolderIdAttributeType(&this.FolderId, folderId) + setListFoldersResponseItemsInnerGetNameAttributeType(&this.Name, name) + setListFoldersResponseItemsInnerGetParentAttributeType(&this.Parent, parent) + setListFoldersResponseItemsInnerGetUpdateTimeAttributeType(&this.UpdateTime, updateTime) + return &this +} + +// NewListFoldersResponseItemsInnerWithDefaults instantiates a new ListFoldersResponseItemsInner object +// This constructor will only assign default values to properties that have it defined, +// but it doesn't guarantee that properties required by API are set +func NewListFoldersResponseItemsInnerWithDefaults() *ListFoldersResponseItemsInner { + this := ListFoldersResponseItemsInner{} + return &this +} + +// GetContainerId returns the ContainerId field value +func (o *ListFoldersResponseItemsInner) GetContainerId() (ret ListFoldersResponseItemsInnerGetContainerIdRetType) { + ret, _ = o.GetContainerIdOk() + return ret +} + +// GetContainerIdOk returns a tuple with the ContainerId field value +// and a boolean to check if the value has been set. +func (o *ListFoldersResponseItemsInner) GetContainerIdOk() (ret ListFoldersResponseItemsInnerGetContainerIdRetType, ok bool) { + return getListFoldersResponseItemsInnerGetContainerIdAttributeTypeOk(o.ContainerId) +} + +// SetContainerId sets field value +func (o *ListFoldersResponseItemsInner) SetContainerId(v ListFoldersResponseItemsInnerGetContainerIdRetType) { + setListFoldersResponseItemsInnerGetContainerIdAttributeType(&o.ContainerId, v) +} + +// GetCreationTime returns the CreationTime field value +func (o *ListFoldersResponseItemsInner) GetCreationTime() (ret ListFoldersResponseItemsInnerGetCreationTimeRetType) { + ret, _ = o.GetCreationTimeOk() + return ret +} + +// GetCreationTimeOk returns a tuple with the CreationTime field value +// and a boolean to check if the value has been set. +func (o *ListFoldersResponseItemsInner) GetCreationTimeOk() (ret ListFoldersResponseItemsInnerGetCreationTimeRetType, ok bool) { + return getListFoldersResponseItemsInnerGetCreationTimeAttributeTypeOk(o.CreationTime) +} + +// SetCreationTime sets field value +func (o *ListFoldersResponseItemsInner) SetCreationTime(v ListFoldersResponseItemsInnerGetCreationTimeRetType) { + setListFoldersResponseItemsInnerGetCreationTimeAttributeType(&o.CreationTime, v) +} + +// GetFolderId returns the FolderId field value +func (o *ListFoldersResponseItemsInner) GetFolderId() (ret ListFoldersResponseItemsInnerGetFolderIdRetType) { + ret, _ = o.GetFolderIdOk() + return ret +} + +// GetFolderIdOk returns a tuple with the FolderId field value +// and a boolean to check if the value has been set. +func (o *ListFoldersResponseItemsInner) GetFolderIdOk() (ret ListFoldersResponseItemsInnerGetFolderIdRetType, ok bool) { + return getListFoldersResponseItemsInnerGetFolderIdAttributeTypeOk(o.FolderId) +} + +// SetFolderId sets field value +func (o *ListFoldersResponseItemsInner) SetFolderId(v ListFoldersResponseItemsInnerGetFolderIdRetType) { + setListFoldersResponseItemsInnerGetFolderIdAttributeType(&o.FolderId, v) +} + +// GetLabels returns the Labels field value if set, zero value otherwise. +func (o *ListFoldersResponseItemsInner) GetLabels() (res ListFoldersResponseItemsInnerGetLabelsRetType) { + res, _ = o.GetLabelsOk() + return +} + +// GetLabelsOk returns a tuple with the Labels field value if set, nil otherwise +// and a boolean to check if the value has been set. +func (o *ListFoldersResponseItemsInner) GetLabelsOk() (ret ListFoldersResponseItemsInnerGetLabelsRetType, ok bool) { + return getListFoldersResponseItemsInnerGetLabelsAttributeTypeOk(o.Labels) +} + +// HasLabels returns a boolean if a field has been set. +func (o *ListFoldersResponseItemsInner) HasLabels() bool { + _, ok := o.GetLabelsOk() + return ok +} + +// SetLabels gets a reference to the given map[string]string and assigns it to the Labels field. +func (o *ListFoldersResponseItemsInner) SetLabels(v ListFoldersResponseItemsInnerGetLabelsRetType) { + setListFoldersResponseItemsInnerGetLabelsAttributeType(&o.Labels, v) +} + +// GetName returns the Name field value +func (o *ListFoldersResponseItemsInner) GetName() (ret ListFoldersResponseItemsInnerGetNameRetType) { + ret, _ = o.GetNameOk() + return ret +} + +// GetNameOk returns a tuple with the Name field value +// and a boolean to check if the value has been set. +func (o *ListFoldersResponseItemsInner) GetNameOk() (ret ListFoldersResponseItemsInnerGetNameRetType, ok bool) { + return getListFoldersResponseItemsInnerGetNameAttributeTypeOk(o.Name) +} + +// SetName sets field value +func (o *ListFoldersResponseItemsInner) SetName(v ListFoldersResponseItemsInnerGetNameRetType) { + setListFoldersResponseItemsInnerGetNameAttributeType(&o.Name, v) +} + +// GetParent returns the Parent field value +func (o *ListFoldersResponseItemsInner) GetParent() (ret ListFoldersResponseItemsInnerGetParentRetType) { + ret, _ = o.GetParentOk() + return ret +} + +// GetParentOk returns a tuple with the Parent field value +// and a boolean to check if the value has been set. +func (o *ListFoldersResponseItemsInner) GetParentOk() (ret ListFoldersResponseItemsInnerGetParentRetType, ok bool) { + return getListFoldersResponseItemsInnerGetParentAttributeTypeOk(o.Parent) +} + +// SetParent sets field value +func (o *ListFoldersResponseItemsInner) SetParent(v ListFoldersResponseItemsInnerGetParentRetType) { + setListFoldersResponseItemsInnerGetParentAttributeType(&o.Parent, v) +} + +// GetUpdateTime returns the UpdateTime field value +func (o *ListFoldersResponseItemsInner) GetUpdateTime() (ret ListFoldersResponseItemsInnerGetUpdateTimeRetType) { + ret, _ = o.GetUpdateTimeOk() + return ret +} + +// GetUpdateTimeOk returns a tuple with the UpdateTime field value +// and a boolean to check if the value has been set. +func (o *ListFoldersResponseItemsInner) GetUpdateTimeOk() (ret ListFoldersResponseItemsInnerGetUpdateTimeRetType, ok bool) { + return getListFoldersResponseItemsInnerGetUpdateTimeAttributeTypeOk(o.UpdateTime) +} + +// SetUpdateTime sets field value +func (o *ListFoldersResponseItemsInner) SetUpdateTime(v ListFoldersResponseItemsInnerGetUpdateTimeRetType) { + setListFoldersResponseItemsInnerGetUpdateTimeAttributeType(&o.UpdateTime, v) +} + +func (o ListFoldersResponseItemsInner) ToMap() (map[string]interface{}, error) { + toSerialize := map[string]interface{}{} + if val, ok := getListFoldersResponseItemsInnerGetContainerIdAttributeTypeOk(o.ContainerId); ok { + toSerialize["ContainerId"] = val + } + if val, ok := getListFoldersResponseItemsInnerGetCreationTimeAttributeTypeOk(o.CreationTime); ok { + toSerialize["CreationTime"] = val + } + if val, ok := getListFoldersResponseItemsInnerGetFolderIdAttributeTypeOk(o.FolderId); ok { + toSerialize["FolderId"] = val + } + if val, ok := getListFoldersResponseItemsInnerGetLabelsAttributeTypeOk(o.Labels); ok { + toSerialize["Labels"] = val + } + if val, ok := getListFoldersResponseItemsInnerGetNameAttributeTypeOk(o.Name); ok { + toSerialize["Name"] = val + } + if val, ok := getListFoldersResponseItemsInnerGetParentAttributeTypeOk(o.Parent); ok { + toSerialize["Parent"] = val + } + if val, ok := getListFoldersResponseItemsInnerGetUpdateTimeAttributeTypeOk(o.UpdateTime); ok { + toSerialize["UpdateTime"] = val + } + return toSerialize, nil +} + +type NullableListFoldersResponseItemsInner struct { + value *ListFoldersResponseItemsInner + isSet bool +} + +func (v NullableListFoldersResponseItemsInner) Get() *ListFoldersResponseItemsInner { + return v.value +} + +func (v *NullableListFoldersResponseItemsInner) Set(val *ListFoldersResponseItemsInner) { + v.value = val + v.isSet = true +} + +func (v NullableListFoldersResponseItemsInner) IsSet() bool { + return v.isSet +} + +func (v *NullableListFoldersResponseItemsInner) Unset() { + v.value = nil + v.isSet = false +} + +func NewNullableListFoldersResponseItemsInner(val *ListFoldersResponseItemsInner) *NullableListFoldersResponseItemsInner { + return &NullableListFoldersResponseItemsInner{value: val, isSet: true} +} + +func (v NullableListFoldersResponseItemsInner) MarshalJSON() ([]byte, error) { + return json.Marshal(v.value) +} + +func (v *NullableListFoldersResponseItemsInner) UnmarshalJSON(src []byte) error { + v.isSet = true + return json.Unmarshal(src, &v.value) +} diff --git a/services/resourcemanager/model_list_folders_response_items_inner_test.go b/services/resourcemanager/model_list_folders_response_items_inner_test.go new file mode 100644 index 000000000..75879d011 --- /dev/null +++ b/services/resourcemanager/model_list_folders_response_items_inner_test.go @@ -0,0 +1,11 @@ +/* +Resource Manager API + +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 + +API version: 2.0 +*/ + +// Code generated by OpenAPI Generator (https://openapi-generator.tech); DO NOT EDIT. + +package resourcemanager diff --git a/services/resourcemanager/model_list_folders_response_test.go b/services/resourcemanager/model_list_folders_response_test.go new file mode 100644 index 000000000..75879d011 --- /dev/null +++ b/services/resourcemanager/model_list_folders_response_test.go @@ -0,0 +1,11 @@ +/* +Resource Manager API + +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 + +API version: 2.0 +*/ + +// Code generated by OpenAPI Generator (https://openapi-generator.tech); DO NOT EDIT. + +package resourcemanager diff --git a/services/resourcemanager/model_partial_update_organization_payload.go b/services/resourcemanager/model_partial_update_organization_payload.go new file mode 100644 index 000000000..1050c32bc --- /dev/null +++ b/services/resourcemanager/model_partial_update_organization_payload.go @@ -0,0 +1,177 @@ +/* +Resource Manager API + +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 + +API version: 2.0 +*/ + +// Code generated by OpenAPI Generator (https://openapi-generator.tech); DO NOT EDIT. + +package resourcemanager + +import ( + "encoding/json" +) + +// checks if the PartialUpdateOrganizationPayload type satisfies the MappedNullable interface at compile time +var _ MappedNullable = &PartialUpdateOrganizationPayload{} + +/* + types and functions for labels +*/ + +// isContainer +type PartialUpdateOrganizationPayloadGetLabelsAttributeType = *map[string]string +type PartialUpdateOrganizationPayloadGetLabelsArgType = map[string]string +type PartialUpdateOrganizationPayloadGetLabelsRetType = map[string]string + +func getPartialUpdateOrganizationPayloadGetLabelsAttributeTypeOk(arg PartialUpdateOrganizationPayloadGetLabelsAttributeType) (ret PartialUpdateOrganizationPayloadGetLabelsRetType, ok bool) { + if arg == nil { + return ret, false + } + return *arg, true +} + +func setPartialUpdateOrganizationPayloadGetLabelsAttributeType(arg *PartialUpdateOrganizationPayloadGetLabelsAttributeType, val PartialUpdateOrganizationPayloadGetLabelsRetType) { + *arg = &val +} + +/* + types and functions for name +*/ + +// isNotNullableString +type PartialUpdateOrganizationPayloadGetNameAttributeType = *string + +func getPartialUpdateOrganizationPayloadGetNameAttributeTypeOk(arg PartialUpdateOrganizationPayloadGetNameAttributeType) (ret PartialUpdateOrganizationPayloadGetNameRetType, ok bool) { + if arg == nil { + return ret, false + } + return *arg, true +} + +func setPartialUpdateOrganizationPayloadGetNameAttributeType(arg *PartialUpdateOrganizationPayloadGetNameAttributeType, val PartialUpdateOrganizationPayloadGetNameRetType) { + *arg = &val +} + +type PartialUpdateOrganizationPayloadGetNameArgType = string +type PartialUpdateOrganizationPayloadGetNameRetType = string + +// PartialUpdateOrganizationPayload struct for PartialUpdateOrganizationPayload +type PartialUpdateOrganizationPayload struct { + // Labels are key-value string pairs that can be attached to a resource container. Some labels may be enforced via policies. - A label key must match the regex `[A-ZÄÜÖa-zäüöß0-9_-]{1,64}`. - A label value must match the regex `^$|[A-ZÄÜÖa-zäüöß0-9_-]{1,64}`. + Labels PartialUpdateOrganizationPayloadGetLabelsAttributeType `json:"labels,omitempty"` + // The new name of the organization matching the regex `^[a-zA-ZäüöÄÜÖ0-9]( ?[a-zA-ZäüöÄÜÖß0-9_+&-]){0,39}$`. + Name PartialUpdateOrganizationPayloadGetNameAttributeType `json:"name,omitempty"` +} + +// NewPartialUpdateOrganizationPayload instantiates a new PartialUpdateOrganizationPayload object +// This constructor will assign default values to properties that have it defined, +// and makes sure properties required by API are set, but the set of arguments +// will change when the set of required properties is changed +func NewPartialUpdateOrganizationPayload() *PartialUpdateOrganizationPayload { + this := PartialUpdateOrganizationPayload{} + return &this +} + +// NewPartialUpdateOrganizationPayloadWithDefaults instantiates a new PartialUpdateOrganizationPayload object +// This constructor will only assign default values to properties that have it defined, +// but it doesn't guarantee that properties required by API are set +func NewPartialUpdateOrganizationPayloadWithDefaults() *PartialUpdateOrganizationPayload { + this := PartialUpdateOrganizationPayload{} + return &this +} + +// GetLabels returns the Labels field value if set, zero value otherwise. +func (o *PartialUpdateOrganizationPayload) GetLabels() (res PartialUpdateOrganizationPayloadGetLabelsRetType) { + res, _ = o.GetLabelsOk() + return +} + +// GetLabelsOk returns a tuple with the Labels field value if set, nil otherwise +// and a boolean to check if the value has been set. +func (o *PartialUpdateOrganizationPayload) GetLabelsOk() (ret PartialUpdateOrganizationPayloadGetLabelsRetType, ok bool) { + return getPartialUpdateOrganizationPayloadGetLabelsAttributeTypeOk(o.Labels) +} + +// HasLabels returns a boolean if a field has been set. +func (o *PartialUpdateOrganizationPayload) HasLabels() bool { + _, ok := o.GetLabelsOk() + return ok +} + +// SetLabels gets a reference to the given map[string]string and assigns it to the Labels field. +func (o *PartialUpdateOrganizationPayload) SetLabels(v PartialUpdateOrganizationPayloadGetLabelsRetType) { + setPartialUpdateOrganizationPayloadGetLabelsAttributeType(&o.Labels, v) +} + +// GetName returns the Name field value if set, zero value otherwise. +func (o *PartialUpdateOrganizationPayload) GetName() (res PartialUpdateOrganizationPayloadGetNameRetType) { + res, _ = o.GetNameOk() + return +} + +// GetNameOk returns a tuple with the Name field value if set, nil otherwise +// and a boolean to check if the value has been set. +func (o *PartialUpdateOrganizationPayload) GetNameOk() (ret PartialUpdateOrganizationPayloadGetNameRetType, ok bool) { + return getPartialUpdateOrganizationPayloadGetNameAttributeTypeOk(o.Name) +} + +// HasName returns a boolean if a field has been set. +func (o *PartialUpdateOrganizationPayload) HasName() bool { + _, ok := o.GetNameOk() + return ok +} + +// SetName gets a reference to the given string and assigns it to the Name field. +func (o *PartialUpdateOrganizationPayload) SetName(v PartialUpdateOrganizationPayloadGetNameRetType) { + setPartialUpdateOrganizationPayloadGetNameAttributeType(&o.Name, v) +} + +func (o PartialUpdateOrganizationPayload) ToMap() (map[string]interface{}, error) { + toSerialize := map[string]interface{}{} + if val, ok := getPartialUpdateOrganizationPayloadGetLabelsAttributeTypeOk(o.Labels); ok { + toSerialize["Labels"] = val + } + if val, ok := getPartialUpdateOrganizationPayloadGetNameAttributeTypeOk(o.Name); ok { + toSerialize["Name"] = val + } + return toSerialize, nil +} + +type NullablePartialUpdateOrganizationPayload struct { + value *PartialUpdateOrganizationPayload + isSet bool +} + +func (v NullablePartialUpdateOrganizationPayload) Get() *PartialUpdateOrganizationPayload { + return v.value +} + +func (v *NullablePartialUpdateOrganizationPayload) Set(val *PartialUpdateOrganizationPayload) { + v.value = val + v.isSet = true +} + +func (v NullablePartialUpdateOrganizationPayload) IsSet() bool { + return v.isSet +} + +func (v *NullablePartialUpdateOrganizationPayload) Unset() { + v.value = nil + v.isSet = false +} + +func NewNullablePartialUpdateOrganizationPayload(val *PartialUpdateOrganizationPayload) *NullablePartialUpdateOrganizationPayload { + return &NullablePartialUpdateOrganizationPayload{value: val, isSet: true} +} + +func (v NullablePartialUpdateOrganizationPayload) MarshalJSON() ([]byte, error) { + return json.Marshal(v.value) +} + +func (v *NullablePartialUpdateOrganizationPayload) UnmarshalJSON(src []byte) error { + v.isSet = true + return json.Unmarshal(src, &v.value) +} diff --git a/services/resourcemanager/model_partial_update_organization_payload_test.go b/services/resourcemanager/model_partial_update_organization_payload_test.go new file mode 100644 index 000000000..75879d011 --- /dev/null +++ b/services/resourcemanager/model_partial_update_organization_payload_test.go @@ -0,0 +1,11 @@ +/* +Resource Manager API + +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 + +API version: 2.0 +*/ + +// Code generated by OpenAPI Generator (https://openapi-generator.tech); DO NOT EDIT. + +package resourcemanager From 14aca0811ad7dd407899de5ca248e1cd3e8db1e5 Mon Sep 17 00:00:00 2001 From: Marcel Jacek Date: Wed, 4 Jun 2025 12:22:41 +0200 Subject: [PATCH 2/2] Update CHANGELOG.md --- CHANGELOG.md | 8 +++++++- services/resourcemanager/CHANGELOG.md | 6 ++++++ 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index f8389d141..041bbe6d7 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -30,7 +30,13 @@ - **Bugfix:** Adjusted `UnmarshalJSON` function to use enum types and added tests for enums - `redis`: [v0.24.1](services/redis/CHANGELOG.md#v0241-2025-06-04) - **Bugfix:** Adjusted `UnmarshalJSON` function to use enum types and added tests for enums -- `resourcemanager`: [v0.15.1](services/resourcemanager/CHANGELOG.md#v0151-2025-06-04) +- `resourcemanager`: + - [v0.16.0](services/resourcemanager/CHANGELOG.md#v0160-2025-06-04) + - **Feature:** Delete Organization labels using the new method `DeleteOrganizationLabels` + - **Feature:** Delete Project labels using the new method `DeleteProjectLabels` + - **Feature:** List folders using the new method `ListFolders` + - **Feature:** Partial Update Organization using the new method `PartialUpdateOrganization` + - [v0.15.1](services/resourcemanager/CHANGELOG.md#v0151-2025-06-04) - **Bugfix:** Adjusted `UnmarshalJSON` function to use enum types and added tests for enums - `runcommand`: [v1.2.1](services/runcommand/CHANGELOG.md#v121-2025-06-04) - **Bugfix:** Adjusted `UnmarshalJSON` function to use enum types and added tests for enums diff --git a/services/resourcemanager/CHANGELOG.md b/services/resourcemanager/CHANGELOG.md index 35d353391..6585ce092 100644 --- a/services/resourcemanager/CHANGELOG.md +++ b/services/resourcemanager/CHANGELOG.md @@ -1,3 +1,9 @@ +## v0.16.0 (2025-06-04) +- **Feature:** Delete Organization labels using the new method `DeleteOrganizationLabels` +- **Feature:** Delete Project labels using the new method `DeleteProjectLabels` +- **Feature:** List folders using the new method `ListFolders` +- **Feature:** Partial Update Organization using the new method `PartialUpdateOrganization` + ## v0.15.1 (2025-06-04) - **Bugfix:** Adjusted `UnmarshalJSON` function to use enum types and added tests for enums