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

454 lines
14 KiB
Go

/*
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 Gateway type satisfies the MappedNullable interface at compile time
var _ MappedNullable = &Gateway{}
/*
types and functions for region
*/
// isEnumRef
type GatewayGetRegionAttributeType = *Region
type GatewayGetRegionArgType = Region
type GatewayGetRegionRetType = Region
func getGatewayGetRegionAttributeTypeOk(arg GatewayGetRegionAttributeType) (ret GatewayGetRegionRetType, ok bool) {
if arg == nil {
return ret, false
}
return *arg, true
}
func setGatewayGetRegionAttributeType(arg *GatewayGetRegionAttributeType, val GatewayGetRegionRetType) {
*arg = &val
}
/*
types and functions for state
*/
// isEnumRef
type GatewayGetStateAttributeType = *GatewayStatus
type GatewayGetStateArgType = GatewayStatus
type GatewayGetStateRetType = GatewayStatus
func getGatewayGetStateAttributeTypeOk(arg GatewayGetStateAttributeType) (ret GatewayGetStateRetType, ok bool) {
if arg == nil {
return ret, false
}
return *arg, true
}
func setGatewayGetStateAttributeType(arg *GatewayGetStateAttributeType, val GatewayGetStateRetType) {
*arg = &val
}
/*
types and functions for availabilityZones
*/
// isModel
type GatewayGetAvailabilityZonesAttributeType = *CreateVPNGatewayPayloadAvailabilityZones
type GatewayGetAvailabilityZonesArgType = CreateVPNGatewayPayloadAvailabilityZones
type GatewayGetAvailabilityZonesRetType = CreateVPNGatewayPayloadAvailabilityZones
func getGatewayGetAvailabilityZonesAttributeTypeOk(arg GatewayGetAvailabilityZonesAttributeType) (ret GatewayGetAvailabilityZonesRetType, ok bool) {
if arg == nil {
return ret, false
}
return *arg, true
}
func setGatewayGetAvailabilityZonesAttributeType(arg *GatewayGetAvailabilityZonesAttributeType, val GatewayGetAvailabilityZonesRetType) {
*arg = &val
}
/*
types and functions for bgpEnabled
*/
// isBoolean
type GatewaygetBgpEnabledAttributeType = *bool
type GatewaygetBgpEnabledArgType = bool
type GatewaygetBgpEnabledRetType = bool
func getGatewaygetBgpEnabledAttributeTypeOk(arg GatewaygetBgpEnabledAttributeType) (ret GatewaygetBgpEnabledRetType, ok bool) {
if arg == nil {
return ret, false
}
return *arg, true
}
func setGatewaygetBgpEnabledAttributeType(arg *GatewaygetBgpEnabledAttributeType, val GatewaygetBgpEnabledRetType) {
*arg = &val
}
/*
types and functions for bgpGatewayConfig
*/
// isModel
type GatewayGetBgpGatewayConfigAttributeType = *BGPGatewayConfig
type GatewayGetBgpGatewayConfigArgType = BGPGatewayConfig
type GatewayGetBgpGatewayConfigRetType = BGPGatewayConfig
func getGatewayGetBgpGatewayConfigAttributeTypeOk(arg GatewayGetBgpGatewayConfigAttributeType) (ret GatewayGetBgpGatewayConfigRetType, ok bool) {
if arg == nil {
return ret, false
}
return *arg, true
}
func setGatewayGetBgpGatewayConfigAttributeType(arg *GatewayGetBgpGatewayConfigAttributeType, val GatewayGetBgpGatewayConfigRetType) {
*arg = &val
}
/*
types and functions for labels
*/
// isContainer
type GatewayGetLabelsAttributeType = *map[string]string
type GatewayGetLabelsArgType = map[string]string
type GatewayGetLabelsRetType = map[string]string
func getGatewayGetLabelsAttributeTypeOk(arg GatewayGetLabelsAttributeType) (ret GatewayGetLabelsRetType, ok bool) {
if arg == nil {
return ret, false
}
return *arg, true
}
func setGatewayGetLabelsAttributeType(arg *GatewayGetLabelsAttributeType, val GatewayGetLabelsRetType) {
*arg = &val
}
/*
types and functions for name
*/
// isNotNullableString
type GatewayGetNameAttributeType = *string
func getGatewayGetNameAttributeTypeOk(arg GatewayGetNameAttributeType) (ret GatewayGetNameRetType, ok bool) {
if arg == nil {
return ret, false
}
return *arg, true
}
func setGatewayGetNameAttributeType(arg *GatewayGetNameAttributeType, val GatewayGetNameRetType) {
*arg = &val
}
type GatewayGetNameArgType = string
type GatewayGetNameRetType = string
/*
types and functions for planId
*/
// isNotNullableString
type GatewayGetPlanIdAttributeType = *string
func getGatewayGetPlanIdAttributeTypeOk(arg GatewayGetPlanIdAttributeType) (ret GatewayGetPlanIdRetType, ok bool) {
if arg == nil {
return ret, false
}
return *arg, true
}
func setGatewayGetPlanIdAttributeType(arg *GatewayGetPlanIdAttributeType, val GatewayGetPlanIdRetType) {
*arg = &val
}
type GatewayGetPlanIdArgType = string
type GatewayGetPlanIdRetType = string
// Gateway struct for Gateway
type Gateway struct {
Region GatewayGetRegionAttributeType `json:"region,omitempty"`
State GatewayGetStateAttributeType `json:"state,omitempty"`
// REQUIRED
AvailabilityZones GatewayGetAvailabilityZonesAttributeType `json:"availabilityZones" required:"true"`
// Enable BGP routing. (This will require a BGPGatewayConfig and also a BGPTunnelConfig for each Tunnel in each Connection)
BgpEnabled GatewaygetBgpEnabledAttributeType `json:"bgpEnabled,omitempty"`
BgpGatewayConfig GatewayGetBgpGatewayConfigAttributeType `json:"bgpGatewayConfig,omitempty"`
// Map of custom labels. Key and values must be max 63 chars, start/end with alphanumeric.
Labels GatewayGetLabelsAttributeType `json:"labels,omitempty"`
// The name of the VPN gateway. Maximum 20 characters (only alphanumeric and hyphens allowed). Not changeable after creation.
// REQUIRED
Name GatewayGetNameAttributeType `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 GatewayGetPlanIdAttributeType `json:"planId" required:"true"`
}
type _Gateway Gateway
// NewGateway instantiates a new Gateway 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 NewGateway(availabilityZones GatewayGetAvailabilityZonesArgType, name GatewayGetNameArgType, planId GatewayGetPlanIdArgType) *Gateway {
this := Gateway{}
setGatewayGetAvailabilityZonesAttributeType(&this.AvailabilityZones, availabilityZones)
setGatewayGetNameAttributeType(&this.Name, name)
setGatewayGetPlanIdAttributeType(&this.PlanId, planId)
return &this
}
// NewGatewayWithDefaults instantiates a new Gateway 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 NewGatewayWithDefaults() *Gateway {
this := Gateway{}
var region Region = REGION_EU01
this.Region = &region
return &this
}
// GetRegion returns the Region field value if set, zero value otherwise.
func (o *Gateway) GetRegion() (res GatewayGetRegionRetType) {
res, _ = o.GetRegionOk()
return
}
// GetRegionOk returns a tuple with the Region field value if set, nil otherwise
// and a boolean to check if the value has been set.
func (o *Gateway) GetRegionOk() (ret GatewayGetRegionRetType, ok bool) {
return getGatewayGetRegionAttributeTypeOk(o.Region)
}
// HasRegion returns a boolean if a field has been set.
func (o *Gateway) HasRegion() bool {
_, ok := o.GetRegionOk()
return ok
}
// SetRegion gets a reference to the given Region and assigns it to the Region field.
func (o *Gateway) SetRegion(v GatewayGetRegionRetType) {
setGatewayGetRegionAttributeType(&o.Region, v)
}
// GetState returns the State field value if set, zero value otherwise.
func (o *Gateway) GetState() (res GatewayGetStateRetType) {
res, _ = o.GetStateOk()
return
}
// GetStateOk returns a tuple with the State field value if set, nil otherwise
// and a boolean to check if the value has been set.
func (o *Gateway) GetStateOk() (ret GatewayGetStateRetType, ok bool) {
return getGatewayGetStateAttributeTypeOk(o.State)
}
// HasState returns a boolean if a field has been set.
func (o *Gateway) HasState() bool {
_, ok := o.GetStateOk()
return ok
}
// SetState gets a reference to the given GatewayStatus and assigns it to the State field.
func (o *Gateway) SetState(v GatewayGetStateRetType) {
setGatewayGetStateAttributeType(&o.State, v)
}
// GetAvailabilityZones returns the AvailabilityZones field value
func (o *Gateway) GetAvailabilityZones() (ret GatewayGetAvailabilityZonesRetType) {
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 *Gateway) GetAvailabilityZonesOk() (ret GatewayGetAvailabilityZonesRetType, ok bool) {
return getGatewayGetAvailabilityZonesAttributeTypeOk(o.AvailabilityZones)
}
// SetAvailabilityZones sets field value
func (o *Gateway) SetAvailabilityZones(v GatewayGetAvailabilityZonesRetType) {
setGatewayGetAvailabilityZonesAttributeType(&o.AvailabilityZones, v)
}
// GetBgpEnabled returns the BgpEnabled field value if set, zero value otherwise.
func (o *Gateway) GetBgpEnabled() (res GatewaygetBgpEnabledRetType) {
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 *Gateway) GetBgpEnabledOk() (ret GatewaygetBgpEnabledRetType, ok bool) {
return getGatewaygetBgpEnabledAttributeTypeOk(o.BgpEnabled)
}
// HasBgpEnabled returns a boolean if a field has been set.
func (o *Gateway) HasBgpEnabled() bool {
_, ok := o.GetBgpEnabledOk()
return ok
}
// SetBgpEnabled gets a reference to the given bool and assigns it to the BgpEnabled field.
func (o *Gateway) SetBgpEnabled(v GatewaygetBgpEnabledRetType) {
setGatewaygetBgpEnabledAttributeType(&o.BgpEnabled, v)
}
// GetBgpGatewayConfig returns the BgpGatewayConfig field value if set, zero value otherwise.
func (o *Gateway) GetBgpGatewayConfig() (res GatewayGetBgpGatewayConfigRetType) {
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 *Gateway) GetBgpGatewayConfigOk() (ret GatewayGetBgpGatewayConfigRetType, ok bool) {
return getGatewayGetBgpGatewayConfigAttributeTypeOk(o.BgpGatewayConfig)
}
// HasBgpGatewayConfig returns a boolean if a field has been set.
func (o *Gateway) HasBgpGatewayConfig() bool {
_, ok := o.GetBgpGatewayConfigOk()
return ok
}
// SetBgpGatewayConfig gets a reference to the given BGPGatewayConfig and assigns it to the BgpGatewayConfig field.
func (o *Gateway) SetBgpGatewayConfig(v GatewayGetBgpGatewayConfigRetType) {
setGatewayGetBgpGatewayConfigAttributeType(&o.BgpGatewayConfig, v)
}
// GetLabels returns the Labels field value if set, zero value otherwise.
func (o *Gateway) GetLabels() (res GatewayGetLabelsRetType) {
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 *Gateway) GetLabelsOk() (ret GatewayGetLabelsRetType, ok bool) {
return getGatewayGetLabelsAttributeTypeOk(o.Labels)
}
// HasLabels returns a boolean if a field has been set.
func (o *Gateway) 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 *Gateway) SetLabels(v GatewayGetLabelsRetType) {
setGatewayGetLabelsAttributeType(&o.Labels, v)
}
// GetName returns the Name field value
func (o *Gateway) GetName() (ret GatewayGetNameRetType) {
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 *Gateway) GetNameOk() (ret GatewayGetNameRetType, ok bool) {
return getGatewayGetNameAttributeTypeOk(o.Name)
}
// SetName sets field value
func (o *Gateway) SetName(v GatewayGetNameRetType) {
setGatewayGetNameAttributeType(&o.Name, v)
}
// GetPlanId returns the PlanId field value
func (o *Gateway) GetPlanId() (ret GatewayGetPlanIdRetType) {
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 *Gateway) GetPlanIdOk() (ret GatewayGetPlanIdRetType, ok bool) {
return getGatewayGetPlanIdAttributeTypeOk(o.PlanId)
}
// SetPlanId sets field value
func (o *Gateway) SetPlanId(v GatewayGetPlanIdRetType) {
setGatewayGetPlanIdAttributeType(&o.PlanId, v)
}
func (o Gateway) ToMap() (map[string]interface{}, error) {
toSerialize := map[string]interface{}{}
if val, ok := getGatewayGetRegionAttributeTypeOk(o.Region); ok {
toSerialize["Region"] = val
}
if val, ok := getGatewayGetStateAttributeTypeOk(o.State); ok {
toSerialize["State"] = val
}
if val, ok := getGatewayGetAvailabilityZonesAttributeTypeOk(o.AvailabilityZones); ok {
toSerialize["AvailabilityZones"] = val
}
if val, ok := getGatewaygetBgpEnabledAttributeTypeOk(o.BgpEnabled); ok {
toSerialize["BgpEnabled"] = val
}
if val, ok := getGatewayGetBgpGatewayConfigAttributeTypeOk(o.BgpGatewayConfig); ok {
toSerialize["BgpGatewayConfig"] = val
}
if val, ok := getGatewayGetLabelsAttributeTypeOk(o.Labels); ok {
toSerialize["Labels"] = val
}
if val, ok := getGatewayGetNameAttributeTypeOk(o.Name); ok {
toSerialize["Name"] = val
}
if val, ok := getGatewayGetPlanIdAttributeTypeOk(o.PlanId); ok {
toSerialize["PlanId"] = val
}
return toSerialize, nil
}
type NullableGateway struct {
value *Gateway
isSet bool
}
func (v NullableGateway) Get() *Gateway {
return v.value
}
func (v *NullableGateway) Set(val *Gateway) {
v.value = val
v.isSet = true
}
func (v NullableGateway) IsSet() bool {
return v.isSet
}
func (v *NullableGateway) Unset() {
v.value = nil
v.isSet = false
}
func NewNullableGateway(val *Gateway) *NullableGateway {
return &NullableGateway{value: val, isSet: true}
}
func (v NullableGateway) MarshalJSON() ([]byte, error) {
return json.Marshal(v.value)
}
func (v *NullableGateway) UnmarshalJSON(src []byte) error {
v.isSet = true
return json.Unmarshal(src, &v.value)
}