diff --git a/services/alb/model_create_load_balancer_payload.go b/services/alb/model_create_load_balancer_payload.go index c4642c249..2247a44ed 100644 --- a/services/alb/model_create_load_balancer_payload.go +++ b/services/alb/model_create_load_balancer_payload.go @@ -18,6 +18,26 @@ import ( // checks if the CreateLoadBalancerPayload type satisfies the MappedNullable interface at compile time var _ MappedNullable = &CreateLoadBalancerPayload{} +/* + types and functions for disableTargetSecurityGroupAssignment +*/ + +// isBoolean +type CreateLoadBalancerPayloadgetDisableTargetSecurityGroupAssignmentAttributeType = *bool +type CreateLoadBalancerPayloadgetDisableTargetSecurityGroupAssignmentArgType = bool +type CreateLoadBalancerPayloadgetDisableTargetSecurityGroupAssignmentRetType = bool + +func getCreateLoadBalancerPayloadgetDisableTargetSecurityGroupAssignmentAttributeTypeOk(arg CreateLoadBalancerPayloadgetDisableTargetSecurityGroupAssignmentAttributeType) (ret CreateLoadBalancerPayloadgetDisableTargetSecurityGroupAssignmentRetType, ok bool) { + if arg == nil { + return ret, false + } + return *arg, true +} + +func setCreateLoadBalancerPayloadgetDisableTargetSecurityGroupAssignmentAttributeType(arg *CreateLoadBalancerPayloadgetDisableTargetSecurityGroupAssignmentAttributeType, val CreateLoadBalancerPayloadgetDisableTargetSecurityGroupAssignmentRetType) { + *arg = &val +} + /* types and functions for errors */ @@ -353,6 +373,26 @@ func setCreateLoadBalancerPayloadGetTargetPoolsAttributeType(arg *CreateLoadBala *arg = &val } +/* + types and functions for targetSecurityGroup +*/ + +// isModel +type CreateLoadBalancerPayloadGetTargetSecurityGroupAttributeType = *CreateLoadBalancerPayloadTargetSecurityGroup +type CreateLoadBalancerPayloadGetTargetSecurityGroupArgType = CreateLoadBalancerPayloadTargetSecurityGroup +type CreateLoadBalancerPayloadGetTargetSecurityGroupRetType = CreateLoadBalancerPayloadTargetSecurityGroup + +func getCreateLoadBalancerPayloadGetTargetSecurityGroupAttributeTypeOk(arg CreateLoadBalancerPayloadGetTargetSecurityGroupAttributeType) (ret CreateLoadBalancerPayloadGetTargetSecurityGroupRetType, ok bool) { + if arg == nil { + return ret, false + } + return *arg, true +} + +func setCreateLoadBalancerPayloadGetTargetSecurityGroupAttributeType(arg *CreateLoadBalancerPayloadGetTargetSecurityGroupAttributeType, val CreateLoadBalancerPayloadGetTargetSecurityGroupRetType) { + *arg = &val +} + /* types and functions for version */ @@ -376,6 +416,8 @@ type CreateLoadBalancerPayloadGetVersionRetType = string // CreateLoadBalancerPayload struct for CreateLoadBalancerPayload type CreateLoadBalancerPayload struct { + // Disable target security group assignemt to allow targets outside of the given network. Connectivity to targets need to be ensured by the customer, including routing and Security Groups (targetSecurityGroup can be assigned). Not changeable after creation. + DisableTargetSecurityGroupAssignment CreateLoadBalancerPayloadgetDisableTargetSecurityGroupAssignmentAttributeType `json:"disableTargetSecurityGroupAssignment,omitempty"` // Reports all errors a application load balancer has. Errors CreateLoadBalancerPayloadGetErrorsAttributeType `json:"errors,omitempty"` // External application load balancer IP address where this application load balancer is exposed. Not changeable after creation. @@ -395,7 +437,8 @@ type CreateLoadBalancerPayload struct { Region CreateLoadBalancerPayloadGetRegionAttributeType `json:"region,omitempty"` Status CreateLoadBalancerPayloadGetStatusAttributeType `json:"status,omitempty"` // List of all target pools which will be used in the application load balancer. Limited to 20. - TargetPools CreateLoadBalancerPayloadGetTargetPoolsAttributeType `json:"targetPools,omitempty"` + TargetPools CreateLoadBalancerPayloadGetTargetPoolsAttributeType `json:"targetPools,omitempty"` + TargetSecurityGroup CreateLoadBalancerPayloadGetTargetSecurityGroupAttributeType `json:"targetSecurityGroup,omitempty"` // Application Load Balancer resource version. Must be empty or unset for creating load balancers, non-empty for updating load balancers. Semantics: While retrieving load balancers, this is the current version of this application load balancer resource that changes during updates of the load balancers. On updates this field specified the application load balancer version you calculated your update for instead of the future version to enable concurrency safe updates. Update calls will then report the new version in their result as you would see with a application load balancer retrieval call later. There exist no total order of the version, so you can only compare it for equality, but not for less/greater than another version. Since the creation of application load balancer is always intended to create the first version of it, there should be no existing version. That's why this field must by empty of not present in that case. Version CreateLoadBalancerPayloadGetVersionAttributeType `json:"version,omitempty"` } @@ -417,6 +460,29 @@ func NewCreateLoadBalancerPayloadWithDefaults() *CreateLoadBalancerPayload { return &this } +// GetDisableTargetSecurityGroupAssignment returns the DisableTargetSecurityGroupAssignment field value if set, zero value otherwise. +func (o *CreateLoadBalancerPayload) GetDisableTargetSecurityGroupAssignment() (res CreateLoadBalancerPayloadgetDisableTargetSecurityGroupAssignmentRetType) { + res, _ = o.GetDisableTargetSecurityGroupAssignmentOk() + return +} + +// GetDisableTargetSecurityGroupAssignmentOk returns a tuple with the DisableTargetSecurityGroupAssignment field value if set, nil otherwise +// and a boolean to check if the value has been set. +func (o *CreateLoadBalancerPayload) GetDisableTargetSecurityGroupAssignmentOk() (ret CreateLoadBalancerPayloadgetDisableTargetSecurityGroupAssignmentRetType, ok bool) { + return getCreateLoadBalancerPayloadgetDisableTargetSecurityGroupAssignmentAttributeTypeOk(o.DisableTargetSecurityGroupAssignment) +} + +// HasDisableTargetSecurityGroupAssignment returns a boolean if a field has been set. +func (o *CreateLoadBalancerPayload) HasDisableTargetSecurityGroupAssignment() bool { + _, ok := o.GetDisableTargetSecurityGroupAssignmentOk() + return ok +} + +// SetDisableTargetSecurityGroupAssignment gets a reference to the given bool and assigns it to the DisableTargetSecurityGroupAssignment field. +func (o *CreateLoadBalancerPayload) SetDisableTargetSecurityGroupAssignment(v CreateLoadBalancerPayloadgetDisableTargetSecurityGroupAssignmentRetType) { + setCreateLoadBalancerPayloadgetDisableTargetSecurityGroupAssignmentAttributeType(&o.DisableTargetSecurityGroupAssignment, v) +} + // GetErrors returns the Errors field value if set, zero value otherwise. func (o *CreateLoadBalancerPayload) GetErrors() (res CreateLoadBalancerPayloadGetErrorsRetType) { res, _ = o.GetErrorsOk() @@ -670,6 +736,29 @@ func (o *CreateLoadBalancerPayload) SetTargetPools(v CreateLoadBalancerPayloadGe setCreateLoadBalancerPayloadGetTargetPoolsAttributeType(&o.TargetPools, v) } +// GetTargetSecurityGroup returns the TargetSecurityGroup field value if set, zero value otherwise. +func (o *CreateLoadBalancerPayload) GetTargetSecurityGroup() (res CreateLoadBalancerPayloadGetTargetSecurityGroupRetType) { + res, _ = o.GetTargetSecurityGroupOk() + return +} + +// GetTargetSecurityGroupOk returns a tuple with the TargetSecurityGroup field value if set, nil otherwise +// and a boolean to check if the value has been set. +func (o *CreateLoadBalancerPayload) GetTargetSecurityGroupOk() (ret CreateLoadBalancerPayloadGetTargetSecurityGroupRetType, ok bool) { + return getCreateLoadBalancerPayloadGetTargetSecurityGroupAttributeTypeOk(o.TargetSecurityGroup) +} + +// HasTargetSecurityGroup returns a boolean if a field has been set. +func (o *CreateLoadBalancerPayload) HasTargetSecurityGroup() bool { + _, ok := o.GetTargetSecurityGroupOk() + return ok +} + +// SetTargetSecurityGroup gets a reference to the given CreateLoadBalancerPayloadTargetSecurityGroup and assigns it to the TargetSecurityGroup field. +func (o *CreateLoadBalancerPayload) SetTargetSecurityGroup(v CreateLoadBalancerPayloadGetTargetSecurityGroupRetType) { + setCreateLoadBalancerPayloadGetTargetSecurityGroupAttributeType(&o.TargetSecurityGroup, v) +} + // GetVersion returns the Version field value if set, zero value otherwise. func (o *CreateLoadBalancerPayload) GetVersion() (res CreateLoadBalancerPayloadGetVersionRetType) { res, _ = o.GetVersionOk() @@ -695,6 +784,9 @@ func (o *CreateLoadBalancerPayload) SetVersion(v CreateLoadBalancerPayloadGetVer func (o CreateLoadBalancerPayload) ToMap() (map[string]interface{}, error) { toSerialize := map[string]interface{}{} + if val, ok := getCreateLoadBalancerPayloadgetDisableTargetSecurityGroupAssignmentAttributeTypeOk(o.DisableTargetSecurityGroupAssignment); ok { + toSerialize["DisableTargetSecurityGroupAssignment"] = val + } if val, ok := getCreateLoadBalancerPayloadGetErrorsAttributeTypeOk(o.Errors); ok { toSerialize["Errors"] = val } @@ -728,6 +820,9 @@ func (o CreateLoadBalancerPayload) ToMap() (map[string]interface{}, error) { if val, ok := getCreateLoadBalancerPayloadGetTargetPoolsAttributeTypeOk(o.TargetPools); ok { toSerialize["TargetPools"] = val } + if val, ok := getCreateLoadBalancerPayloadGetTargetSecurityGroupAttributeTypeOk(o.TargetSecurityGroup); ok { + toSerialize["TargetSecurityGroup"] = val + } if val, ok := getCreateLoadBalancerPayloadGetVersionAttributeTypeOk(o.Version); ok { toSerialize["Version"] = val } diff --git a/services/alb/model_create_load_balancer_payload_target_security_group.go b/services/alb/model_create_load_balancer_payload_target_security_group.go new file mode 100644 index 000000000..c0ef59d3d --- /dev/null +++ b/services/alb/model_create_load_balancer_payload_target_security_group.go @@ -0,0 +1,178 @@ +/* +Application Load Balancer API + +This API offers an interface to provision and manage load balancing servers in your STACKIT project. It also has the possibility of pooling target servers for load balancing purposes. For each application load balancer provided, two VMs are deployed in your OpenStack project subject to a fee. + +API version: 2beta2.0.0 +*/ + +// Code generated by OpenAPI Generator (https://openapi-generator.tech); DO NOT EDIT. + +package alb + +import ( + "encoding/json" +) + +// checks if the CreateLoadBalancerPayloadTargetSecurityGroup type satisfies the MappedNullable interface at compile time +var _ MappedNullable = &CreateLoadBalancerPayloadTargetSecurityGroup{} + +/* + types and functions for id +*/ + +// isNotNullableString +type CreateLoadBalancerPayloadTargetSecurityGroupGetIdAttributeType = *string + +func getCreateLoadBalancerPayloadTargetSecurityGroupGetIdAttributeTypeOk(arg CreateLoadBalancerPayloadTargetSecurityGroupGetIdAttributeType) (ret CreateLoadBalancerPayloadTargetSecurityGroupGetIdRetType, ok bool) { + if arg == nil { + return ret, false + } + return *arg, true +} + +func setCreateLoadBalancerPayloadTargetSecurityGroupGetIdAttributeType(arg *CreateLoadBalancerPayloadTargetSecurityGroupGetIdAttributeType, val CreateLoadBalancerPayloadTargetSecurityGroupGetIdRetType) { + *arg = &val +} + +type CreateLoadBalancerPayloadTargetSecurityGroupGetIdArgType = string +type CreateLoadBalancerPayloadTargetSecurityGroupGetIdRetType = string + +/* + types and functions for name +*/ + +// isNotNullableString +type CreateLoadBalancerPayloadTargetSecurityGroupGetNameAttributeType = *string + +func getCreateLoadBalancerPayloadTargetSecurityGroupGetNameAttributeTypeOk(arg CreateLoadBalancerPayloadTargetSecurityGroupGetNameAttributeType) (ret CreateLoadBalancerPayloadTargetSecurityGroupGetNameRetType, ok bool) { + if arg == nil { + return ret, false + } + return *arg, true +} + +func setCreateLoadBalancerPayloadTargetSecurityGroupGetNameAttributeType(arg *CreateLoadBalancerPayloadTargetSecurityGroupGetNameAttributeType, val CreateLoadBalancerPayloadTargetSecurityGroupGetNameRetType) { + *arg = &val +} + +type CreateLoadBalancerPayloadTargetSecurityGroupGetNameArgType = string +type CreateLoadBalancerPayloadTargetSecurityGroupGetNameRetType = string + +// CreateLoadBalancerPayloadTargetSecurityGroup Security Group permitting network traffic from the LoadBalancer to the targets. Useful when disableTargetSecurityGroupAssignment=true to manually assign target security groups to targets. +type CreateLoadBalancerPayloadTargetSecurityGroup struct { + // ID of the security Group + Id CreateLoadBalancerPayloadTargetSecurityGroupGetIdAttributeType `json:"id,omitempty"` + // Name of the security Group + Name CreateLoadBalancerPayloadTargetSecurityGroupGetNameAttributeType `json:"name,omitempty"` +} + +// NewCreateLoadBalancerPayloadTargetSecurityGroup instantiates a new CreateLoadBalancerPayloadTargetSecurityGroup 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 NewCreateLoadBalancerPayloadTargetSecurityGroup() *CreateLoadBalancerPayloadTargetSecurityGroup { + this := CreateLoadBalancerPayloadTargetSecurityGroup{} + return &this +} + +// NewCreateLoadBalancerPayloadTargetSecurityGroupWithDefaults instantiates a new CreateLoadBalancerPayloadTargetSecurityGroup 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 NewCreateLoadBalancerPayloadTargetSecurityGroupWithDefaults() *CreateLoadBalancerPayloadTargetSecurityGroup { + this := CreateLoadBalancerPayloadTargetSecurityGroup{} + return &this +} + +// GetId returns the Id field value if set, zero value otherwise. +func (o *CreateLoadBalancerPayloadTargetSecurityGroup) GetId() (res CreateLoadBalancerPayloadTargetSecurityGroupGetIdRetType) { + res, _ = o.GetIdOk() + return +} + +// GetIdOk returns a tuple with the Id field value if set, nil otherwise +// and a boolean to check if the value has been set. +func (o *CreateLoadBalancerPayloadTargetSecurityGroup) GetIdOk() (ret CreateLoadBalancerPayloadTargetSecurityGroupGetIdRetType, ok bool) { + return getCreateLoadBalancerPayloadTargetSecurityGroupGetIdAttributeTypeOk(o.Id) +} + +// HasId returns a boolean if a field has been set. +func (o *CreateLoadBalancerPayloadTargetSecurityGroup) HasId() bool { + _, ok := o.GetIdOk() + return ok +} + +// SetId gets a reference to the given string and assigns it to the Id field. +func (o *CreateLoadBalancerPayloadTargetSecurityGroup) SetId(v CreateLoadBalancerPayloadTargetSecurityGroupGetIdRetType) { + setCreateLoadBalancerPayloadTargetSecurityGroupGetIdAttributeType(&o.Id, v) +} + +// GetName returns the Name field value if set, zero value otherwise. +func (o *CreateLoadBalancerPayloadTargetSecurityGroup) GetName() (res CreateLoadBalancerPayloadTargetSecurityGroupGetNameRetType) { + 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 *CreateLoadBalancerPayloadTargetSecurityGroup) GetNameOk() (ret CreateLoadBalancerPayloadTargetSecurityGroupGetNameRetType, ok bool) { + return getCreateLoadBalancerPayloadTargetSecurityGroupGetNameAttributeTypeOk(o.Name) +} + +// HasName returns a boolean if a field has been set. +func (o *CreateLoadBalancerPayloadTargetSecurityGroup) HasName() bool { + _, ok := o.GetNameOk() + return ok +} + +// SetName gets a reference to the given string and assigns it to the Name field. +func (o *CreateLoadBalancerPayloadTargetSecurityGroup) SetName(v CreateLoadBalancerPayloadTargetSecurityGroupGetNameRetType) { + setCreateLoadBalancerPayloadTargetSecurityGroupGetNameAttributeType(&o.Name, v) +} + +func (o CreateLoadBalancerPayloadTargetSecurityGroup) ToMap() (map[string]interface{}, error) { + toSerialize := map[string]interface{}{} + if val, ok := getCreateLoadBalancerPayloadTargetSecurityGroupGetIdAttributeTypeOk(o.Id); ok { + toSerialize["Id"] = val + } + if val, ok := getCreateLoadBalancerPayloadTargetSecurityGroupGetNameAttributeTypeOk(o.Name); ok { + toSerialize["Name"] = val + } + return toSerialize, nil +} + +type NullableCreateLoadBalancerPayloadTargetSecurityGroup struct { + value *CreateLoadBalancerPayloadTargetSecurityGroup + isSet bool +} + +func (v NullableCreateLoadBalancerPayloadTargetSecurityGroup) Get() *CreateLoadBalancerPayloadTargetSecurityGroup { + return v.value +} + +func (v *NullableCreateLoadBalancerPayloadTargetSecurityGroup) Set(val *CreateLoadBalancerPayloadTargetSecurityGroup) { + v.value = val + v.isSet = true +} + +func (v NullableCreateLoadBalancerPayloadTargetSecurityGroup) IsSet() bool { + return v.isSet +} + +func (v *NullableCreateLoadBalancerPayloadTargetSecurityGroup) Unset() { + v.value = nil + v.isSet = false +} + +func NewNullableCreateLoadBalancerPayloadTargetSecurityGroup(val *CreateLoadBalancerPayloadTargetSecurityGroup) *NullableCreateLoadBalancerPayloadTargetSecurityGroup { + return &NullableCreateLoadBalancerPayloadTargetSecurityGroup{value: val, isSet: true} +} + +func (v NullableCreateLoadBalancerPayloadTargetSecurityGroup) MarshalJSON() ([]byte, error) { + return json.Marshal(v.value) +} + +func (v *NullableCreateLoadBalancerPayloadTargetSecurityGroup) UnmarshalJSON(src []byte) error { + v.isSet = true + return json.Unmarshal(src, &v.value) +} diff --git a/services/alb/model_create_load_balancer_payload_target_security_group_test.go b/services/alb/model_create_load_balancer_payload_target_security_group_test.go new file mode 100644 index 000000000..dc37a6414 --- /dev/null +++ b/services/alb/model_create_load_balancer_payload_target_security_group_test.go @@ -0,0 +1,11 @@ +/* +Application Load Balancer API + +This API offers an interface to provision and manage load balancing servers in your STACKIT project. It also has the possibility of pooling target servers for load balancing purposes. For each application load balancer provided, two VMs are deployed in your OpenStack project subject to a fee. + +API version: 2beta2.0.0 +*/ + +// Code generated by OpenAPI Generator (https://openapi-generator.tech); DO NOT EDIT. + +package alb diff --git a/services/alb/model_load_balancer.go b/services/alb/model_load_balancer.go index dc8ca05dc..065e2119a 100644 --- a/services/alb/model_load_balancer.go +++ b/services/alb/model_load_balancer.go @@ -18,6 +18,26 @@ import ( // checks if the LoadBalancer type satisfies the MappedNullable interface at compile time var _ MappedNullable = &LoadBalancer{} +/* + types and functions for disableTargetSecurityGroupAssignment +*/ + +// isBoolean +type LoadBalancergetDisableTargetSecurityGroupAssignmentAttributeType = *bool +type LoadBalancergetDisableTargetSecurityGroupAssignmentArgType = bool +type LoadBalancergetDisableTargetSecurityGroupAssignmentRetType = bool + +func getLoadBalancergetDisableTargetSecurityGroupAssignmentAttributeTypeOk(arg LoadBalancergetDisableTargetSecurityGroupAssignmentAttributeType) (ret LoadBalancergetDisableTargetSecurityGroupAssignmentRetType, ok bool) { + if arg == nil { + return ret, false + } + return *arg, true +} + +func setLoadBalancergetDisableTargetSecurityGroupAssignmentAttributeType(arg *LoadBalancergetDisableTargetSecurityGroupAssignmentAttributeType, val LoadBalancergetDisableTargetSecurityGroupAssignmentRetType) { + *arg = &val +} + /* types and functions for errors */ @@ -353,6 +373,26 @@ func setLoadBalancerGetTargetPoolsAttributeType(arg *LoadBalancerGetTargetPoolsA *arg = &val } +/* + types and functions for targetSecurityGroup +*/ + +// isModel +type LoadBalancerGetTargetSecurityGroupAttributeType = *CreateLoadBalancerPayloadTargetSecurityGroup +type LoadBalancerGetTargetSecurityGroupArgType = CreateLoadBalancerPayloadTargetSecurityGroup +type LoadBalancerGetTargetSecurityGroupRetType = CreateLoadBalancerPayloadTargetSecurityGroup + +func getLoadBalancerGetTargetSecurityGroupAttributeTypeOk(arg LoadBalancerGetTargetSecurityGroupAttributeType) (ret LoadBalancerGetTargetSecurityGroupRetType, ok bool) { + if arg == nil { + return ret, false + } + return *arg, true +} + +func setLoadBalancerGetTargetSecurityGroupAttributeType(arg *LoadBalancerGetTargetSecurityGroupAttributeType, val LoadBalancerGetTargetSecurityGroupRetType) { + *arg = &val +} + /* types and functions for version */ @@ -376,6 +416,8 @@ type LoadBalancerGetVersionRetType = string // LoadBalancer struct for LoadBalancer type LoadBalancer struct { + // Disable target security group assignemt to allow targets outside of the given network. Connectivity to targets need to be ensured by the customer, including routing and Security Groups (targetSecurityGroup can be assigned). Not changeable after creation. + DisableTargetSecurityGroupAssignment LoadBalancergetDisableTargetSecurityGroupAssignmentAttributeType `json:"disableTargetSecurityGroupAssignment,omitempty"` // Reports all errors a application load balancer has. Errors LoadBalancerGetErrorsAttributeType `json:"errors,omitempty"` // External application load balancer IP address where this application load balancer is exposed. Not changeable after creation. @@ -395,7 +437,8 @@ type LoadBalancer struct { Region LoadBalancerGetRegionAttributeType `json:"region,omitempty"` Status LoadBalancerGetStatusAttributeType `json:"status,omitempty"` // List of all target pools which will be used in the application load balancer. Limited to 20. - TargetPools LoadBalancerGetTargetPoolsAttributeType `json:"targetPools,omitempty"` + TargetPools LoadBalancerGetTargetPoolsAttributeType `json:"targetPools,omitempty"` + TargetSecurityGroup LoadBalancerGetTargetSecurityGroupAttributeType `json:"targetSecurityGroup,omitempty"` // Application Load Balancer resource version. Must be empty or unset for creating load balancers, non-empty for updating load balancers. Semantics: While retrieving load balancers, this is the current version of this application load balancer resource that changes during updates of the load balancers. On updates this field specified the application load balancer version you calculated your update for instead of the future version to enable concurrency safe updates. Update calls will then report the new version in their result as you would see with a application load balancer retrieval call later. There exist no total order of the version, so you can only compare it for equality, but not for less/greater than another version. Since the creation of application load balancer is always intended to create the first version of it, there should be no existing version. That's why this field must by empty of not present in that case. Version LoadBalancerGetVersionAttributeType `json:"version,omitempty"` } @@ -417,6 +460,29 @@ func NewLoadBalancerWithDefaults() *LoadBalancer { return &this } +// GetDisableTargetSecurityGroupAssignment returns the DisableTargetSecurityGroupAssignment field value if set, zero value otherwise. +func (o *LoadBalancer) GetDisableTargetSecurityGroupAssignment() (res LoadBalancergetDisableTargetSecurityGroupAssignmentRetType) { + res, _ = o.GetDisableTargetSecurityGroupAssignmentOk() + return +} + +// GetDisableTargetSecurityGroupAssignmentOk returns a tuple with the DisableTargetSecurityGroupAssignment field value if set, nil otherwise +// and a boolean to check if the value has been set. +func (o *LoadBalancer) GetDisableTargetSecurityGroupAssignmentOk() (ret LoadBalancergetDisableTargetSecurityGroupAssignmentRetType, ok bool) { + return getLoadBalancergetDisableTargetSecurityGroupAssignmentAttributeTypeOk(o.DisableTargetSecurityGroupAssignment) +} + +// HasDisableTargetSecurityGroupAssignment returns a boolean if a field has been set. +func (o *LoadBalancer) HasDisableTargetSecurityGroupAssignment() bool { + _, ok := o.GetDisableTargetSecurityGroupAssignmentOk() + return ok +} + +// SetDisableTargetSecurityGroupAssignment gets a reference to the given bool and assigns it to the DisableTargetSecurityGroupAssignment field. +func (o *LoadBalancer) SetDisableTargetSecurityGroupAssignment(v LoadBalancergetDisableTargetSecurityGroupAssignmentRetType) { + setLoadBalancergetDisableTargetSecurityGroupAssignmentAttributeType(&o.DisableTargetSecurityGroupAssignment, v) +} + // GetErrors returns the Errors field value if set, zero value otherwise. func (o *LoadBalancer) GetErrors() (res LoadBalancerGetErrorsRetType) { res, _ = o.GetErrorsOk() @@ -670,6 +736,29 @@ func (o *LoadBalancer) SetTargetPools(v LoadBalancerGetTargetPoolsRetType) { setLoadBalancerGetTargetPoolsAttributeType(&o.TargetPools, v) } +// GetTargetSecurityGroup returns the TargetSecurityGroup field value if set, zero value otherwise. +func (o *LoadBalancer) GetTargetSecurityGroup() (res LoadBalancerGetTargetSecurityGroupRetType) { + res, _ = o.GetTargetSecurityGroupOk() + return +} + +// GetTargetSecurityGroupOk returns a tuple with the TargetSecurityGroup field value if set, nil otherwise +// and a boolean to check if the value has been set. +func (o *LoadBalancer) GetTargetSecurityGroupOk() (ret LoadBalancerGetTargetSecurityGroupRetType, ok bool) { + return getLoadBalancerGetTargetSecurityGroupAttributeTypeOk(o.TargetSecurityGroup) +} + +// HasTargetSecurityGroup returns a boolean if a field has been set. +func (o *LoadBalancer) HasTargetSecurityGroup() bool { + _, ok := o.GetTargetSecurityGroupOk() + return ok +} + +// SetTargetSecurityGroup gets a reference to the given CreateLoadBalancerPayloadTargetSecurityGroup and assigns it to the TargetSecurityGroup field. +func (o *LoadBalancer) SetTargetSecurityGroup(v LoadBalancerGetTargetSecurityGroupRetType) { + setLoadBalancerGetTargetSecurityGroupAttributeType(&o.TargetSecurityGroup, v) +} + // GetVersion returns the Version field value if set, zero value otherwise. func (o *LoadBalancer) GetVersion() (res LoadBalancerGetVersionRetType) { res, _ = o.GetVersionOk() @@ -695,6 +784,9 @@ func (o *LoadBalancer) SetVersion(v LoadBalancerGetVersionRetType) { func (o LoadBalancer) ToMap() (map[string]interface{}, error) { toSerialize := map[string]interface{}{} + if val, ok := getLoadBalancergetDisableTargetSecurityGroupAssignmentAttributeTypeOk(o.DisableTargetSecurityGroupAssignment); ok { + toSerialize["DisableTargetSecurityGroupAssignment"] = val + } if val, ok := getLoadBalancerGetErrorsAttributeTypeOk(o.Errors); ok { toSerialize["Errors"] = val } @@ -728,6 +820,9 @@ func (o LoadBalancer) ToMap() (map[string]interface{}, error) { if val, ok := getLoadBalancerGetTargetPoolsAttributeTypeOk(o.TargetPools); ok { toSerialize["TargetPools"] = val } + if val, ok := getLoadBalancerGetTargetSecurityGroupAttributeTypeOk(o.TargetSecurityGroup); ok { + toSerialize["TargetSecurityGroup"] = val + } if val, ok := getLoadBalancerGetVersionAttributeTypeOk(o.Version); ok { toSerialize["Version"] = val } diff --git a/services/alb/model_security_group.go b/services/alb/model_security_group.go new file mode 100644 index 000000000..00b2ba120 --- /dev/null +++ b/services/alb/model_security_group.go @@ -0,0 +1,178 @@ +/* +Application Load Balancer API + +This API offers an interface to provision and manage load balancing servers in your STACKIT project. It also has the possibility of pooling target servers for load balancing purposes. For each application load balancer provided, two VMs are deployed in your OpenStack project subject to a fee. + +API version: 2beta2.0.0 +*/ + +// Code generated by OpenAPI Generator (https://openapi-generator.tech); DO NOT EDIT. + +package alb + +import ( + "encoding/json" +) + +// checks if the SecurityGroup type satisfies the MappedNullable interface at compile time +var _ MappedNullable = &SecurityGroup{} + +/* + types and functions for id +*/ + +// isNotNullableString +type SecurityGroupGetIdAttributeType = *string + +func getSecurityGroupGetIdAttributeTypeOk(arg SecurityGroupGetIdAttributeType) (ret SecurityGroupGetIdRetType, ok bool) { + if arg == nil { + return ret, false + } + return *arg, true +} + +func setSecurityGroupGetIdAttributeType(arg *SecurityGroupGetIdAttributeType, val SecurityGroupGetIdRetType) { + *arg = &val +} + +type SecurityGroupGetIdArgType = string +type SecurityGroupGetIdRetType = string + +/* + types and functions for name +*/ + +// isNotNullableString +type SecurityGroupGetNameAttributeType = *string + +func getSecurityGroupGetNameAttributeTypeOk(arg SecurityGroupGetNameAttributeType) (ret SecurityGroupGetNameRetType, ok bool) { + if arg == nil { + return ret, false + } + return *arg, true +} + +func setSecurityGroupGetNameAttributeType(arg *SecurityGroupGetNameAttributeType, val SecurityGroupGetNameRetType) { + *arg = &val +} + +type SecurityGroupGetNameArgType = string +type SecurityGroupGetNameRetType = string + +// SecurityGroup struct for SecurityGroup +type SecurityGroup struct { + // ID of the security Group + Id SecurityGroupGetIdAttributeType `json:"id,omitempty"` + // Name of the security Group + Name SecurityGroupGetNameAttributeType `json:"name,omitempty"` +} + +// NewSecurityGroup instantiates a new SecurityGroup 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 NewSecurityGroup() *SecurityGroup { + this := SecurityGroup{} + return &this +} + +// NewSecurityGroupWithDefaults instantiates a new SecurityGroup 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 NewSecurityGroupWithDefaults() *SecurityGroup { + this := SecurityGroup{} + return &this +} + +// GetId returns the Id field value if set, zero value otherwise. +func (o *SecurityGroup) GetId() (res SecurityGroupGetIdRetType) { + res, _ = o.GetIdOk() + return +} + +// GetIdOk returns a tuple with the Id field value if set, nil otherwise +// and a boolean to check if the value has been set. +func (o *SecurityGroup) GetIdOk() (ret SecurityGroupGetIdRetType, ok bool) { + return getSecurityGroupGetIdAttributeTypeOk(o.Id) +} + +// HasId returns a boolean if a field has been set. +func (o *SecurityGroup) HasId() bool { + _, ok := o.GetIdOk() + return ok +} + +// SetId gets a reference to the given string and assigns it to the Id field. +func (o *SecurityGroup) SetId(v SecurityGroupGetIdRetType) { + setSecurityGroupGetIdAttributeType(&o.Id, v) +} + +// GetName returns the Name field value if set, zero value otherwise. +func (o *SecurityGroup) GetName() (res SecurityGroupGetNameRetType) { + 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 *SecurityGroup) GetNameOk() (ret SecurityGroupGetNameRetType, ok bool) { + return getSecurityGroupGetNameAttributeTypeOk(o.Name) +} + +// HasName returns a boolean if a field has been set. +func (o *SecurityGroup) HasName() bool { + _, ok := o.GetNameOk() + return ok +} + +// SetName gets a reference to the given string and assigns it to the Name field. +func (o *SecurityGroup) SetName(v SecurityGroupGetNameRetType) { + setSecurityGroupGetNameAttributeType(&o.Name, v) +} + +func (o SecurityGroup) ToMap() (map[string]interface{}, error) { + toSerialize := map[string]interface{}{} + if val, ok := getSecurityGroupGetIdAttributeTypeOk(o.Id); ok { + toSerialize["Id"] = val + } + if val, ok := getSecurityGroupGetNameAttributeTypeOk(o.Name); ok { + toSerialize["Name"] = val + } + return toSerialize, nil +} + +type NullableSecurityGroup struct { + value *SecurityGroup + isSet bool +} + +func (v NullableSecurityGroup) Get() *SecurityGroup { + return v.value +} + +func (v *NullableSecurityGroup) Set(val *SecurityGroup) { + v.value = val + v.isSet = true +} + +func (v NullableSecurityGroup) IsSet() bool { + return v.isSet +} + +func (v *NullableSecurityGroup) Unset() { + v.value = nil + v.isSet = false +} + +func NewNullableSecurityGroup(val *SecurityGroup) *NullableSecurityGroup { + return &NullableSecurityGroup{value: val, isSet: true} +} + +func (v NullableSecurityGroup) MarshalJSON() ([]byte, error) { + return json.Marshal(v.value) +} + +func (v *NullableSecurityGroup) UnmarshalJSON(src []byte) error { + v.isSet = true + return json.Unmarshal(src, &v.value) +} diff --git a/services/alb/model_security_group_test.go b/services/alb/model_security_group_test.go new file mode 100644 index 000000000..dc37a6414 --- /dev/null +++ b/services/alb/model_security_group_test.go @@ -0,0 +1,11 @@ +/* +Application Load Balancer API + +This API offers an interface to provision and manage load balancing servers in your STACKIT project. It also has the possibility of pooling target servers for load balancing purposes. For each application load balancer provided, two VMs are deployed in your OpenStack project subject to a fee. + +API version: 2beta2.0.0 +*/ + +// Code generated by OpenAPI Generator (https://openapi-generator.tech); DO NOT EDIT. + +package alb diff --git a/services/alb/model_update_load_balancer_payload.go b/services/alb/model_update_load_balancer_payload.go index 370c2c3b0..8a24be79e 100644 --- a/services/alb/model_update_load_balancer_payload.go +++ b/services/alb/model_update_load_balancer_payload.go @@ -18,6 +18,26 @@ import ( // checks if the UpdateLoadBalancerPayload type satisfies the MappedNullable interface at compile time var _ MappedNullable = &UpdateLoadBalancerPayload{} +/* + types and functions for disableTargetSecurityGroupAssignment +*/ + +// isBoolean +type UpdateLoadBalancerPayloadgetDisableTargetSecurityGroupAssignmentAttributeType = *bool +type UpdateLoadBalancerPayloadgetDisableTargetSecurityGroupAssignmentArgType = bool +type UpdateLoadBalancerPayloadgetDisableTargetSecurityGroupAssignmentRetType = bool + +func getUpdateLoadBalancerPayloadgetDisableTargetSecurityGroupAssignmentAttributeTypeOk(arg UpdateLoadBalancerPayloadgetDisableTargetSecurityGroupAssignmentAttributeType) (ret UpdateLoadBalancerPayloadgetDisableTargetSecurityGroupAssignmentRetType, ok bool) { + if arg == nil { + return ret, false + } + return *arg, true +} + +func setUpdateLoadBalancerPayloadgetDisableTargetSecurityGroupAssignmentAttributeType(arg *UpdateLoadBalancerPayloadgetDisableTargetSecurityGroupAssignmentAttributeType, val UpdateLoadBalancerPayloadgetDisableTargetSecurityGroupAssignmentRetType) { + *arg = &val +} + /* types and functions for errors */ @@ -353,6 +373,26 @@ func setUpdateLoadBalancerPayloadGetTargetPoolsAttributeType(arg *UpdateLoadBala *arg = &val } +/* + types and functions for targetSecurityGroup +*/ + +// isModel +type UpdateLoadBalancerPayloadGetTargetSecurityGroupAttributeType = *CreateLoadBalancerPayloadTargetSecurityGroup +type UpdateLoadBalancerPayloadGetTargetSecurityGroupArgType = CreateLoadBalancerPayloadTargetSecurityGroup +type UpdateLoadBalancerPayloadGetTargetSecurityGroupRetType = CreateLoadBalancerPayloadTargetSecurityGroup + +func getUpdateLoadBalancerPayloadGetTargetSecurityGroupAttributeTypeOk(arg UpdateLoadBalancerPayloadGetTargetSecurityGroupAttributeType) (ret UpdateLoadBalancerPayloadGetTargetSecurityGroupRetType, ok bool) { + if arg == nil { + return ret, false + } + return *arg, true +} + +func setUpdateLoadBalancerPayloadGetTargetSecurityGroupAttributeType(arg *UpdateLoadBalancerPayloadGetTargetSecurityGroupAttributeType, val UpdateLoadBalancerPayloadGetTargetSecurityGroupRetType) { + *arg = &val +} + /* types and functions for version */ @@ -376,6 +416,8 @@ type UpdateLoadBalancerPayloadGetVersionRetType = string // UpdateLoadBalancerPayload struct for UpdateLoadBalancerPayload type UpdateLoadBalancerPayload struct { + // Disable target security group assignemt to allow targets outside of the given network. Connectivity to targets need to be ensured by the customer, including routing and Security Groups (targetSecurityGroup can be assigned). Not changeable after creation. + DisableTargetSecurityGroupAssignment UpdateLoadBalancerPayloadgetDisableTargetSecurityGroupAssignmentAttributeType `json:"disableTargetSecurityGroupAssignment,omitempty"` // Reports all errors a application load balancer has. Errors UpdateLoadBalancerPayloadGetErrorsAttributeType `json:"errors,omitempty"` // External application load balancer IP address where this application load balancer is exposed. Not changeable after creation. @@ -395,7 +437,8 @@ type UpdateLoadBalancerPayload struct { Region UpdateLoadBalancerPayloadGetRegionAttributeType `json:"region,omitempty"` Status UpdateLoadBalancerPayloadGetStatusAttributeType `json:"status,omitempty"` // List of all target pools which will be used in the application load balancer. Limited to 20. - TargetPools UpdateLoadBalancerPayloadGetTargetPoolsAttributeType `json:"targetPools,omitempty"` + TargetPools UpdateLoadBalancerPayloadGetTargetPoolsAttributeType `json:"targetPools,omitempty"` + TargetSecurityGroup UpdateLoadBalancerPayloadGetTargetSecurityGroupAttributeType `json:"targetSecurityGroup,omitempty"` // Application Load Balancer resource version. Must be empty or unset for creating load balancers, non-empty for updating load balancers. Semantics: While retrieving load balancers, this is the current version of this application load balancer resource that changes during updates of the load balancers. On updates this field specified the application load balancer version you calculated your update for instead of the future version to enable concurrency safe updates. Update calls will then report the new version in their result as you would see with a application load balancer retrieval call later. There exist no total order of the version, so you can only compare it for equality, but not for less/greater than another version. Since the creation of application load balancer is always intended to create the first version of it, there should be no existing version. That's why this field must by empty of not present in that case. Version UpdateLoadBalancerPayloadGetVersionAttributeType `json:"version,omitempty"` } @@ -417,6 +460,29 @@ func NewUpdateLoadBalancerPayloadWithDefaults() *UpdateLoadBalancerPayload { return &this } +// GetDisableTargetSecurityGroupAssignment returns the DisableTargetSecurityGroupAssignment field value if set, zero value otherwise. +func (o *UpdateLoadBalancerPayload) GetDisableTargetSecurityGroupAssignment() (res UpdateLoadBalancerPayloadgetDisableTargetSecurityGroupAssignmentRetType) { + res, _ = o.GetDisableTargetSecurityGroupAssignmentOk() + return +} + +// GetDisableTargetSecurityGroupAssignmentOk returns a tuple with the DisableTargetSecurityGroupAssignment field value if set, nil otherwise +// and a boolean to check if the value has been set. +func (o *UpdateLoadBalancerPayload) GetDisableTargetSecurityGroupAssignmentOk() (ret UpdateLoadBalancerPayloadgetDisableTargetSecurityGroupAssignmentRetType, ok bool) { + return getUpdateLoadBalancerPayloadgetDisableTargetSecurityGroupAssignmentAttributeTypeOk(o.DisableTargetSecurityGroupAssignment) +} + +// HasDisableTargetSecurityGroupAssignment returns a boolean if a field has been set. +func (o *UpdateLoadBalancerPayload) HasDisableTargetSecurityGroupAssignment() bool { + _, ok := o.GetDisableTargetSecurityGroupAssignmentOk() + return ok +} + +// SetDisableTargetSecurityGroupAssignment gets a reference to the given bool and assigns it to the DisableTargetSecurityGroupAssignment field. +func (o *UpdateLoadBalancerPayload) SetDisableTargetSecurityGroupAssignment(v UpdateLoadBalancerPayloadgetDisableTargetSecurityGroupAssignmentRetType) { + setUpdateLoadBalancerPayloadgetDisableTargetSecurityGroupAssignmentAttributeType(&o.DisableTargetSecurityGroupAssignment, v) +} + // GetErrors returns the Errors field value if set, zero value otherwise. func (o *UpdateLoadBalancerPayload) GetErrors() (res UpdateLoadBalancerPayloadGetErrorsRetType) { res, _ = o.GetErrorsOk() @@ -670,6 +736,29 @@ func (o *UpdateLoadBalancerPayload) SetTargetPools(v UpdateLoadBalancerPayloadGe setUpdateLoadBalancerPayloadGetTargetPoolsAttributeType(&o.TargetPools, v) } +// GetTargetSecurityGroup returns the TargetSecurityGroup field value if set, zero value otherwise. +func (o *UpdateLoadBalancerPayload) GetTargetSecurityGroup() (res UpdateLoadBalancerPayloadGetTargetSecurityGroupRetType) { + res, _ = o.GetTargetSecurityGroupOk() + return +} + +// GetTargetSecurityGroupOk returns a tuple with the TargetSecurityGroup field value if set, nil otherwise +// and a boolean to check if the value has been set. +func (o *UpdateLoadBalancerPayload) GetTargetSecurityGroupOk() (ret UpdateLoadBalancerPayloadGetTargetSecurityGroupRetType, ok bool) { + return getUpdateLoadBalancerPayloadGetTargetSecurityGroupAttributeTypeOk(o.TargetSecurityGroup) +} + +// HasTargetSecurityGroup returns a boolean if a field has been set. +func (o *UpdateLoadBalancerPayload) HasTargetSecurityGroup() bool { + _, ok := o.GetTargetSecurityGroupOk() + return ok +} + +// SetTargetSecurityGroup gets a reference to the given CreateLoadBalancerPayloadTargetSecurityGroup and assigns it to the TargetSecurityGroup field. +func (o *UpdateLoadBalancerPayload) SetTargetSecurityGroup(v UpdateLoadBalancerPayloadGetTargetSecurityGroupRetType) { + setUpdateLoadBalancerPayloadGetTargetSecurityGroupAttributeType(&o.TargetSecurityGroup, v) +} + // GetVersion returns the Version field value if set, zero value otherwise. func (o *UpdateLoadBalancerPayload) GetVersion() (res UpdateLoadBalancerPayloadGetVersionRetType) { res, _ = o.GetVersionOk() @@ -695,6 +784,9 @@ func (o *UpdateLoadBalancerPayload) SetVersion(v UpdateLoadBalancerPayloadGetVer func (o UpdateLoadBalancerPayload) ToMap() (map[string]interface{}, error) { toSerialize := map[string]interface{}{} + if val, ok := getUpdateLoadBalancerPayloadgetDisableTargetSecurityGroupAssignmentAttributeTypeOk(o.DisableTargetSecurityGroupAssignment); ok { + toSerialize["DisableTargetSecurityGroupAssignment"] = val + } if val, ok := getUpdateLoadBalancerPayloadGetErrorsAttributeTypeOk(o.Errors); ok { toSerialize["Errors"] = val } @@ -728,6 +820,9 @@ func (o UpdateLoadBalancerPayload) ToMap() (map[string]interface{}, error) { if val, ok := getUpdateLoadBalancerPayloadGetTargetPoolsAttributeTypeOk(o.TargetPools); ok { toSerialize["TargetPools"] = val } + if val, ok := getUpdateLoadBalancerPayloadGetTargetSecurityGroupAttributeTypeOk(o.TargetSecurityGroup); ok { + toSerialize["TargetSecurityGroup"] = val + } if val, ok := getUpdateLoadBalancerPayloadGetVersionAttributeTypeOk(o.Version); ok { toSerialize["Version"] = val }