/* STACKIT VPN API The STACKIT VPN API provides endpoints to provision and manage VPN instances in your STACKIT project. API version: 1alpha1 */ // Code generated by OpenAPI Generator (https://openapi-generator.tech); DO NOT EDIT. package vpnalpha import ( "encoding/json" ) // checks if the UpdateVPNGatewayPayload type satisfies the MappedNullable interface at compile time var _ MappedNullable = &UpdateVPNGatewayPayload{} /* types and functions for availabilityZones */ // isModel type UpdateVPNGatewayPayloadGetAvailabilityZonesAttributeType = *CreateVPNGatewayPayloadAvailabilityZones type UpdateVPNGatewayPayloadGetAvailabilityZonesArgType = CreateVPNGatewayPayloadAvailabilityZones type UpdateVPNGatewayPayloadGetAvailabilityZonesRetType = CreateVPNGatewayPayloadAvailabilityZones func getUpdateVPNGatewayPayloadGetAvailabilityZonesAttributeTypeOk(arg UpdateVPNGatewayPayloadGetAvailabilityZonesAttributeType) (ret UpdateVPNGatewayPayloadGetAvailabilityZonesRetType, ok bool) { if arg == nil { return ret, false } return *arg, true } func setUpdateVPNGatewayPayloadGetAvailabilityZonesAttributeType(arg *UpdateVPNGatewayPayloadGetAvailabilityZonesAttributeType, val UpdateVPNGatewayPayloadGetAvailabilityZonesRetType) { *arg = &val } /* types and functions for bgpEnabled */ // isBoolean type UpdateVPNGatewayPayloadgetBgpEnabledAttributeType = *bool type UpdateVPNGatewayPayloadgetBgpEnabledArgType = bool type UpdateVPNGatewayPayloadgetBgpEnabledRetType = bool func getUpdateVPNGatewayPayloadgetBgpEnabledAttributeTypeOk(arg UpdateVPNGatewayPayloadgetBgpEnabledAttributeType) (ret UpdateVPNGatewayPayloadgetBgpEnabledRetType, ok bool) { if arg == nil { return ret, false } return *arg, true } func setUpdateVPNGatewayPayloadgetBgpEnabledAttributeType(arg *UpdateVPNGatewayPayloadgetBgpEnabledAttributeType, val UpdateVPNGatewayPayloadgetBgpEnabledRetType) { *arg = &val } /* types and functions for bgpGatewayConfig */ // isModel type UpdateVPNGatewayPayloadGetBgpGatewayConfigAttributeType = *BGPGatewayConfig type UpdateVPNGatewayPayloadGetBgpGatewayConfigArgType = BGPGatewayConfig type UpdateVPNGatewayPayloadGetBgpGatewayConfigRetType = BGPGatewayConfig func getUpdateVPNGatewayPayloadGetBgpGatewayConfigAttributeTypeOk(arg UpdateVPNGatewayPayloadGetBgpGatewayConfigAttributeType) (ret UpdateVPNGatewayPayloadGetBgpGatewayConfigRetType, ok bool) { if arg == nil { return ret, false } return *arg, true } func setUpdateVPNGatewayPayloadGetBgpGatewayConfigAttributeType(arg *UpdateVPNGatewayPayloadGetBgpGatewayConfigAttributeType, val UpdateVPNGatewayPayloadGetBgpGatewayConfigRetType) { *arg = &val } /* types and functions for labels */ // isContainer type UpdateVPNGatewayPayloadGetLabelsAttributeType = *map[string]string type UpdateVPNGatewayPayloadGetLabelsArgType = map[string]string type UpdateVPNGatewayPayloadGetLabelsRetType = map[string]string func getUpdateVPNGatewayPayloadGetLabelsAttributeTypeOk(arg UpdateVPNGatewayPayloadGetLabelsAttributeType) (ret UpdateVPNGatewayPayloadGetLabelsRetType, ok bool) { if arg == nil { return ret, false } return *arg, true } func setUpdateVPNGatewayPayloadGetLabelsAttributeType(arg *UpdateVPNGatewayPayloadGetLabelsAttributeType, val UpdateVPNGatewayPayloadGetLabelsRetType) { *arg = &val } /* types and functions for name */ // isNotNullableString type UpdateVPNGatewayPayloadGetNameAttributeType = *string func getUpdateVPNGatewayPayloadGetNameAttributeTypeOk(arg UpdateVPNGatewayPayloadGetNameAttributeType) (ret UpdateVPNGatewayPayloadGetNameRetType, ok bool) { if arg == nil { return ret, false } return *arg, true } func setUpdateVPNGatewayPayloadGetNameAttributeType(arg *UpdateVPNGatewayPayloadGetNameAttributeType, val UpdateVPNGatewayPayloadGetNameRetType) { *arg = &val } type UpdateVPNGatewayPayloadGetNameArgType = string type UpdateVPNGatewayPayloadGetNameRetType = string /* types and functions for planId */ // isNotNullableString type UpdateVPNGatewayPayloadGetPlanIdAttributeType = *string func getUpdateVPNGatewayPayloadGetPlanIdAttributeTypeOk(arg UpdateVPNGatewayPayloadGetPlanIdAttributeType) (ret UpdateVPNGatewayPayloadGetPlanIdRetType, ok bool) { if arg == nil { return ret, false } return *arg, true } func setUpdateVPNGatewayPayloadGetPlanIdAttributeType(arg *UpdateVPNGatewayPayloadGetPlanIdAttributeType, val UpdateVPNGatewayPayloadGetPlanIdRetType) { *arg = &val } type UpdateVPNGatewayPayloadGetPlanIdArgType = string type UpdateVPNGatewayPayloadGetPlanIdRetType = string // UpdateVPNGatewayPayload struct for UpdateVPNGatewayPayload type UpdateVPNGatewayPayload struct { // REQUIRED AvailabilityZones UpdateVPNGatewayPayloadGetAvailabilityZonesAttributeType `json:"availabilityZones" required:"true"` // Enable BGP routing. (This will require a BGPGatewayConfig and also a BGPTunnelConfig for each Tunnel in each Connection) BgpEnabled UpdateVPNGatewayPayloadgetBgpEnabledAttributeType `json:"bgpEnabled,omitempty"` BgpGatewayConfig UpdateVPNGatewayPayloadGetBgpGatewayConfigAttributeType `json:"bgpGatewayConfig,omitempty"` // Map of custom labels. Key and values must be max 63 chars, start/end with alphanumeric. Labels UpdateVPNGatewayPayloadGetLabelsAttributeType `json:"labels,omitempty"` // The name of the VPN gateway. Maximum 20 characters (only alphanumeric and hyphens allowed). Not changeable after creation. // REQUIRED Name UpdateVPNGatewayPayloadGetNameAttributeType `json:"name" required:"true"` // Service Plan to configure the limits of the VPN. Currently supported plans are p50, p100, p200. This list can change in the future where plan ids will be removed and new plans by added. That is the reason this is not an enum. // REQUIRED PlanId UpdateVPNGatewayPayloadGetPlanIdAttributeType `json:"planId" required:"true"` } type _UpdateVPNGatewayPayload UpdateVPNGatewayPayload // NewUpdateVPNGatewayPayload instantiates a new UpdateVPNGatewayPayload 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 NewUpdateVPNGatewayPayload(availabilityZones UpdateVPNGatewayPayloadGetAvailabilityZonesArgType, name UpdateVPNGatewayPayloadGetNameArgType, planId UpdateVPNGatewayPayloadGetPlanIdArgType) *UpdateVPNGatewayPayload { this := UpdateVPNGatewayPayload{} setUpdateVPNGatewayPayloadGetAvailabilityZonesAttributeType(&this.AvailabilityZones, availabilityZones) setUpdateVPNGatewayPayloadGetNameAttributeType(&this.Name, name) setUpdateVPNGatewayPayloadGetPlanIdAttributeType(&this.PlanId, planId) return &this } // NewUpdateVPNGatewayPayloadWithDefaults instantiates a new UpdateVPNGatewayPayload 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 NewUpdateVPNGatewayPayloadWithDefaults() *UpdateVPNGatewayPayload { this := UpdateVPNGatewayPayload{} return &this } // GetAvailabilityZones returns the AvailabilityZones field value func (o *UpdateVPNGatewayPayload) GetAvailabilityZones() (ret UpdateVPNGatewayPayloadGetAvailabilityZonesRetType) { ret, _ = o.GetAvailabilityZonesOk() return ret } // GetAvailabilityZonesOk returns a tuple with the AvailabilityZones field value // and a boolean to check if the value has been set. func (o *UpdateVPNGatewayPayload) GetAvailabilityZonesOk() (ret UpdateVPNGatewayPayloadGetAvailabilityZonesRetType, ok bool) { return getUpdateVPNGatewayPayloadGetAvailabilityZonesAttributeTypeOk(o.AvailabilityZones) } // SetAvailabilityZones sets field value func (o *UpdateVPNGatewayPayload) SetAvailabilityZones(v UpdateVPNGatewayPayloadGetAvailabilityZonesRetType) { setUpdateVPNGatewayPayloadGetAvailabilityZonesAttributeType(&o.AvailabilityZones, v) } // GetBgpEnabled returns the BgpEnabled field value if set, zero value otherwise. func (o *UpdateVPNGatewayPayload) GetBgpEnabled() (res UpdateVPNGatewayPayloadgetBgpEnabledRetType) { res, _ = o.GetBgpEnabledOk() return } // GetBgpEnabledOk returns a tuple with the BgpEnabled field value if set, nil otherwise // and a boolean to check if the value has been set. func (o *UpdateVPNGatewayPayload) GetBgpEnabledOk() (ret UpdateVPNGatewayPayloadgetBgpEnabledRetType, ok bool) { return getUpdateVPNGatewayPayloadgetBgpEnabledAttributeTypeOk(o.BgpEnabled) } // HasBgpEnabled returns a boolean if a field has been set. func (o *UpdateVPNGatewayPayload) HasBgpEnabled() bool { _, ok := o.GetBgpEnabledOk() return ok } // SetBgpEnabled gets a reference to the given bool and assigns it to the BgpEnabled field. func (o *UpdateVPNGatewayPayload) SetBgpEnabled(v UpdateVPNGatewayPayloadgetBgpEnabledRetType) { setUpdateVPNGatewayPayloadgetBgpEnabledAttributeType(&o.BgpEnabled, v) } // GetBgpGatewayConfig returns the BgpGatewayConfig field value if set, zero value otherwise. func (o *UpdateVPNGatewayPayload) GetBgpGatewayConfig() (res UpdateVPNGatewayPayloadGetBgpGatewayConfigRetType) { res, _ = o.GetBgpGatewayConfigOk() return } // GetBgpGatewayConfigOk returns a tuple with the BgpGatewayConfig field value if set, nil otherwise // and a boolean to check if the value has been set. func (o *UpdateVPNGatewayPayload) GetBgpGatewayConfigOk() (ret UpdateVPNGatewayPayloadGetBgpGatewayConfigRetType, ok bool) { return getUpdateVPNGatewayPayloadGetBgpGatewayConfigAttributeTypeOk(o.BgpGatewayConfig) } // HasBgpGatewayConfig returns a boolean if a field has been set. func (o *UpdateVPNGatewayPayload) HasBgpGatewayConfig() bool { _, ok := o.GetBgpGatewayConfigOk() return ok } // SetBgpGatewayConfig gets a reference to the given BGPGatewayConfig and assigns it to the BgpGatewayConfig field. func (o *UpdateVPNGatewayPayload) SetBgpGatewayConfig(v UpdateVPNGatewayPayloadGetBgpGatewayConfigRetType) { setUpdateVPNGatewayPayloadGetBgpGatewayConfigAttributeType(&o.BgpGatewayConfig, v) } // GetLabels returns the Labels field value if set, zero value otherwise. func (o *UpdateVPNGatewayPayload) GetLabels() (res UpdateVPNGatewayPayloadGetLabelsRetType) { res, _ = o.GetLabelsOk() return } // GetLabelsOk returns a tuple with the Labels field value if set, nil otherwise // and a boolean to check if the value has been set. func (o *UpdateVPNGatewayPayload) GetLabelsOk() (ret UpdateVPNGatewayPayloadGetLabelsRetType, ok bool) { return getUpdateVPNGatewayPayloadGetLabelsAttributeTypeOk(o.Labels) } // HasLabels returns a boolean if a field has been set. func (o *UpdateVPNGatewayPayload) HasLabels() bool { _, ok := o.GetLabelsOk() return ok } // SetLabels gets a reference to the given map[string]string and assigns it to the Labels field. func (o *UpdateVPNGatewayPayload) SetLabels(v UpdateVPNGatewayPayloadGetLabelsRetType) { setUpdateVPNGatewayPayloadGetLabelsAttributeType(&o.Labels, v) } // GetName returns the Name field value func (o *UpdateVPNGatewayPayload) GetName() (ret UpdateVPNGatewayPayloadGetNameRetType) { ret, _ = o.GetNameOk() return ret } // GetNameOk returns a tuple with the Name field value // and a boolean to check if the value has been set. func (o *UpdateVPNGatewayPayload) GetNameOk() (ret UpdateVPNGatewayPayloadGetNameRetType, ok bool) { return getUpdateVPNGatewayPayloadGetNameAttributeTypeOk(o.Name) } // SetName sets field value func (o *UpdateVPNGatewayPayload) SetName(v UpdateVPNGatewayPayloadGetNameRetType) { setUpdateVPNGatewayPayloadGetNameAttributeType(&o.Name, v) } // GetPlanId returns the PlanId field value func (o *UpdateVPNGatewayPayload) GetPlanId() (ret UpdateVPNGatewayPayloadGetPlanIdRetType) { ret, _ = o.GetPlanIdOk() return ret } // GetPlanIdOk returns a tuple with the PlanId field value // and a boolean to check if the value has been set. func (o *UpdateVPNGatewayPayload) GetPlanIdOk() (ret UpdateVPNGatewayPayloadGetPlanIdRetType, ok bool) { return getUpdateVPNGatewayPayloadGetPlanIdAttributeTypeOk(o.PlanId) } // SetPlanId sets field value func (o *UpdateVPNGatewayPayload) SetPlanId(v UpdateVPNGatewayPayloadGetPlanIdRetType) { setUpdateVPNGatewayPayloadGetPlanIdAttributeType(&o.PlanId, v) } func (o UpdateVPNGatewayPayload) ToMap() (map[string]interface{}, error) { toSerialize := map[string]interface{}{} if val, ok := getUpdateVPNGatewayPayloadGetAvailabilityZonesAttributeTypeOk(o.AvailabilityZones); ok { toSerialize["AvailabilityZones"] = val } if val, ok := getUpdateVPNGatewayPayloadgetBgpEnabledAttributeTypeOk(o.BgpEnabled); ok { toSerialize["BgpEnabled"] = val } if val, ok := getUpdateVPNGatewayPayloadGetBgpGatewayConfigAttributeTypeOk(o.BgpGatewayConfig); ok { toSerialize["BgpGatewayConfig"] = val } if val, ok := getUpdateVPNGatewayPayloadGetLabelsAttributeTypeOk(o.Labels); ok { toSerialize["Labels"] = val } if val, ok := getUpdateVPNGatewayPayloadGetNameAttributeTypeOk(o.Name); ok { toSerialize["Name"] = val } if val, ok := getUpdateVPNGatewayPayloadGetPlanIdAttributeTypeOk(o.PlanId); ok { toSerialize["PlanId"] = val } return toSerialize, nil } type NullableUpdateVPNGatewayPayload struct { value *UpdateVPNGatewayPayload isSet bool } func (v NullableUpdateVPNGatewayPayload) Get() *UpdateVPNGatewayPayload { return v.value } func (v *NullableUpdateVPNGatewayPayload) Set(val *UpdateVPNGatewayPayload) { v.value = val v.isSet = true } func (v NullableUpdateVPNGatewayPayload) IsSet() bool { return v.isSet } func (v *NullableUpdateVPNGatewayPayload) Unset() { v.value = nil v.isSet = false } func NewNullableUpdateVPNGatewayPayload(val *UpdateVPNGatewayPayload) *NullableUpdateVPNGatewayPayload { return &NullableUpdateVPNGatewayPayload{value: val, isSet: true} } func (v NullableUpdateVPNGatewayPayload) MarshalJSON() ([]byte, error) { return json.Marshal(v.value) } func (v *NullableUpdateVPNGatewayPayload) UnmarshalJSON(src []byte) error { v.isSet = true return json.Unmarshal(src, &v.value) }