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

482 lines
17 KiB
Go

/*
STACKIT File Storage (SFS)
API used to create and manage NFS Shares.
API version: 1beta.0.0
*/
// Code generated by OpenAPI Generator (https://openapi-generator.tech); DO NOT EDIT.
package sfsbeta
import (
"encoding/json"
"time"
)
// checks if the ShareExportPolicyRule type satisfies the MappedNullable interface at compile time
var _ MappedNullable = &ShareExportPolicyRule{}
/*
types and functions for createdAt
*/
// isDateTime
type ShareExportPolicyRuleGetCreatedAtAttributeType = *time.Time
type ShareExportPolicyRuleGetCreatedAtArgType = time.Time
type ShareExportPolicyRuleGetCreatedAtRetType = time.Time
func getShareExportPolicyRuleGetCreatedAtAttributeTypeOk(arg ShareExportPolicyRuleGetCreatedAtAttributeType) (ret ShareExportPolicyRuleGetCreatedAtRetType, ok bool) {
if arg == nil {
return ret, false
}
return *arg, true
}
func setShareExportPolicyRuleGetCreatedAtAttributeType(arg *ShareExportPolicyRuleGetCreatedAtAttributeType, val ShareExportPolicyRuleGetCreatedAtRetType) {
*arg = &val
}
/*
types and functions for description
*/
// isNullableString
type ShareExportPolicyRuleGetDescriptionAttributeType = *NullableString
func getShareExportPolicyRuleGetDescriptionAttributeTypeOk(arg ShareExportPolicyRuleGetDescriptionAttributeType) (ret ShareExportPolicyRuleGetDescriptionRetType, ok bool) {
if arg == nil {
return nil, false
}
return arg.Get(), true
}
func setShareExportPolicyRuleGetDescriptionAttributeType(arg *ShareExportPolicyRuleGetDescriptionAttributeType, val ShareExportPolicyRuleGetDescriptionRetType) {
if IsNil(*arg) {
*arg = NewNullableString(val)
} else {
(*arg).Set(val)
}
}
type ShareExportPolicyRuleGetDescriptionArgType = *string
type ShareExportPolicyRuleGetDescriptionRetType = *string
/*
types and functions for id
*/
// isNotNullableString
type ShareExportPolicyRuleGetIdAttributeType = *string
func getShareExportPolicyRuleGetIdAttributeTypeOk(arg ShareExportPolicyRuleGetIdAttributeType) (ret ShareExportPolicyRuleGetIdRetType, ok bool) {
if arg == nil {
return ret, false
}
return *arg, true
}
func setShareExportPolicyRuleGetIdAttributeType(arg *ShareExportPolicyRuleGetIdAttributeType, val ShareExportPolicyRuleGetIdRetType) {
*arg = &val
}
type ShareExportPolicyRuleGetIdArgType = string
type ShareExportPolicyRuleGetIdRetType = string
/*
types and functions for ipAcl
*/
// isArray
type ShareExportPolicyRuleGetIpAclAttributeType = *[]string
type ShareExportPolicyRuleGetIpAclArgType = []string
type ShareExportPolicyRuleGetIpAclRetType = []string
func getShareExportPolicyRuleGetIpAclAttributeTypeOk(arg ShareExportPolicyRuleGetIpAclAttributeType) (ret ShareExportPolicyRuleGetIpAclRetType, ok bool) {
if arg == nil {
return ret, false
}
return *arg, true
}
func setShareExportPolicyRuleGetIpAclAttributeType(arg *ShareExportPolicyRuleGetIpAclAttributeType, val ShareExportPolicyRuleGetIpAclRetType) {
*arg = &val
}
/*
types and functions for order
*/
// isInteger
type ShareExportPolicyRuleGetOrderAttributeType = *int64
type ShareExportPolicyRuleGetOrderArgType = int64
type ShareExportPolicyRuleGetOrderRetType = int64
func getShareExportPolicyRuleGetOrderAttributeTypeOk(arg ShareExportPolicyRuleGetOrderAttributeType) (ret ShareExportPolicyRuleGetOrderRetType, ok bool) {
if arg == nil {
return ret, false
}
return *arg, true
}
func setShareExportPolicyRuleGetOrderAttributeType(arg *ShareExportPolicyRuleGetOrderAttributeType, val ShareExportPolicyRuleGetOrderRetType) {
*arg = &val
}
/*
types and functions for readOnly
*/
// isBoolean
type ShareExportPolicyRulegetReadOnlyAttributeType = *bool
type ShareExportPolicyRulegetReadOnlyArgType = bool
type ShareExportPolicyRulegetReadOnlyRetType = bool
func getShareExportPolicyRulegetReadOnlyAttributeTypeOk(arg ShareExportPolicyRulegetReadOnlyAttributeType) (ret ShareExportPolicyRulegetReadOnlyRetType, ok bool) {
if arg == nil {
return ret, false
}
return *arg, true
}
func setShareExportPolicyRulegetReadOnlyAttributeType(arg *ShareExportPolicyRulegetReadOnlyAttributeType, val ShareExportPolicyRulegetReadOnlyRetType) {
*arg = &val
}
/*
types and functions for setUuid
*/
// isBoolean
type ShareExportPolicyRulegetSetUuidAttributeType = *bool
type ShareExportPolicyRulegetSetUuidArgType = bool
type ShareExportPolicyRulegetSetUuidRetType = bool
func getShareExportPolicyRulegetSetUuidAttributeTypeOk(arg ShareExportPolicyRulegetSetUuidAttributeType) (ret ShareExportPolicyRulegetSetUuidRetType, ok bool) {
if arg == nil {
return ret, false
}
return *arg, true
}
func setShareExportPolicyRulegetSetUuidAttributeType(arg *ShareExportPolicyRulegetSetUuidAttributeType, val ShareExportPolicyRulegetSetUuidRetType) {
*arg = &val
}
/*
types and functions for superUser
*/
// isBoolean
type ShareExportPolicyRulegetSuperUserAttributeType = *bool
type ShareExportPolicyRulegetSuperUserArgType = bool
type ShareExportPolicyRulegetSuperUserRetType = bool
func getShareExportPolicyRulegetSuperUserAttributeTypeOk(arg ShareExportPolicyRulegetSuperUserAttributeType) (ret ShareExportPolicyRulegetSuperUserRetType, ok bool) {
if arg == nil {
return ret, false
}
return *arg, true
}
func setShareExportPolicyRulegetSuperUserAttributeType(arg *ShareExportPolicyRulegetSuperUserAttributeType, val ShareExportPolicyRulegetSuperUserRetType) {
*arg = &val
}
// ShareExportPolicyRule struct for ShareExportPolicyRule
type ShareExportPolicyRule struct {
CreatedAt ShareExportPolicyRuleGetCreatedAtAttributeType `json:"createdAt,omitempty"`
// Description of the Rule (optional)
Description ShareExportPolicyRuleGetDescriptionAttributeType `json:"description,omitempty"`
// ID of the Share Export Policy Rule
Id ShareExportPolicyRuleGetIdAttributeType `json:"id,omitempty"`
// IP access control list, where IPs must have a subnet mask (e.g. \"172.16.0.0/24\" for a range of IPs, or \"172.16.0.251/32\" for a specific IP) This array cannot be empty
IpAcl ShareExportPolicyRuleGetIpAclAttributeType `json:"ipAcl,omitempty"`
// Order of the rule within a Share Export Policy. The order is used so that when a client IP matches multiple rules, the first rule is applied This field must be set
// Can be cast to int32 without loss of precision.
Order ShareExportPolicyRuleGetOrderAttributeType `json:"order,omitempty"`
// Flag to indicate if client IPs matching this rule can only mount the share in read only mode Default: false
ReadOnly ShareExportPolicyRulegetReadOnlyAttributeType `json:"readOnly,omitempty"`
// Flag to honor set UUID Default: false
SetUuid ShareExportPolicyRulegetSetUuidAttributeType `json:"setUuid,omitempty"`
// Flag to indicate if client IPs matching this rule have root access on the Share Default: true
SuperUser ShareExportPolicyRulegetSuperUserAttributeType `json:"superUser,omitempty"`
}
// NewShareExportPolicyRule instantiates a new ShareExportPolicyRule 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 NewShareExportPolicyRule() *ShareExportPolicyRule {
this := ShareExportPolicyRule{}
return &this
}
// NewShareExportPolicyRuleWithDefaults instantiates a new ShareExportPolicyRule 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 NewShareExportPolicyRuleWithDefaults() *ShareExportPolicyRule {
this := ShareExportPolicyRule{}
return &this
}
// GetCreatedAt returns the CreatedAt field value if set, zero value otherwise.
func (o *ShareExportPolicyRule) GetCreatedAt() (res ShareExportPolicyRuleGetCreatedAtRetType) {
res, _ = o.GetCreatedAtOk()
return
}
// GetCreatedAtOk returns a tuple with the CreatedAt field value if set, nil otherwise
// and a boolean to check if the value has been set.
func (o *ShareExportPolicyRule) GetCreatedAtOk() (ret ShareExportPolicyRuleGetCreatedAtRetType, ok bool) {
return getShareExportPolicyRuleGetCreatedAtAttributeTypeOk(o.CreatedAt)
}
// HasCreatedAt returns a boolean if a field has been set.
func (o *ShareExportPolicyRule) HasCreatedAt() bool {
_, ok := o.GetCreatedAtOk()
return ok
}
// SetCreatedAt gets a reference to the given time.Time and assigns it to the CreatedAt field.
func (o *ShareExportPolicyRule) SetCreatedAt(v ShareExportPolicyRuleGetCreatedAtRetType) {
setShareExportPolicyRuleGetCreatedAtAttributeType(&o.CreatedAt, v)
}
// GetDescription returns the Description field value if set, zero value otherwise (both if not set or set to explicit null).
func (o *ShareExportPolicyRule) GetDescription() (res ShareExportPolicyRuleGetDescriptionRetType) {
res, _ = o.GetDescriptionOk()
return
}
// GetDescriptionOk returns a tuple with the Description 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 *ShareExportPolicyRule) GetDescriptionOk() (ret ShareExportPolicyRuleGetDescriptionRetType, ok bool) {
return getShareExportPolicyRuleGetDescriptionAttributeTypeOk(o.Description)
}
// HasDescription returns a boolean if a field has been set.
func (o *ShareExportPolicyRule) HasDescription() bool {
_, ok := o.GetDescriptionOk()
return ok
}
// SetDescription gets a reference to the given string and assigns it to the Description field.
func (o *ShareExportPolicyRule) SetDescription(v ShareExportPolicyRuleGetDescriptionRetType) {
setShareExportPolicyRuleGetDescriptionAttributeType(&o.Description, v)
}
// SetDescriptionNil sets the value for Description to be an explicit nil
func (o *ShareExportPolicyRule) SetDescriptionNil() {
o.Description = nil
}
// UnsetDescription ensures that no value is present for Description, not even an explicit nil
func (o *ShareExportPolicyRule) UnsetDescription() {
o.Description = nil
}
// GetId returns the Id field value if set, zero value otherwise.
func (o *ShareExportPolicyRule) GetId() (res ShareExportPolicyRuleGetIdRetType) {
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 *ShareExportPolicyRule) GetIdOk() (ret ShareExportPolicyRuleGetIdRetType, ok bool) {
return getShareExportPolicyRuleGetIdAttributeTypeOk(o.Id)
}
// HasId returns a boolean if a field has been set.
func (o *ShareExportPolicyRule) HasId() bool {
_, ok := o.GetIdOk()
return ok
}
// SetId gets a reference to the given string and assigns it to the Id field.
func (o *ShareExportPolicyRule) SetId(v ShareExportPolicyRuleGetIdRetType) {
setShareExportPolicyRuleGetIdAttributeType(&o.Id, v)
}
// GetIpAcl returns the IpAcl field value if set, zero value otherwise.
func (o *ShareExportPolicyRule) GetIpAcl() (res ShareExportPolicyRuleGetIpAclRetType) {
res, _ = o.GetIpAclOk()
return
}
// GetIpAclOk returns a tuple with the IpAcl field value if set, nil otherwise
// and a boolean to check if the value has been set.
func (o *ShareExportPolicyRule) GetIpAclOk() (ret ShareExportPolicyRuleGetIpAclRetType, ok bool) {
return getShareExportPolicyRuleGetIpAclAttributeTypeOk(o.IpAcl)
}
// HasIpAcl returns a boolean if a field has been set.
func (o *ShareExportPolicyRule) HasIpAcl() bool {
_, ok := o.GetIpAclOk()
return ok
}
// SetIpAcl gets a reference to the given []string and assigns it to the IpAcl field.
func (o *ShareExportPolicyRule) SetIpAcl(v ShareExportPolicyRuleGetIpAclRetType) {
setShareExportPolicyRuleGetIpAclAttributeType(&o.IpAcl, v)
}
// GetOrder returns the Order field value if set, zero value otherwise.
func (o *ShareExportPolicyRule) GetOrder() (res ShareExportPolicyRuleGetOrderRetType) {
res, _ = o.GetOrderOk()
return
}
// GetOrderOk returns a tuple with the Order field value if set, nil otherwise
// and a boolean to check if the value has been set.
func (o *ShareExportPolicyRule) GetOrderOk() (ret ShareExportPolicyRuleGetOrderRetType, ok bool) {
return getShareExportPolicyRuleGetOrderAttributeTypeOk(o.Order)
}
// HasOrder returns a boolean if a field has been set.
func (o *ShareExportPolicyRule) HasOrder() bool {
_, ok := o.GetOrderOk()
return ok
}
// SetOrder gets a reference to the given int64 and assigns it to the Order field.
func (o *ShareExportPolicyRule) SetOrder(v ShareExportPolicyRuleGetOrderRetType) {
setShareExportPolicyRuleGetOrderAttributeType(&o.Order, v)
}
// GetReadOnly returns the ReadOnly field value if set, zero value otherwise.
func (o *ShareExportPolicyRule) GetReadOnly() (res ShareExportPolicyRulegetReadOnlyRetType) {
res, _ = o.GetReadOnlyOk()
return
}
// GetReadOnlyOk returns a tuple with the ReadOnly field value if set, nil otherwise
// and a boolean to check if the value has been set.
func (o *ShareExportPolicyRule) GetReadOnlyOk() (ret ShareExportPolicyRulegetReadOnlyRetType, ok bool) {
return getShareExportPolicyRulegetReadOnlyAttributeTypeOk(o.ReadOnly)
}
// HasReadOnly returns a boolean if a field has been set.
func (o *ShareExportPolicyRule) HasReadOnly() bool {
_, ok := o.GetReadOnlyOk()
return ok
}
// SetReadOnly gets a reference to the given bool and assigns it to the ReadOnly field.
func (o *ShareExportPolicyRule) SetReadOnly(v ShareExportPolicyRulegetReadOnlyRetType) {
setShareExportPolicyRulegetReadOnlyAttributeType(&o.ReadOnly, v)
}
// GetSetUuid returns the SetUuid field value if set, zero value otherwise.
func (o *ShareExportPolicyRule) GetSetUuid() (res ShareExportPolicyRulegetSetUuidRetType) {
res, _ = o.GetSetUuidOk()
return
}
// GetSetUuidOk returns a tuple with the SetUuid field value if set, nil otherwise
// and a boolean to check if the value has been set.
func (o *ShareExportPolicyRule) GetSetUuidOk() (ret ShareExportPolicyRulegetSetUuidRetType, ok bool) {
return getShareExportPolicyRulegetSetUuidAttributeTypeOk(o.SetUuid)
}
// HasSetUuid returns a boolean if a field has been set.
func (o *ShareExportPolicyRule) HasSetUuid() bool {
_, ok := o.GetSetUuidOk()
return ok
}
// SetSetUuid gets a reference to the given bool and assigns it to the SetUuid field.
func (o *ShareExportPolicyRule) SetSetUuid(v ShareExportPolicyRulegetSetUuidRetType) {
setShareExportPolicyRulegetSetUuidAttributeType(&o.SetUuid, v)
}
// GetSuperUser returns the SuperUser field value if set, zero value otherwise.
func (o *ShareExportPolicyRule) GetSuperUser() (res ShareExportPolicyRulegetSuperUserRetType) {
res, _ = o.GetSuperUserOk()
return
}
// GetSuperUserOk returns a tuple with the SuperUser field value if set, nil otherwise
// and a boolean to check if the value has been set.
func (o *ShareExportPolicyRule) GetSuperUserOk() (ret ShareExportPolicyRulegetSuperUserRetType, ok bool) {
return getShareExportPolicyRulegetSuperUserAttributeTypeOk(o.SuperUser)
}
// HasSuperUser returns a boolean if a field has been set.
func (o *ShareExportPolicyRule) HasSuperUser() bool {
_, ok := o.GetSuperUserOk()
return ok
}
// SetSuperUser gets a reference to the given bool and assigns it to the SuperUser field.
func (o *ShareExportPolicyRule) SetSuperUser(v ShareExportPolicyRulegetSuperUserRetType) {
setShareExportPolicyRulegetSuperUserAttributeType(&o.SuperUser, v)
}
func (o ShareExportPolicyRule) ToMap() (map[string]interface{}, error) {
toSerialize := map[string]interface{}{}
if val, ok := getShareExportPolicyRuleGetCreatedAtAttributeTypeOk(o.CreatedAt); ok {
toSerialize["CreatedAt"] = val
}
if val, ok := getShareExportPolicyRuleGetDescriptionAttributeTypeOk(o.Description); ok {
toSerialize["Description"] = val
}
if val, ok := getShareExportPolicyRuleGetIdAttributeTypeOk(o.Id); ok {
toSerialize["Id"] = val
}
if val, ok := getShareExportPolicyRuleGetIpAclAttributeTypeOk(o.IpAcl); ok {
toSerialize["IpAcl"] = val
}
if val, ok := getShareExportPolicyRuleGetOrderAttributeTypeOk(o.Order); ok {
toSerialize["Order"] = val
}
if val, ok := getShareExportPolicyRulegetReadOnlyAttributeTypeOk(o.ReadOnly); ok {
toSerialize["ReadOnly"] = val
}
if val, ok := getShareExportPolicyRulegetSetUuidAttributeTypeOk(o.SetUuid); ok {
toSerialize["SetUuid"] = val
}
if val, ok := getShareExportPolicyRulegetSuperUserAttributeTypeOk(o.SuperUser); ok {
toSerialize["SuperUser"] = val
}
return toSerialize, nil
}
type NullableShareExportPolicyRule struct {
value *ShareExportPolicyRule
isSet bool
}
func (v NullableShareExportPolicyRule) Get() *ShareExportPolicyRule {
return v.value
}
func (v *NullableShareExportPolicyRule) Set(val *ShareExportPolicyRule) {
v.value = val
v.isSet = true
}
func (v NullableShareExportPolicyRule) IsSet() bool {
return v.isSet
}
func (v *NullableShareExportPolicyRule) Unset() {
v.value = nil
v.isSet = false
}
func NewNullableShareExportPolicyRule(val *ShareExportPolicyRule) *NullableShareExportPolicyRule {
return &NullableShareExportPolicyRule{value: val, isSet: true}
}
func (v NullableShareExportPolicyRule) MarshalJSON() ([]byte, error) {
return json.Marshal(v.value)
}
func (v *NullableShareExportPolicyRule) UnmarshalJSON(src []byte) error {
v.isSet = true
return json.Unmarshal(src, &v.value)
}