terraform-provider-stackitp.../pkg/iaasbeta/model_create_security_group_rule_protocol.go
2026-01-21 09:07:29 +01:00

127 lines
4.4 KiB
Go

/*
STACKIT IaaS API
This API allows you to create and modify IaaS resources.
API version: 2beta1
*/
// Code generated by OpenAPI Generator (https://openapi-generator.tech); DO NOT EDIT.
package iaasbeta
import (
"encoding/json"
)
// checks if the CreateSecurityGroupRuleProtocol type satisfies the MappedNullable interface at compile time
var _ MappedNullable = &CreateSecurityGroupRuleProtocol{}
/*
types and functions for protocol
*/
// isModel
type CreateSecurityGroupRuleProtocolGetProtocolAttributeType = *CreateProtocol
type CreateSecurityGroupRuleProtocolGetProtocolArgType = CreateProtocol
type CreateSecurityGroupRuleProtocolGetProtocolRetType = CreateProtocol
func getCreateSecurityGroupRuleProtocolGetProtocolAttributeTypeOk(arg CreateSecurityGroupRuleProtocolGetProtocolAttributeType) (ret CreateSecurityGroupRuleProtocolGetProtocolRetType, ok bool) {
if arg == nil {
return ret, false
}
return *arg, true
}
func setCreateSecurityGroupRuleProtocolGetProtocolAttributeType(arg *CreateSecurityGroupRuleProtocolGetProtocolAttributeType, val CreateSecurityGroupRuleProtocolGetProtocolRetType) {
*arg = &val
}
// CreateSecurityGroupRuleProtocol The internet protocol which the rule should match.
type CreateSecurityGroupRuleProtocol struct {
Protocol CreateSecurityGroupRuleProtocolGetProtocolAttributeType `json:"protocol,omitempty"`
}
// NewCreateSecurityGroupRuleProtocol instantiates a new CreateSecurityGroupRuleProtocol 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 NewCreateSecurityGroupRuleProtocol() *CreateSecurityGroupRuleProtocol {
this := CreateSecurityGroupRuleProtocol{}
return &this
}
// NewCreateSecurityGroupRuleProtocolWithDefaults instantiates a new CreateSecurityGroupRuleProtocol 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 NewCreateSecurityGroupRuleProtocolWithDefaults() *CreateSecurityGroupRuleProtocol {
this := CreateSecurityGroupRuleProtocol{}
return &this
}
// GetProtocol returns the Protocol field value if set, zero value otherwise.
func (o *CreateSecurityGroupRuleProtocol) GetProtocol() (res CreateSecurityGroupRuleProtocolGetProtocolRetType) {
res, _ = o.GetProtocolOk()
return
}
// GetProtocolOk returns a tuple with the Protocol field value if set, nil otherwise
// and a boolean to check if the value has been set.
func (o *CreateSecurityGroupRuleProtocol) GetProtocolOk() (ret CreateSecurityGroupRuleProtocolGetProtocolRetType, ok bool) {
return getCreateSecurityGroupRuleProtocolGetProtocolAttributeTypeOk(o.Protocol)
}
// HasProtocol returns a boolean if a field has been set.
func (o *CreateSecurityGroupRuleProtocol) HasProtocol() bool {
_, ok := o.GetProtocolOk()
return ok
}
// SetProtocol gets a reference to the given CreateProtocol and assigns it to the Protocol field.
func (o *CreateSecurityGroupRuleProtocol) SetProtocol(v CreateSecurityGroupRuleProtocolGetProtocolRetType) {
setCreateSecurityGroupRuleProtocolGetProtocolAttributeType(&o.Protocol, v)
}
func (o CreateSecurityGroupRuleProtocol) ToMap() (map[string]interface{}, error) {
toSerialize := map[string]interface{}{}
if val, ok := getCreateSecurityGroupRuleProtocolGetProtocolAttributeTypeOk(o.Protocol); ok {
toSerialize["Protocol"] = val
}
return toSerialize, nil
}
type NullableCreateSecurityGroupRuleProtocol struct {
value *CreateSecurityGroupRuleProtocol
isSet bool
}
func (v NullableCreateSecurityGroupRuleProtocol) Get() *CreateSecurityGroupRuleProtocol {
return v.value
}
func (v *NullableCreateSecurityGroupRuleProtocol) Set(val *CreateSecurityGroupRuleProtocol) {
v.value = val
v.isSet = true
}
func (v NullableCreateSecurityGroupRuleProtocol) IsSet() bool {
return v.isSet
}
func (v *NullableCreateSecurityGroupRuleProtocol) Unset() {
v.value = nil
v.isSet = false
}
func NewNullableCreateSecurityGroupRuleProtocol(val *CreateSecurityGroupRuleProtocol) *NullableCreateSecurityGroupRuleProtocol {
return &NullableCreateSecurityGroupRuleProtocol{value: val, isSet: true}
}
func (v NullableCreateSecurityGroupRuleProtocol) MarshalJSON() ([]byte, error) {
return json.Marshal(v.value)
}
func (v *NullableCreateSecurityGroupRuleProtocol) UnmarshalJSON(src []byte) error {
v.isSet = true
return json.Unmarshal(src, &v.value)
}