diff --git a/services/objectstorage/api_default.go b/services/objectstorage/api_default.go index c9971a9510..4456dfd83c 100644 --- a/services/objectstorage/api_default.go +++ b/services/objectstorage/api_default.go @@ -794,6 +794,17 @@ func (r CreateAccessKeyRequest) Execute() (*CreateAccessKeyResponse, error) { newErr.Model = v return localVarReturnValue, newErr } + if localVarHTTPResponse.StatusCode == 429 { + var v RateLimitError + 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 == 500 { var v ErrorMessage err = client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -996,6 +1007,17 @@ func (r CreateBucketRequest) Execute() (*CreateBucketResponse, error) { newErr.Model = v return localVarReturnValue, newErr } + if localVarHTTPResponse.StatusCode == 429 { + var v RateLimitError + 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 == 500 { var v ErrorMessage err = client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -1366,6 +1388,17 @@ func (r CreateCredentialsGroupRequest) Execute() (*CreateCredentialsGroupRespons newErr.Model = v return localVarReturnValue, newErr } + if localVarHTTPResponse.StatusCode == 429 { + var v RateLimitError + 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 == 500 { var v ErrorMessage err = client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -1571,6 +1604,17 @@ func (r DeleteAccessKeyRequest) Execute() (*DeleteAccessKeyResponse, error) { newErr.Model = v return localVarReturnValue, newErr } + if localVarHTTPResponse.StatusCode == 429 { + var v RateLimitError + 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 == 500 { var v ErrorMessage err = client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -1754,6 +1798,17 @@ func (r DeleteBucketRequest) Execute() (*DeleteBucketResponse, error) { newErr.Model = v return localVarReturnValue, newErr } + if localVarHTTPResponse.StatusCode == 429 { + var v RateLimitError + 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 == 500 { var v ErrorMessage err = client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -2092,6 +2147,17 @@ func (r DeleteCredentialsGroupRequest) Execute() (*DeleteCredentialsGroupRespons newErr.Model = v return localVarReturnValue, newErr } + if localVarHTTPResponse.StatusCode == 429 { + var v RateLimitError + 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 == 500 { var v ErrorMessage err = client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -2472,6 +2538,17 @@ func (r DisableServiceRequest) Execute() (*ProjectStatus, error) { newErr.Model = v return localVarReturnValue, newErr } + if localVarHTTPResponse.StatusCode == 429 { + var v RateLimitError + 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 == 500 { var v ErrorMessage err = client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -2655,6 +2732,17 @@ func (r EnableServiceRequest) Execute() (*ProjectStatus, error) { newErr.Model = v return localVarReturnValue, newErr } + if localVarHTTPResponse.StatusCode == 429 { + var v RateLimitError + 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 == 500 { var v ErrorMessage err = client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -2846,6 +2934,17 @@ func (r GetBucketRequest) Execute() (*GetBucketResponse, error) { newErr.Model = v return localVarReturnValue, newErr } + if localVarHTTPResponse.StatusCode == 429 { + var v RateLimitError + 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 == 500 { var v ErrorMessage err = client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -3520,6 +3619,17 @@ func (r GetServiceStatusRequest) Execute() (*ProjectStatus, error) { newErr.Model = v return localVarReturnValue, newErr } + if localVarHTTPResponse.StatusCode == 429 { + var v RateLimitError + 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 == 500 { var v ErrorMessage err = client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -3713,6 +3823,17 @@ func (r ListAccessKeysRequest) Execute() (*ListAccessKeysResponse, error) { newErr.Model = v return localVarReturnValue, newErr } + if localVarHTTPResponse.StatusCode == 429 { + var v RateLimitError + 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 == 500 { var v ErrorMessage err = client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -3896,6 +4017,17 @@ func (r ListBucketsRequest) Execute() (*ListBucketsResponse, error) { newErr.Model = v return localVarReturnValue, newErr } + if localVarHTTPResponse.StatusCode == 429 { + var v RateLimitError + 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 == 500 { var v ErrorMessage err = client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -4068,6 +4200,17 @@ func (r ListCredentialsGroupsRequest) Execute() (*ListCredentialsGroupsResponse, newErr.Model = v return localVarReturnValue, newErr } + if localVarHTTPResponse.StatusCode == 429 { + var v RateLimitError + 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 == 500 { var v ErrorMessage err = client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) diff --git a/services/objectstorage/model_access_key.go b/services/objectstorage/model_access_key.go index 29719b89c2..4498703d45 100644 --- a/services/objectstorage/model_access_key.go +++ b/services/objectstorage/model_access_key.go @@ -49,28 +49,32 @@ type AccessKeyGetDisplayNameRetType = string types and functions for expires */ -// isNotNullableString +// isNullableString // Deprecated: Will be removed after 2026-09-30. Move to the packages generated for each available API version instead -type AccessKeyGetExpiresAttributeType = *string +type AccessKeyGetExpiresAttributeType = *NullableString // Deprecated: Will be removed after 2026-09-30. Move to the packages generated for each available API version instead func getAccessKeyGetExpiresAttributeTypeOk(arg AccessKeyGetExpiresAttributeType) (ret AccessKeyGetExpiresRetType, ok bool) { if arg == nil { - return ret, false + return nil, false } - return *arg, true + return arg.Get(), true } // Deprecated: Will be removed after 2026-09-30. Move to the packages generated for each available API version instead func setAccessKeyGetExpiresAttributeType(arg *AccessKeyGetExpiresAttributeType, val AccessKeyGetExpiresRetType) { - *arg = &val + if IsNil(*arg) { + *arg = NewNullableString(val) + } else { + (*arg).Set(val) + } } // Deprecated: Will be removed after 2026-09-30. Move to the packages generated for each available API version instead -type AccessKeyGetExpiresArgType = string +type AccessKeyGetExpiresArgType = *string // Deprecated: Will be removed after 2026-09-30. Move to the packages generated for each available API version instead -type AccessKeyGetExpiresRetType = string +type AccessKeyGetExpiresRetType = *string /* types and functions for keyId @@ -157,6 +161,7 @@ func (o *AccessKey) SetDisplayName(v AccessKeyGetDisplayNameRetType) { } // GetExpires returns the Expires field value +// If the value is explicit nil, the zero value for string will be returned // Deprecated: Will be removed after 2026-09-30. Move to the packages generated for each available API version instead func (o *AccessKey) GetExpires() (ret AccessKeyGetExpiresRetType) { ret, _ = o.GetExpiresOk() @@ -165,6 +170,7 @@ func (o *AccessKey) GetExpires() (ret AccessKeyGetExpiresRetType) { // GetExpiresOk returns a tuple with the Expires field value // and a boolean to check if the value has been set. +// NOTE: If the value is an explicit nil, `nil, true` will be returned // Deprecated: Will be removed after 2026-09-30. Move to the packages generated for each available API version instead func (o *AccessKey) GetExpiresOk() (ret AccessKeyGetExpiresRetType, ok bool) { return getAccessKeyGetExpiresAttributeTypeOk(o.Expires) diff --git a/services/objectstorage/model_create_access_key_payload.go b/services/objectstorage/model_create_access_key_payload.go index de1a220016..79e91655d5 100644 --- a/services/objectstorage/model_create_access_key_payload.go +++ b/services/objectstorage/model_create_access_key_payload.go @@ -28,22 +28,22 @@ var _ MappedNullable = &CreateAccessKeyPayload{} type CreateAccessKeyPayloadGetExpiresAttributeType = *time.Time // Deprecated: Will be removed after 2026-09-30. Move to the packages generated for each available API version instead -type CreateAccessKeyPayloadGetExpiresArgType = time.Time +type CreateAccessKeyPayloadGetExpiresArgType = *time.Time // Deprecated: Will be removed after 2026-09-30. Move to the packages generated for each available API version instead -type CreateAccessKeyPayloadGetExpiresRetType = time.Time +type CreateAccessKeyPayloadGetExpiresRetType = *time.Time // Deprecated: Will be removed after 2026-09-30. Move to the packages generated for each available API version instead func getCreateAccessKeyPayloadGetExpiresAttributeTypeOk(arg CreateAccessKeyPayloadGetExpiresAttributeType) (ret CreateAccessKeyPayloadGetExpiresRetType, ok bool) { if arg == nil { - return ret, false + return nil, false } - return *arg, true + return arg, true } // Deprecated: Will be removed after 2026-09-30. Move to the packages generated for each available API version instead func setCreateAccessKeyPayloadGetExpiresAttributeType(arg *CreateAccessKeyPayloadGetExpiresAttributeType, val CreateAccessKeyPayloadGetExpiresRetType) { - *arg = &val + *arg = val } // CreateAccessKeyPayload struct for CreateAccessKeyPayload @@ -72,7 +72,7 @@ func NewCreateAccessKeyPayloadWithDefaults() *CreateAccessKeyPayload { return &this } -// GetExpires returns the Expires field value if set, zero value otherwise. +// GetExpires returns the Expires field value if set, zero value otherwise (both if not set or set to explicit null). // Deprecated: Will be removed after 2026-09-30. Move to the packages generated for each available API version instead func (o *CreateAccessKeyPayload) GetExpires() (res CreateAccessKeyPayloadGetExpiresRetType) { res, _ = o.GetExpiresOk() @@ -81,6 +81,7 @@ func (o *CreateAccessKeyPayload) GetExpires() (res CreateAccessKeyPayloadGetExpi // GetExpiresOk returns a tuple with the Expires field value if set, nil otherwise // and a boolean to check if the value has been set. +// NOTE: If the value is an explicit nil, `nil, true` will be returned // Deprecated: Will be removed after 2026-09-30. Move to the packages generated for each available API version instead func (o *CreateAccessKeyPayload) GetExpiresOk() (ret CreateAccessKeyPayloadGetExpiresRetType, ok bool) { return getCreateAccessKeyPayloadGetExpiresAttributeTypeOk(o.Expires) @@ -99,6 +100,18 @@ func (o *CreateAccessKeyPayload) SetExpires(v CreateAccessKeyPayloadGetExpiresRe setCreateAccessKeyPayloadGetExpiresAttributeType(&o.Expires, v) } +// SetExpiresNil sets the value for Expires to be an explicit nil +// Deprecated: Will be removed after 2026-09-30. Move to the packages generated for each available API version instead +func (o *CreateAccessKeyPayload) SetExpiresNil() { + o.Expires = nil +} + +// UnsetExpires ensures that no value is present for Expires, not even an explicit nil +// Deprecated: Will be removed after 2026-09-30. Move to the packages generated for each available API version instead +func (o *CreateAccessKeyPayload) UnsetExpires() { + o.Expires = nil +} + // Deprecated: Will be removed after 2026-09-30. Move to the packages generated for each available API version instead func (o CreateAccessKeyPayload) ToMap() (map[string]interface{}, error) { toSerialize := map[string]interface{}{} diff --git a/services/objectstorage/model_rate_limit_error.go b/services/objectstorage/model_rate_limit_error.go new file mode 100644 index 0000000000..2e1330d28f --- /dev/null +++ b/services/objectstorage/model_rate_limit_error.go @@ -0,0 +1,385 @@ +/* +STACKIT Object Storage API + +STACKIT API to manage the Object Storage + +API version: 2.0.1 +*/ + +// Code generated by OpenAPI Generator (https://openapi-generator.tech); DO NOT EDIT. + +// Deprecated: Will be removed after 2026-09-30. Move to the packages generated for each available API version instead +package objectstorage + +import ( + "encoding/json" + "time" +) + +// checks if the RateLimitError type satisfies the MappedNullable interface at compile time +var _ MappedNullable = &RateLimitError{} + +/* + types and functions for error +*/ + +// isNotNullableString +// Deprecated: Will be removed after 2026-09-30. Move to the packages generated for each available API version instead +type RateLimitErrorGetErrorAttributeType = *string + +// Deprecated: Will be removed after 2026-09-30. Move to the packages generated for each available API version instead +func getRateLimitErrorGetErrorAttributeTypeOk(arg RateLimitErrorGetErrorAttributeType) (ret RateLimitErrorGetErrorRetType, ok bool) { + if arg == nil { + return ret, false + } + return *arg, true +} + +// Deprecated: Will be removed after 2026-09-30. Move to the packages generated for each available API version instead +func setRateLimitErrorGetErrorAttributeType(arg *RateLimitErrorGetErrorAttributeType, val RateLimitErrorGetErrorRetType) { + *arg = &val +} + +// Deprecated: Will be removed after 2026-09-30. Move to the packages generated for each available API version instead +type RateLimitErrorGetErrorArgType = string + +// Deprecated: Will be removed after 2026-09-30. Move to the packages generated for each available API version instead +type RateLimitErrorGetErrorRetType = string + +/* + types and functions for message +*/ + +// isNotNullableString +// Deprecated: Will be removed after 2026-09-30. Move to the packages generated for each available API version instead +type RateLimitErrorGetMessageAttributeType = *string + +// Deprecated: Will be removed after 2026-09-30. Move to the packages generated for each available API version instead +func getRateLimitErrorGetMessageAttributeTypeOk(arg RateLimitErrorGetMessageAttributeType) (ret RateLimitErrorGetMessageRetType, ok bool) { + if arg == nil { + return ret, false + } + return *arg, true +} + +// Deprecated: Will be removed after 2026-09-30. Move to the packages generated for each available API version instead +func setRateLimitErrorGetMessageAttributeType(arg *RateLimitErrorGetMessageAttributeType, val RateLimitErrorGetMessageRetType) { + *arg = &val +} + +// Deprecated: Will be removed after 2026-09-30. Move to the packages generated for each available API version instead +type RateLimitErrorGetMessageArgType = string + +// Deprecated: Will be removed after 2026-09-30. Move to the packages generated for each available API version instead +type RateLimitErrorGetMessageRetType = string + +/* + types and functions for path +*/ + +// isNotNullableString +// Deprecated: Will be removed after 2026-09-30. Move to the packages generated for each available API version instead +type RateLimitErrorGetPathAttributeType = *string + +// Deprecated: Will be removed after 2026-09-30. Move to the packages generated for each available API version instead +func getRateLimitErrorGetPathAttributeTypeOk(arg RateLimitErrorGetPathAttributeType) (ret RateLimitErrorGetPathRetType, ok bool) { + if arg == nil { + return ret, false + } + return *arg, true +} + +// Deprecated: Will be removed after 2026-09-30. Move to the packages generated for each available API version instead +func setRateLimitErrorGetPathAttributeType(arg *RateLimitErrorGetPathAttributeType, val RateLimitErrorGetPathRetType) { + *arg = &val +} + +// Deprecated: Will be removed after 2026-09-30. Move to the packages generated for each available API version instead +type RateLimitErrorGetPathArgType = string + +// Deprecated: Will be removed after 2026-09-30. Move to the packages generated for each available API version instead +type RateLimitErrorGetPathRetType = string + +/* + types and functions for status +*/ + +// isInteger +// Deprecated: Will be removed after 2026-09-30. Move to the packages generated for each available API version instead +type RateLimitErrorGetStatusAttributeType = *int64 + +// Deprecated: Will be removed after 2026-09-30. Move to the packages generated for each available API version instead +type RateLimitErrorGetStatusArgType = int64 + +// Deprecated: Will be removed after 2026-09-30. Move to the packages generated for each available API version instead +type RateLimitErrorGetStatusRetType = int64 + +// Deprecated: Will be removed after 2026-09-30. Move to the packages generated for each available API version instead +func getRateLimitErrorGetStatusAttributeTypeOk(arg RateLimitErrorGetStatusAttributeType) (ret RateLimitErrorGetStatusRetType, ok bool) { + if arg == nil { + return ret, false + } + return *arg, true +} + +// Deprecated: Will be removed after 2026-09-30. Move to the packages generated for each available API version instead +func setRateLimitErrorGetStatusAttributeType(arg *RateLimitErrorGetStatusAttributeType, val RateLimitErrorGetStatusRetType) { + *arg = &val +} + +/* + types and functions for timestamp +*/ + +// isDateTime +// Deprecated: Will be removed after 2026-09-30. Move to the packages generated for each available API version instead +type RateLimitErrorGetTimestampAttributeType = *time.Time + +// Deprecated: Will be removed after 2026-09-30. Move to the packages generated for each available API version instead +type RateLimitErrorGetTimestampArgType = time.Time + +// Deprecated: Will be removed after 2026-09-30. Move to the packages generated for each available API version instead +type RateLimitErrorGetTimestampRetType = time.Time + +// Deprecated: Will be removed after 2026-09-30. Move to the packages generated for each available API version instead +func getRateLimitErrorGetTimestampAttributeTypeOk(arg RateLimitErrorGetTimestampAttributeType) (ret RateLimitErrorGetTimestampRetType, ok bool) { + if arg == nil { + return ret, false + } + return *arg, true +} + +// Deprecated: Will be removed after 2026-09-30. Move to the packages generated for each available API version instead +func setRateLimitErrorGetTimestampAttributeType(arg *RateLimitErrorGetTimestampAttributeType, val RateLimitErrorGetTimestampRetType) { + *arg = &val +} + +// RateLimitError struct for RateLimitError +// Deprecated: Will be removed after 2026-09-30. Move to the packages generated for each available API version instead +type RateLimitError struct { + Error RateLimitErrorGetErrorAttributeType `json:"error,omitempty"` + Message RateLimitErrorGetMessageAttributeType `json:"message,omitempty"` + Path RateLimitErrorGetPathAttributeType `json:"path,omitempty"` + // Can be cast to int32 without loss of precision. + Status RateLimitErrorGetStatusAttributeType `json:"status,omitempty"` + Timestamp RateLimitErrorGetTimestampAttributeType `json:"timestamp,omitempty"` +} + +// NewRateLimitError instantiates a new RateLimitError 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 +// Deprecated: Will be removed after 2026-09-30. Move to the packages generated for each available API version instead +func NewRateLimitError() *RateLimitError { + this := RateLimitError{} + return &this +} + +// NewRateLimitErrorWithDefaults instantiates a new RateLimitError 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 +// Deprecated: Will be removed after 2026-09-30. Move to the packages generated for each available API version instead +func NewRateLimitErrorWithDefaults() *RateLimitError { + this := RateLimitError{} + return &this +} + +// GetError returns the Error field value if set, zero value otherwise. +// Deprecated: Will be removed after 2026-09-30. Move to the packages generated for each available API version instead +func (o *RateLimitError) GetError() (res RateLimitErrorGetErrorRetType) { + res, _ = o.GetErrorOk() + return +} + +// GetErrorOk returns a tuple with the Error field value if set, nil otherwise +// and a boolean to check if the value has been set. +// Deprecated: Will be removed after 2026-09-30. Move to the packages generated for each available API version instead +func (o *RateLimitError) GetErrorOk() (ret RateLimitErrorGetErrorRetType, ok bool) { + return getRateLimitErrorGetErrorAttributeTypeOk(o.Error) +} + +// HasError returns a boolean if a field has been set. +// Deprecated: Will be removed after 2026-09-30. Move to the packages generated for each available API version instead +func (o *RateLimitError) HasError() bool { + _, ok := o.GetErrorOk() + return ok +} + +// SetError gets a reference to the given string and assigns it to the Error field. +// Deprecated: Will be removed after 2026-09-30. Move to the packages generated for each available API version instead +func (o *RateLimitError) SetError(v RateLimitErrorGetErrorRetType) { + setRateLimitErrorGetErrorAttributeType(&o.Error, v) +} + +// GetMessage returns the Message field value if set, zero value otherwise. +// Deprecated: Will be removed after 2026-09-30. Move to the packages generated for each available API version instead +func (o *RateLimitError) GetMessage() (res RateLimitErrorGetMessageRetType) { + res, _ = o.GetMessageOk() + return +} + +// GetMessageOk returns a tuple with the Message field value if set, nil otherwise +// and a boolean to check if the value has been set. +// Deprecated: Will be removed after 2026-09-30. Move to the packages generated for each available API version instead +func (o *RateLimitError) GetMessageOk() (ret RateLimitErrorGetMessageRetType, ok bool) { + return getRateLimitErrorGetMessageAttributeTypeOk(o.Message) +} + +// HasMessage returns a boolean if a field has been set. +// Deprecated: Will be removed after 2026-09-30. Move to the packages generated for each available API version instead +func (o *RateLimitError) HasMessage() bool { + _, ok := o.GetMessageOk() + return ok +} + +// SetMessage gets a reference to the given string and assigns it to the Message field. +// Deprecated: Will be removed after 2026-09-30. Move to the packages generated for each available API version instead +func (o *RateLimitError) SetMessage(v RateLimitErrorGetMessageRetType) { + setRateLimitErrorGetMessageAttributeType(&o.Message, v) +} + +// GetPath returns the Path field value if set, zero value otherwise. +// Deprecated: Will be removed after 2026-09-30. Move to the packages generated for each available API version instead +func (o *RateLimitError) GetPath() (res RateLimitErrorGetPathRetType) { + res, _ = o.GetPathOk() + return +} + +// GetPathOk returns a tuple with the Path field value if set, nil otherwise +// and a boolean to check if the value has been set. +// Deprecated: Will be removed after 2026-09-30. Move to the packages generated for each available API version instead +func (o *RateLimitError) GetPathOk() (ret RateLimitErrorGetPathRetType, ok bool) { + return getRateLimitErrorGetPathAttributeTypeOk(o.Path) +} + +// HasPath returns a boolean if a field has been set. +// Deprecated: Will be removed after 2026-09-30. Move to the packages generated for each available API version instead +func (o *RateLimitError) HasPath() bool { + _, ok := o.GetPathOk() + return ok +} + +// SetPath gets a reference to the given string and assigns it to the Path field. +// Deprecated: Will be removed after 2026-09-30. Move to the packages generated for each available API version instead +func (o *RateLimitError) SetPath(v RateLimitErrorGetPathRetType) { + setRateLimitErrorGetPathAttributeType(&o.Path, v) +} + +// GetStatus returns the Status field value if set, zero value otherwise. +// Deprecated: Will be removed after 2026-09-30. Move to the packages generated for each available API version instead +func (o *RateLimitError) GetStatus() (res RateLimitErrorGetStatusRetType) { + res, _ = o.GetStatusOk() + return +} + +// GetStatusOk returns a tuple with the Status field value if set, nil otherwise +// and a boolean to check if the value has been set. +// Deprecated: Will be removed after 2026-09-30. Move to the packages generated for each available API version instead +func (o *RateLimitError) GetStatusOk() (ret RateLimitErrorGetStatusRetType, ok bool) { + return getRateLimitErrorGetStatusAttributeTypeOk(o.Status) +} + +// HasStatus returns a boolean if a field has been set. +// Deprecated: Will be removed after 2026-09-30. Move to the packages generated for each available API version instead +func (o *RateLimitError) HasStatus() bool { + _, ok := o.GetStatusOk() + return ok +} + +// SetStatus gets a reference to the given int64 and assigns it to the Status field. +// Deprecated: Will be removed after 2026-09-30. Move to the packages generated for each available API version instead +func (o *RateLimitError) SetStatus(v RateLimitErrorGetStatusRetType) { + setRateLimitErrorGetStatusAttributeType(&o.Status, v) +} + +// GetTimestamp returns the Timestamp field value if set, zero value otherwise. +// Deprecated: Will be removed after 2026-09-30. Move to the packages generated for each available API version instead +func (o *RateLimitError) GetTimestamp() (res RateLimitErrorGetTimestampRetType) { + res, _ = o.GetTimestampOk() + return +} + +// GetTimestampOk returns a tuple with the Timestamp field value if set, nil otherwise +// and a boolean to check if the value has been set. +// Deprecated: Will be removed after 2026-09-30. Move to the packages generated for each available API version instead +func (o *RateLimitError) GetTimestampOk() (ret RateLimitErrorGetTimestampRetType, ok bool) { + return getRateLimitErrorGetTimestampAttributeTypeOk(o.Timestamp) +} + +// HasTimestamp returns a boolean if a field has been set. +// Deprecated: Will be removed after 2026-09-30. Move to the packages generated for each available API version instead +func (o *RateLimitError) HasTimestamp() bool { + _, ok := o.GetTimestampOk() + return ok +} + +// SetTimestamp gets a reference to the given time.Time and assigns it to the Timestamp field. +// Deprecated: Will be removed after 2026-09-30. Move to the packages generated for each available API version instead +func (o *RateLimitError) SetTimestamp(v RateLimitErrorGetTimestampRetType) { + setRateLimitErrorGetTimestampAttributeType(&o.Timestamp, v) +} + +// Deprecated: Will be removed after 2026-09-30. Move to the packages generated for each available API version instead +func (o RateLimitError) ToMap() (map[string]interface{}, error) { + toSerialize := map[string]interface{}{} + if val, ok := getRateLimitErrorGetErrorAttributeTypeOk(o.Error); ok { + toSerialize["Error"] = val + } + if val, ok := getRateLimitErrorGetMessageAttributeTypeOk(o.Message); ok { + toSerialize["Message"] = val + } + if val, ok := getRateLimitErrorGetPathAttributeTypeOk(o.Path); ok { + toSerialize["Path"] = val + } + if val, ok := getRateLimitErrorGetStatusAttributeTypeOk(o.Status); ok { + toSerialize["Status"] = val + } + if val, ok := getRateLimitErrorGetTimestampAttributeTypeOk(o.Timestamp); ok { + toSerialize["Timestamp"] = val + } + return toSerialize, nil +} + +// Deprecated: Will be removed after 2026-09-30. Move to the packages generated for each available API version instead +type NullableRateLimitError struct { + value *RateLimitError + isSet bool +} + +// Deprecated: Will be removed after 2026-09-30. Move to the packages generated for each available API version instead +func (v NullableRateLimitError) Get() *RateLimitError { + return v.value +} + +// Deprecated: Will be removed after 2026-09-30. Move to the packages generated for each available API version instead +func (v *NullableRateLimitError) Set(val *RateLimitError) { + v.value = val + v.isSet = true +} + +// Deprecated: Will be removed after 2026-09-30. Move to the packages generated for each available API version instead +func (v NullableRateLimitError) IsSet() bool { + return v.isSet +} + +// Deprecated: Will be removed after 2026-09-30. Move to the packages generated for each available API version instead +func (v *NullableRateLimitError) Unset() { + v.value = nil + v.isSet = false +} + +// Deprecated: Will be removed after 2026-09-30. Move to the packages generated for each available API version instead +func NewNullableRateLimitError(val *RateLimitError) *NullableRateLimitError { + return &NullableRateLimitError{value: val, isSet: true} +} + +// Deprecated: Will be removed after 2026-09-30. Move to the packages generated for each available API version instead +func (v NullableRateLimitError) MarshalJSON() ([]byte, error) { + return json.Marshal(v.value) +} + +// Deprecated: Will be removed after 2026-09-30. Move to the packages generated for each available API version instead +func (v *NullableRateLimitError) UnmarshalJSON(src []byte) error { + v.isSet = true + return json.Unmarshal(src, &v.value) +} diff --git a/services/objectstorage/model_rate_limit_error_test.go b/services/objectstorage/model_rate_limit_error_test.go new file mode 100644 index 0000000000..0cb5d55ae6 --- /dev/null +++ b/services/objectstorage/model_rate_limit_error_test.go @@ -0,0 +1,11 @@ +/* +STACKIT Object Storage API + +STACKIT API to manage the Object Storage + +API version: 2.0.1 +*/ + +// Code generated by OpenAPI Generator (https://openapi-generator.tech); DO NOT EDIT. + +package objectstorage diff --git a/services/objectstorage/oas_commit b/services/objectstorage/oas_commit index 8ae9a8db59..285dd15d0e 100644 --- a/services/objectstorage/oas_commit +++ b/services/objectstorage/oas_commit @@ -1 +1 @@ -e9fe931e91e0b8f067d5c12518398a52062ca794 +6511dc62dcbbded601fdca534eff79f7bfa7977d diff --git a/services/objectstorage/v1api/api_default.go b/services/objectstorage/v1api/api_default.go index 886d489089..a3ec0aaa5f 100644 --- a/services/objectstorage/v1api/api_default.go +++ b/services/objectstorage/v1api/api_default.go @@ -499,6 +499,17 @@ func (a *DefaultAPIService) CreateAccessKeyExecute(r ApiCreateAccessKeyRequest) newErr.Model = v return localVarReturnValue, newErr } + if localVarHTTPResponse.StatusCode == 429 { + var v RateLimitError + err = a.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 == 500 { var v ErrorMessage err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -692,6 +703,17 @@ func (a *DefaultAPIService) CreateBucketExecute(r ApiCreateBucketRequest) (*Crea newErr.Model = v return localVarReturnValue, newErr } + if localVarHTTPResponse.StatusCode == 429 { + var v RateLimitError + err = a.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 == 500 { var v ErrorMessage err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -1028,6 +1050,17 @@ func (a *DefaultAPIService) CreateCredentialsGroupExecute(r ApiCreateCredentials newErr.Model = v return localVarReturnValue, newErr } + if localVarHTTPResponse.StatusCode == 429 { + var v RateLimitError + err = a.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 == 500 { var v ErrorMessage err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -1221,6 +1254,17 @@ func (a *DefaultAPIService) DeleteAccessKeyExecute(r ApiDeleteAccessKeyRequest) newErr.Model = v return localVarReturnValue, newErr } + if localVarHTTPResponse.StatusCode == 429 { + var v RateLimitError + err = a.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 == 500 { var v ErrorMessage err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -1389,6 +1433,17 @@ func (a *DefaultAPIService) DeleteBucketExecute(r ApiDeleteBucketRequest) (*Dele newErr.Model = v return localVarReturnValue, newErr } + if localVarHTTPResponse.StatusCode == 429 { + var v RateLimitError + err = a.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 == 500 { var v ErrorMessage err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -1699,6 +1754,17 @@ func (a *DefaultAPIService) DeleteCredentialsGroupExecute(r ApiDeleteCredentials newErr.Model = v return localVarReturnValue, newErr } + if localVarHTTPResponse.StatusCode == 429 { + var v RateLimitError + err = a.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 == 500 { var v ErrorMessage err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -2047,6 +2113,17 @@ func (a *DefaultAPIService) DisableServiceExecute(r ApiDisableServiceRequest) (* newErr.Model = v return localVarReturnValue, newErr } + if localVarHTTPResponse.StatusCode == 429 { + var v RateLimitError + err = a.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 == 500 { var v ErrorMessage err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -2217,6 +2294,17 @@ func (a *DefaultAPIService) EnableServiceExecute(r ApiEnableServiceRequest) (*Pr newErr.Model = v return localVarReturnValue, newErr } + if localVarHTTPResponse.StatusCode == 429 { + var v RateLimitError + err = a.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 == 500 { var v ErrorMessage err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -2396,6 +2484,17 @@ func (a *DefaultAPIService) GetBucketExecute(r ApiGetBucketRequest) (*GetBucketR newErr.Model = v return localVarReturnValue, newErr } + if localVarHTTPResponse.StatusCode == 429 { + var v RateLimitError + err = a.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 == 500 { var v ErrorMessage err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -3009,6 +3108,17 @@ func (a *DefaultAPIService) GetServiceStatusExecute(r ApiGetServiceStatusRequest newErr.Model = v return localVarReturnValue, newErr } + if localVarHTTPResponse.StatusCode == 429 { + var v RateLimitError + err = a.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 == 500 { var v ErrorMessage err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -3187,6 +3297,17 @@ func (a *DefaultAPIService) ListAccessKeysExecute(r ApiListAccessKeysRequest) (* newErr.Model = v return localVarReturnValue, newErr } + if localVarHTTPResponse.StatusCode == 429 { + var v RateLimitError + err = a.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 == 500 { var v ErrorMessage err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -3356,6 +3477,17 @@ func (a *DefaultAPIService) ListBucketsExecute(r ApiListBucketsRequest) (*ListBu newErr.Model = v return localVarReturnValue, newErr } + if localVarHTTPResponse.StatusCode == 429 { + var v RateLimitError + err = a.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 == 500 { var v ErrorMessage err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -3514,6 +3646,17 @@ func (a *DefaultAPIService) ListCredentialsGroupsExecute(r ApiListCredentialsGro newErr.Model = v return localVarReturnValue, newErr } + if localVarHTTPResponse.StatusCode == 429 { + var v RateLimitError + err = a.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 == 500 { var v ErrorMessage err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) diff --git a/services/objectstorage/v1api/model_access_key.go b/services/objectstorage/v1api/model_access_key.go index 9b430af2d5..47809a6093 100644 --- a/services/objectstorage/v1api/model_access_key.go +++ b/services/objectstorage/v1api/model_access_key.go @@ -20,8 +20,8 @@ var _ MappedNullable = &AccessKey{} // AccessKey struct for AccessKey type AccessKey struct { - DisplayName string `json:"displayName"` - Expires string `json:"expires"` + DisplayName string `json:"displayName"` + Expires NullableString `json:"expires"` // Identifies the pair of access key and secret access key for deletion KeyId string `json:"keyId"` AdditionalProperties map[string]interface{} @@ -33,7 +33,7 @@ type _AccessKey AccessKey // 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 NewAccessKey(displayName string, expires string, keyId string) *AccessKey { +func NewAccessKey(displayName string, expires NullableString, keyId string) *AccessKey { this := AccessKey{} this.DisplayName = displayName this.Expires = expires @@ -74,27 +74,29 @@ func (o *AccessKey) SetDisplayName(v string) { } // GetExpires returns the Expires field value +// If the value is explicit nil, the zero value for string will be returned func (o *AccessKey) GetExpires() string { - if o == nil { + if o == nil || o.Expires.Get() == nil { var ret string return ret } - return o.Expires + return *o.Expires.Get() } // GetExpiresOk returns a tuple with the Expires field value // and a boolean to check if the value has been set. +// NOTE: If the value is an explicit nil, `nil, true` will be returned func (o *AccessKey) GetExpiresOk() (*string, bool) { if o == nil { return nil, false } - return &o.Expires, true + return o.Expires.Get(), o.Expires.IsSet() } // SetExpires sets field value func (o *AccessKey) SetExpires(v string) { - o.Expires = v + o.Expires.Set(&v) } // GetKeyId returns the KeyId field value @@ -132,7 +134,7 @@ func (o AccessKey) MarshalJSON() ([]byte, error) { func (o AccessKey) ToMap() (map[string]interface{}, error) { toSerialize := map[string]interface{}{} toSerialize["displayName"] = o.DisplayName - toSerialize["expires"] = o.Expires + toSerialize["expires"] = o.Expires.Get() toSerialize["keyId"] = o.KeyId for key, value := range o.AdditionalProperties { diff --git a/services/objectstorage/v1api/model_create_access_key_payload.go b/services/objectstorage/v1api/model_create_access_key_payload.go index 98208395b8..64e2faba78 100644 --- a/services/objectstorage/v1api/model_create_access_key_payload.go +++ b/services/objectstorage/v1api/model_create_access_key_payload.go @@ -21,7 +21,7 @@ var _ MappedNullable = &CreateAccessKeyPayload{} // CreateAccessKeyPayload struct for CreateAccessKeyPayload type CreateAccessKeyPayload struct { // Expiration date. Null means never expires. - Expires *time.Time `json:"expires,omitempty"` + Expires NullableTime `json:"expires,omitempty"` AdditionalProperties map[string]interface{} } @@ -44,36 +44,47 @@ func NewCreateAccessKeyPayloadWithDefaults() *CreateAccessKeyPayload { return &this } -// GetExpires returns the Expires field value if set, zero value otherwise. +// GetExpires returns the Expires field value if set, zero value otherwise (both if not set or set to explicit null). func (o *CreateAccessKeyPayload) GetExpires() time.Time { - if o == nil || IsNil(o.Expires) { + if o == nil || IsNil(o.Expires.Get()) { var ret time.Time return ret } - return *o.Expires + return *o.Expires.Get() } // GetExpiresOk returns a tuple with the Expires field value if set, nil otherwise // and a boolean to check if the value has been set. +// NOTE: If the value is an explicit nil, `nil, true` will be returned func (o *CreateAccessKeyPayload) GetExpiresOk() (*time.Time, bool) { - if o == nil || IsNil(o.Expires) { + if o == nil { return nil, false } - return o.Expires, true + return o.Expires.Get(), o.Expires.IsSet() } // HasExpires returns a boolean if a field has been set. func (o *CreateAccessKeyPayload) HasExpires() bool { - if o != nil && !IsNil(o.Expires) { + if o != nil && o.Expires.IsSet() { return true } return false } -// SetExpires gets a reference to the given time.Time and assigns it to the Expires field. +// SetExpires gets a reference to the given NullableTime and assigns it to the Expires field. func (o *CreateAccessKeyPayload) SetExpires(v time.Time) { - o.Expires = &v + o.Expires.Set(&v) +} + +// SetExpiresNil sets the value for Expires to be an explicit nil +func (o *CreateAccessKeyPayload) SetExpiresNil() { + o.Expires.Set(nil) +} + +// UnsetExpires ensures that no value is present for Expires, not even an explicit nil +func (o *CreateAccessKeyPayload) UnsetExpires() { + o.Expires.Unset() } func (o CreateAccessKeyPayload) MarshalJSON() ([]byte, error) { @@ -86,8 +97,8 @@ func (o CreateAccessKeyPayload) MarshalJSON() ([]byte, error) { func (o CreateAccessKeyPayload) ToMap() (map[string]interface{}, error) { toSerialize := map[string]interface{}{} - if !IsNil(o.Expires) { - toSerialize["expires"] = o.Expires + if o.Expires.IsSet() { + toSerialize["expires"] = o.Expires.Get() } for key, value := range o.AdditionalProperties { diff --git a/services/objectstorage/v1api/model_create_access_key_response.go b/services/objectstorage/v1api/model_create_access_key_response.go index 7d480ad8f8..998ee77b3f 100644 --- a/services/objectstorage/v1api/model_create_access_key_response.go +++ b/services/objectstorage/v1api/model_create_access_key_response.go @@ -25,7 +25,7 @@ type CreateAccessKeyResponse struct { // Obfuscated access key DisplayName string `json:"displayName"` // Expiration date. Null means never expires. - Expires string `json:"expires"` + Expires NullableString `json:"expires"` // Identifies the pair of access key and secret access key for deletion KeyId string `json:"keyId"` // Project ID @@ -41,7 +41,7 @@ type _CreateAccessKeyResponse CreateAccessKeyResponse // 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 NewCreateAccessKeyResponse(accessKey string, displayName string, expires string, keyId string, project string, secretAccessKey string) *CreateAccessKeyResponse { +func NewCreateAccessKeyResponse(accessKey string, displayName string, expires NullableString, keyId string, project string, secretAccessKey string) *CreateAccessKeyResponse { this := CreateAccessKeyResponse{} this.AccessKey = accessKey this.DisplayName = displayName @@ -109,27 +109,29 @@ func (o *CreateAccessKeyResponse) SetDisplayName(v string) { } // GetExpires returns the Expires field value +// If the value is explicit nil, the zero value for string will be returned func (o *CreateAccessKeyResponse) GetExpires() string { - if o == nil { + if o == nil || o.Expires.Get() == nil { var ret string return ret } - return o.Expires + return *o.Expires.Get() } // GetExpiresOk returns a tuple with the Expires field value // and a boolean to check if the value has been set. +// NOTE: If the value is an explicit nil, `nil, true` will be returned func (o *CreateAccessKeyResponse) GetExpiresOk() (*string, bool) { if o == nil { return nil, false } - return &o.Expires, true + return o.Expires.Get(), o.Expires.IsSet() } // SetExpires sets field value func (o *CreateAccessKeyResponse) SetExpires(v string) { - o.Expires = v + o.Expires.Set(&v) } // GetKeyId returns the KeyId field value @@ -216,7 +218,7 @@ func (o CreateAccessKeyResponse) ToMap() (map[string]interface{}, error) { toSerialize := map[string]interface{}{} toSerialize["accessKey"] = o.AccessKey toSerialize["displayName"] = o.DisplayName - toSerialize["expires"] = o.Expires + toSerialize["expires"] = o.Expires.Get() toSerialize["keyId"] = o.KeyId toSerialize["project"] = o.Project toSerialize["secretAccessKey"] = o.SecretAccessKey diff --git a/services/objectstorage/v1api/model_rate_limit_error.go b/services/objectstorage/v1api/model_rate_limit_error.go new file mode 100644 index 0000000000..d1eec3022b --- /dev/null +++ b/services/objectstorage/v1api/model_rate_limit_error.go @@ -0,0 +1,302 @@ +/* +STACKIT Object Storage API + +STACKIT API to manage the Object Storage + +API version: 1.1.0 +*/ + +// Code generated by OpenAPI Generator (https://openapi-generator.tech); DO NOT EDIT. + +package v1api + +import ( + "encoding/json" + "time" +) + +// checks if the RateLimitError type satisfies the MappedNullable interface at compile time +var _ MappedNullable = &RateLimitError{} + +// RateLimitError struct for RateLimitError +type RateLimitError struct { + Error *string `json:"error,omitempty"` + Message *string `json:"message,omitempty"` + Path *string `json:"path,omitempty"` + Status *int32 `json:"status,omitempty"` + Timestamp *time.Time `json:"timestamp,omitempty"` + AdditionalProperties map[string]interface{} +} + +type _RateLimitError RateLimitError + +// NewRateLimitError instantiates a new RateLimitError 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 NewRateLimitError() *RateLimitError { + this := RateLimitError{} + return &this +} + +// NewRateLimitErrorWithDefaults instantiates a new RateLimitError 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 NewRateLimitErrorWithDefaults() *RateLimitError { + this := RateLimitError{} + return &this +} + +// GetError returns the Error field value if set, zero value otherwise. +func (o *RateLimitError) GetError() string { + if o == nil || IsNil(o.Error) { + var ret string + return ret + } + return *o.Error +} + +// GetErrorOk returns a tuple with the Error field value if set, nil otherwise +// and a boolean to check if the value has been set. +func (o *RateLimitError) GetErrorOk() (*string, bool) { + if o == nil || IsNil(o.Error) { + return nil, false + } + return o.Error, true +} + +// HasError returns a boolean if a field has been set. +func (o *RateLimitError) HasError() bool { + if o != nil && !IsNil(o.Error) { + return true + } + + return false +} + +// SetError gets a reference to the given string and assigns it to the Error field. +func (o *RateLimitError) SetError(v string) { + o.Error = &v +} + +// GetMessage returns the Message field value if set, zero value otherwise. +func (o *RateLimitError) GetMessage() string { + if o == nil || IsNil(o.Message) { + var ret string + return ret + } + return *o.Message +} + +// GetMessageOk returns a tuple with the Message field value if set, nil otherwise +// and a boolean to check if the value has been set. +func (o *RateLimitError) GetMessageOk() (*string, bool) { + if o == nil || IsNil(o.Message) { + return nil, false + } + return o.Message, true +} + +// HasMessage returns a boolean if a field has been set. +func (o *RateLimitError) HasMessage() bool { + if o != nil && !IsNil(o.Message) { + return true + } + + return false +} + +// SetMessage gets a reference to the given string and assigns it to the Message field. +func (o *RateLimitError) SetMessage(v string) { + o.Message = &v +} + +// GetPath returns the Path field value if set, zero value otherwise. +func (o *RateLimitError) GetPath() string { + if o == nil || IsNil(o.Path) { + var ret string + return ret + } + return *o.Path +} + +// GetPathOk returns a tuple with the Path field value if set, nil otherwise +// and a boolean to check if the value has been set. +func (o *RateLimitError) GetPathOk() (*string, bool) { + if o == nil || IsNil(o.Path) { + return nil, false + } + return o.Path, true +} + +// HasPath returns a boolean if a field has been set. +func (o *RateLimitError) HasPath() bool { + if o != nil && !IsNil(o.Path) { + return true + } + + return false +} + +// SetPath gets a reference to the given string and assigns it to the Path field. +func (o *RateLimitError) SetPath(v string) { + o.Path = &v +} + +// GetStatus returns the Status field value if set, zero value otherwise. +func (o *RateLimitError) GetStatus() int32 { + if o == nil || IsNil(o.Status) { + var ret int32 + return ret + } + return *o.Status +} + +// GetStatusOk returns a tuple with the Status field value if set, nil otherwise +// and a boolean to check if the value has been set. +func (o *RateLimitError) GetStatusOk() (*int32, bool) { + if o == nil || IsNil(o.Status) { + return nil, false + } + return o.Status, true +} + +// HasStatus returns a boolean if a field has been set. +func (o *RateLimitError) HasStatus() bool { + if o != nil && !IsNil(o.Status) { + return true + } + + return false +} + +// SetStatus gets a reference to the given int32 and assigns it to the Status field. +func (o *RateLimitError) SetStatus(v int32) { + o.Status = &v +} + +// GetTimestamp returns the Timestamp field value if set, zero value otherwise. +func (o *RateLimitError) GetTimestamp() time.Time { + if o == nil || IsNil(o.Timestamp) { + var ret time.Time + return ret + } + return *o.Timestamp +} + +// GetTimestampOk returns a tuple with the Timestamp field value if set, nil otherwise +// and a boolean to check if the value has been set. +func (o *RateLimitError) GetTimestampOk() (*time.Time, bool) { + if o == nil || IsNil(o.Timestamp) { + return nil, false + } + return o.Timestamp, true +} + +// HasTimestamp returns a boolean if a field has been set. +func (o *RateLimitError) HasTimestamp() bool { + if o != nil && !IsNil(o.Timestamp) { + return true + } + + return false +} + +// SetTimestamp gets a reference to the given time.Time and assigns it to the Timestamp field. +func (o *RateLimitError) SetTimestamp(v time.Time) { + o.Timestamp = &v +} + +func (o RateLimitError) MarshalJSON() ([]byte, error) { + toSerialize, err := o.ToMap() + if err != nil { + return []byte{}, err + } + return json.Marshal(toSerialize) +} + +func (o RateLimitError) ToMap() (map[string]interface{}, error) { + toSerialize := map[string]interface{}{} + if !IsNil(o.Error) { + toSerialize["error"] = o.Error + } + if !IsNil(o.Message) { + toSerialize["message"] = o.Message + } + if !IsNil(o.Path) { + toSerialize["path"] = o.Path + } + if !IsNil(o.Status) { + toSerialize["status"] = o.Status + } + if !IsNil(o.Timestamp) { + toSerialize["timestamp"] = o.Timestamp + } + + for key, value := range o.AdditionalProperties { + toSerialize[key] = value + } + + return toSerialize, nil +} + +func (o *RateLimitError) UnmarshalJSON(data []byte) (err error) { + varRateLimitError := _RateLimitError{} + + err = json.Unmarshal(data, &varRateLimitError) + + if err != nil { + return err + } + + *o = RateLimitError(varRateLimitError) + + additionalProperties := make(map[string]interface{}) + + if err = json.Unmarshal(data, &additionalProperties); err == nil { + delete(additionalProperties, "error") + delete(additionalProperties, "message") + delete(additionalProperties, "path") + delete(additionalProperties, "status") + delete(additionalProperties, "timestamp") + o.AdditionalProperties = additionalProperties + } + + return err +} + +type NullableRateLimitError struct { + value *RateLimitError + isSet bool +} + +func (v NullableRateLimitError) Get() *RateLimitError { + return v.value +} + +func (v *NullableRateLimitError) Set(val *RateLimitError) { + v.value = val + v.isSet = true +} + +func (v NullableRateLimitError) IsSet() bool { + return v.isSet +} + +func (v *NullableRateLimitError) Unset() { + v.value = nil + v.isSet = false +} + +func NewNullableRateLimitError(val *RateLimitError) *NullableRateLimitError { + return &NullableRateLimitError{value: val, isSet: true} +} + +func (v NullableRateLimitError) MarshalJSON() ([]byte, error) { + return json.Marshal(v.value) +} + +func (v *NullableRateLimitError) UnmarshalJSON(src []byte) error { + v.isSet = true + return json.Unmarshal(src, &v.value) +} diff --git a/services/objectstorage/v2api/api_default.go b/services/objectstorage/v2api/api_default.go index 4d548e31a8..537135e3a6 100644 --- a/services/objectstorage/v2api/api_default.go +++ b/services/objectstorage/v2api/api_default.go @@ -522,6 +522,17 @@ func (a *DefaultAPIService) CreateAccessKeyExecute(r ApiCreateAccessKeyRequest) newErr.Model = v return localVarReturnValue, newErr } + if localVarHTTPResponse.StatusCode == 429 { + var v RateLimitError + err = a.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 == 500 { var v ErrorMessage err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -719,6 +730,17 @@ func (a *DefaultAPIService) CreateBucketExecute(r ApiCreateBucketRequest) (*Crea newErr.Model = v return localVarReturnValue, newErr } + if localVarHTTPResponse.StatusCode == 429 { + var v RateLimitError + err = a.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 == 500 { var v ErrorMessage err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -1063,6 +1085,17 @@ func (a *DefaultAPIService) CreateCredentialsGroupExecute(r ApiCreateCredentials newErr.Model = v return localVarReturnValue, newErr } + if localVarHTTPResponse.StatusCode == 429 { + var v RateLimitError + err = a.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 == 500 { var v ErrorMessage err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -1260,6 +1293,17 @@ func (a *DefaultAPIService) DeleteAccessKeyExecute(r ApiDeleteAccessKeyRequest) newErr.Model = v return localVarReturnValue, newErr } + if localVarHTTPResponse.StatusCode == 429 { + var v RateLimitError + err = a.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 == 500 { var v ErrorMessage err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -1432,6 +1476,17 @@ func (a *DefaultAPIService) DeleteBucketExecute(r ApiDeleteBucketRequest) (*Dele newErr.Model = v return localVarReturnValue, newErr } + if localVarHTTPResponse.StatusCode == 429 { + var v RateLimitError + err = a.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 == 500 { var v ErrorMessage err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -1749,6 +1804,17 @@ func (a *DefaultAPIService) DeleteCredentialsGroupExecute(r ApiDeleteCredentials newErr.Model = v return localVarReturnValue, newErr } + if localVarHTTPResponse.StatusCode == 429 { + var v RateLimitError + err = a.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 == 500 { var v ErrorMessage err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -2105,6 +2171,17 @@ func (a *DefaultAPIService) DisableServiceExecute(r ApiDisableServiceRequest) (* newErr.Model = v return localVarReturnValue, newErr } + if localVarHTTPResponse.StatusCode == 429 { + var v RateLimitError + err = a.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 == 500 { var v ErrorMessage err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -2279,6 +2356,17 @@ func (a *DefaultAPIService) EnableServiceExecute(r ApiEnableServiceRequest) (*Pr newErr.Model = v return localVarReturnValue, newErr } + if localVarHTTPResponse.StatusCode == 429 { + var v RateLimitError + err = a.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 == 500 { var v ErrorMessage err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -2462,6 +2550,17 @@ func (a *DefaultAPIService) GetBucketExecute(r ApiGetBucketRequest) (*GetBucketR newErr.Model = v return localVarReturnValue, newErr } + if localVarHTTPResponse.StatusCode == 429 { + var v RateLimitError + err = a.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 == 500 { var v ErrorMessage err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -3091,6 +3190,17 @@ func (a *DefaultAPIService) GetServiceStatusExecute(r ApiGetServiceStatusRequest newErr.Model = v return localVarReturnValue, newErr } + if localVarHTTPResponse.StatusCode == 429 { + var v RateLimitError + err = a.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 == 500 { var v ErrorMessage err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -3273,6 +3383,17 @@ func (a *DefaultAPIService) ListAccessKeysExecute(r ApiListAccessKeysRequest) (* newErr.Model = v return localVarReturnValue, newErr } + if localVarHTTPResponse.StatusCode == 429 { + var v RateLimitError + err = a.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 == 500 { var v ErrorMessage err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -3446,6 +3567,17 @@ func (a *DefaultAPIService) ListBucketsExecute(r ApiListBucketsRequest) (*ListBu newErr.Model = v return localVarReturnValue, newErr } + if localVarHTTPResponse.StatusCode == 429 { + var v RateLimitError + err = a.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 == 500 { var v ErrorMessage err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) @@ -3608,6 +3740,17 @@ func (a *DefaultAPIService) ListCredentialsGroupsExecute(r ApiListCredentialsGro newErr.Model = v return localVarReturnValue, newErr } + if localVarHTTPResponse.StatusCode == 429 { + var v RateLimitError + err = a.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 == 500 { var v ErrorMessage err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type")) diff --git a/services/objectstorage/v2api/model_access_key.go b/services/objectstorage/v2api/model_access_key.go index 2e54f2735b..0d4bead4b4 100644 --- a/services/objectstorage/v2api/model_access_key.go +++ b/services/objectstorage/v2api/model_access_key.go @@ -20,8 +20,8 @@ var _ MappedNullable = &AccessKey{} // AccessKey struct for AccessKey type AccessKey struct { - DisplayName string `json:"displayName"` - Expires string `json:"expires"` + DisplayName string `json:"displayName"` + Expires NullableString `json:"expires"` // Identifies the pair of access key and secret access key for deletion KeyId string `json:"keyId"` AdditionalProperties map[string]interface{} @@ -33,7 +33,7 @@ type _AccessKey AccessKey // 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 NewAccessKey(displayName string, expires string, keyId string) *AccessKey { +func NewAccessKey(displayName string, expires NullableString, keyId string) *AccessKey { this := AccessKey{} this.DisplayName = displayName this.Expires = expires @@ -74,27 +74,29 @@ func (o *AccessKey) SetDisplayName(v string) { } // GetExpires returns the Expires field value +// If the value is explicit nil, the zero value for string will be returned func (o *AccessKey) GetExpires() string { - if o == nil { + if o == nil || o.Expires.Get() == nil { var ret string return ret } - return o.Expires + return *o.Expires.Get() } // GetExpiresOk returns a tuple with the Expires field value // and a boolean to check if the value has been set. +// NOTE: If the value is an explicit nil, `nil, true` will be returned func (o *AccessKey) GetExpiresOk() (*string, bool) { if o == nil { return nil, false } - return &o.Expires, true + return o.Expires.Get(), o.Expires.IsSet() } // SetExpires sets field value func (o *AccessKey) SetExpires(v string) { - o.Expires = v + o.Expires.Set(&v) } // GetKeyId returns the KeyId field value @@ -132,7 +134,7 @@ func (o AccessKey) MarshalJSON() ([]byte, error) { func (o AccessKey) ToMap() (map[string]interface{}, error) { toSerialize := map[string]interface{}{} toSerialize["displayName"] = o.DisplayName - toSerialize["expires"] = o.Expires + toSerialize["expires"] = o.Expires.Get() toSerialize["keyId"] = o.KeyId for key, value := range o.AdditionalProperties { diff --git a/services/objectstorage/v2api/model_create_access_key_payload.go b/services/objectstorage/v2api/model_create_access_key_payload.go index 31d55f4649..c32714cc2b 100644 --- a/services/objectstorage/v2api/model_create_access_key_payload.go +++ b/services/objectstorage/v2api/model_create_access_key_payload.go @@ -21,7 +21,7 @@ var _ MappedNullable = &CreateAccessKeyPayload{} // CreateAccessKeyPayload struct for CreateAccessKeyPayload type CreateAccessKeyPayload struct { // Expiration date. Null means never expires. - Expires *time.Time `json:"expires,omitempty"` + Expires NullableTime `json:"expires,omitempty"` AdditionalProperties map[string]interface{} } @@ -44,36 +44,47 @@ func NewCreateAccessKeyPayloadWithDefaults() *CreateAccessKeyPayload { return &this } -// GetExpires returns the Expires field value if set, zero value otherwise. +// GetExpires returns the Expires field value if set, zero value otherwise (both if not set or set to explicit null). func (o *CreateAccessKeyPayload) GetExpires() time.Time { - if o == nil || IsNil(o.Expires) { + if o == nil || IsNil(o.Expires.Get()) { var ret time.Time return ret } - return *o.Expires + return *o.Expires.Get() } // GetExpiresOk returns a tuple with the Expires field value if set, nil otherwise // and a boolean to check if the value has been set. +// NOTE: If the value is an explicit nil, `nil, true` will be returned func (o *CreateAccessKeyPayload) GetExpiresOk() (*time.Time, bool) { - if o == nil || IsNil(o.Expires) { + if o == nil { return nil, false } - return o.Expires, true + return o.Expires.Get(), o.Expires.IsSet() } // HasExpires returns a boolean if a field has been set. func (o *CreateAccessKeyPayload) HasExpires() bool { - if o != nil && !IsNil(o.Expires) { + if o != nil && o.Expires.IsSet() { return true } return false } -// SetExpires gets a reference to the given time.Time and assigns it to the Expires field. +// SetExpires gets a reference to the given NullableTime and assigns it to the Expires field. func (o *CreateAccessKeyPayload) SetExpires(v time.Time) { - o.Expires = &v + o.Expires.Set(&v) +} + +// SetExpiresNil sets the value for Expires to be an explicit nil +func (o *CreateAccessKeyPayload) SetExpiresNil() { + o.Expires.Set(nil) +} + +// UnsetExpires ensures that no value is present for Expires, not even an explicit nil +func (o *CreateAccessKeyPayload) UnsetExpires() { + o.Expires.Unset() } func (o CreateAccessKeyPayload) MarshalJSON() ([]byte, error) { @@ -86,8 +97,8 @@ func (o CreateAccessKeyPayload) MarshalJSON() ([]byte, error) { func (o CreateAccessKeyPayload) ToMap() (map[string]interface{}, error) { toSerialize := map[string]interface{}{} - if !IsNil(o.Expires) { - toSerialize["expires"] = o.Expires + if o.Expires.IsSet() { + toSerialize["expires"] = o.Expires.Get() } for key, value := range o.AdditionalProperties { diff --git a/services/objectstorage/v2api/model_rate_limit_error.go b/services/objectstorage/v2api/model_rate_limit_error.go new file mode 100644 index 0000000000..a20c465833 --- /dev/null +++ b/services/objectstorage/v2api/model_rate_limit_error.go @@ -0,0 +1,302 @@ +/* +STACKIT Object Storage API + +STACKIT API to manage the Object Storage + +API version: 2.0.1 +*/ + +// Code generated by OpenAPI Generator (https://openapi-generator.tech); DO NOT EDIT. + +package v2api + +import ( + "encoding/json" + "time" +) + +// checks if the RateLimitError type satisfies the MappedNullable interface at compile time +var _ MappedNullable = &RateLimitError{} + +// RateLimitError struct for RateLimitError +type RateLimitError struct { + Error *string `json:"error,omitempty"` + Message *string `json:"message,omitempty"` + Path *string `json:"path,omitempty"` + Status *int32 `json:"status,omitempty"` + Timestamp *time.Time `json:"timestamp,omitempty"` + AdditionalProperties map[string]interface{} +} + +type _RateLimitError RateLimitError + +// NewRateLimitError instantiates a new RateLimitError 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 NewRateLimitError() *RateLimitError { + this := RateLimitError{} + return &this +} + +// NewRateLimitErrorWithDefaults instantiates a new RateLimitError 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 NewRateLimitErrorWithDefaults() *RateLimitError { + this := RateLimitError{} + return &this +} + +// GetError returns the Error field value if set, zero value otherwise. +func (o *RateLimitError) GetError() string { + if o == nil || IsNil(o.Error) { + var ret string + return ret + } + return *o.Error +} + +// GetErrorOk returns a tuple with the Error field value if set, nil otherwise +// and a boolean to check if the value has been set. +func (o *RateLimitError) GetErrorOk() (*string, bool) { + if o == nil || IsNil(o.Error) { + return nil, false + } + return o.Error, true +} + +// HasError returns a boolean if a field has been set. +func (o *RateLimitError) HasError() bool { + if o != nil && !IsNil(o.Error) { + return true + } + + return false +} + +// SetError gets a reference to the given string and assigns it to the Error field. +func (o *RateLimitError) SetError(v string) { + o.Error = &v +} + +// GetMessage returns the Message field value if set, zero value otherwise. +func (o *RateLimitError) GetMessage() string { + if o == nil || IsNil(o.Message) { + var ret string + return ret + } + return *o.Message +} + +// GetMessageOk returns a tuple with the Message field value if set, nil otherwise +// and a boolean to check if the value has been set. +func (o *RateLimitError) GetMessageOk() (*string, bool) { + if o == nil || IsNil(o.Message) { + return nil, false + } + return o.Message, true +} + +// HasMessage returns a boolean if a field has been set. +func (o *RateLimitError) HasMessage() bool { + if o != nil && !IsNil(o.Message) { + return true + } + + return false +} + +// SetMessage gets a reference to the given string and assigns it to the Message field. +func (o *RateLimitError) SetMessage(v string) { + o.Message = &v +} + +// GetPath returns the Path field value if set, zero value otherwise. +func (o *RateLimitError) GetPath() string { + if o == nil || IsNil(o.Path) { + var ret string + return ret + } + return *o.Path +} + +// GetPathOk returns a tuple with the Path field value if set, nil otherwise +// and a boolean to check if the value has been set. +func (o *RateLimitError) GetPathOk() (*string, bool) { + if o == nil || IsNil(o.Path) { + return nil, false + } + return o.Path, true +} + +// HasPath returns a boolean if a field has been set. +func (o *RateLimitError) HasPath() bool { + if o != nil && !IsNil(o.Path) { + return true + } + + return false +} + +// SetPath gets a reference to the given string and assigns it to the Path field. +func (o *RateLimitError) SetPath(v string) { + o.Path = &v +} + +// GetStatus returns the Status field value if set, zero value otherwise. +func (o *RateLimitError) GetStatus() int32 { + if o == nil || IsNil(o.Status) { + var ret int32 + return ret + } + return *o.Status +} + +// GetStatusOk returns a tuple with the Status field value if set, nil otherwise +// and a boolean to check if the value has been set. +func (o *RateLimitError) GetStatusOk() (*int32, bool) { + if o == nil || IsNil(o.Status) { + return nil, false + } + return o.Status, true +} + +// HasStatus returns a boolean if a field has been set. +func (o *RateLimitError) HasStatus() bool { + if o != nil && !IsNil(o.Status) { + return true + } + + return false +} + +// SetStatus gets a reference to the given int32 and assigns it to the Status field. +func (o *RateLimitError) SetStatus(v int32) { + o.Status = &v +} + +// GetTimestamp returns the Timestamp field value if set, zero value otherwise. +func (o *RateLimitError) GetTimestamp() time.Time { + if o == nil || IsNil(o.Timestamp) { + var ret time.Time + return ret + } + return *o.Timestamp +} + +// GetTimestampOk returns a tuple with the Timestamp field value if set, nil otherwise +// and a boolean to check if the value has been set. +func (o *RateLimitError) GetTimestampOk() (*time.Time, bool) { + if o == nil || IsNil(o.Timestamp) { + return nil, false + } + return o.Timestamp, true +} + +// HasTimestamp returns a boolean if a field has been set. +func (o *RateLimitError) HasTimestamp() bool { + if o != nil && !IsNil(o.Timestamp) { + return true + } + + return false +} + +// SetTimestamp gets a reference to the given time.Time and assigns it to the Timestamp field. +func (o *RateLimitError) SetTimestamp(v time.Time) { + o.Timestamp = &v +} + +func (o RateLimitError) MarshalJSON() ([]byte, error) { + toSerialize, err := o.ToMap() + if err != nil { + return []byte{}, err + } + return json.Marshal(toSerialize) +} + +func (o RateLimitError) ToMap() (map[string]interface{}, error) { + toSerialize := map[string]interface{}{} + if !IsNil(o.Error) { + toSerialize["error"] = o.Error + } + if !IsNil(o.Message) { + toSerialize["message"] = o.Message + } + if !IsNil(o.Path) { + toSerialize["path"] = o.Path + } + if !IsNil(o.Status) { + toSerialize["status"] = o.Status + } + if !IsNil(o.Timestamp) { + toSerialize["timestamp"] = o.Timestamp + } + + for key, value := range o.AdditionalProperties { + toSerialize[key] = value + } + + return toSerialize, nil +} + +func (o *RateLimitError) UnmarshalJSON(data []byte) (err error) { + varRateLimitError := _RateLimitError{} + + err = json.Unmarshal(data, &varRateLimitError) + + if err != nil { + return err + } + + *o = RateLimitError(varRateLimitError) + + additionalProperties := make(map[string]interface{}) + + if err = json.Unmarshal(data, &additionalProperties); err == nil { + delete(additionalProperties, "error") + delete(additionalProperties, "message") + delete(additionalProperties, "path") + delete(additionalProperties, "status") + delete(additionalProperties, "timestamp") + o.AdditionalProperties = additionalProperties + } + + return err +} + +type NullableRateLimitError struct { + value *RateLimitError + isSet bool +} + +func (v NullableRateLimitError) Get() *RateLimitError { + return v.value +} + +func (v *NullableRateLimitError) Set(val *RateLimitError) { + v.value = val + v.isSet = true +} + +func (v NullableRateLimitError) IsSet() bool { + return v.isSet +} + +func (v *NullableRateLimitError) Unset() { + v.value = nil + v.isSet = false +} + +func NewNullableRateLimitError(val *RateLimitError) *NullableRateLimitError { + return &NullableRateLimitError{value: val, isSet: true} +} + +func (v NullableRateLimitError) MarshalJSON() ([]byte, error) { + return json.Marshal(v.value) +} + +func (v *NullableRateLimitError) UnmarshalJSON(src []byte) error { + v.isSet = true + return json.Unmarshal(src, &v.value) +}