/* 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" ) // checks if the CreateSharePayload type satisfies the MappedNullable interface at compile time var _ MappedNullable = &CreateSharePayload{} /* types and functions for exportPolicyName */ // isNullableString type CreateSharePayloadGetExportPolicyNameAttributeType = *NullableString func getCreateSharePayloadGetExportPolicyNameAttributeTypeOk(arg CreateSharePayloadGetExportPolicyNameAttributeType) (ret CreateSharePayloadGetExportPolicyNameRetType, ok bool) { if arg == nil { return nil, false } return arg.Get(), true } func setCreateSharePayloadGetExportPolicyNameAttributeType(arg *CreateSharePayloadGetExportPolicyNameAttributeType, val CreateSharePayloadGetExportPolicyNameRetType) { if IsNil(*arg) { *arg = NewNullableString(val) } else { (*arg).Set(val) } } type CreateSharePayloadGetExportPolicyNameArgType = *string type CreateSharePayloadGetExportPolicyNameRetType = *string /* types and functions for labels */ // isContainer type CreateSharePayloadGetLabelsAttributeType = *map[string]string type CreateSharePayloadGetLabelsArgType = map[string]string type CreateSharePayloadGetLabelsRetType = map[string]string func getCreateSharePayloadGetLabelsAttributeTypeOk(arg CreateSharePayloadGetLabelsAttributeType) (ret CreateSharePayloadGetLabelsRetType, ok bool) { if arg == nil { return ret, false } return *arg, true } func setCreateSharePayloadGetLabelsAttributeType(arg *CreateSharePayloadGetLabelsAttributeType, val CreateSharePayloadGetLabelsRetType) { *arg = &val } /* types and functions for name */ // isNotNullableString type CreateSharePayloadGetNameAttributeType = *string func getCreateSharePayloadGetNameAttributeTypeOk(arg CreateSharePayloadGetNameAttributeType) (ret CreateSharePayloadGetNameRetType, ok bool) { if arg == nil { return ret, false } return *arg, true } func setCreateSharePayloadGetNameAttributeType(arg *CreateSharePayloadGetNameAttributeType, val CreateSharePayloadGetNameRetType) { *arg = &val } type CreateSharePayloadGetNameArgType = string type CreateSharePayloadGetNameRetType = string /* types and functions for spaceHardLimitGigabytes */ // isInteger type CreateSharePayloadGetSpaceHardLimitGigabytesAttributeType = *int64 type CreateSharePayloadGetSpaceHardLimitGigabytesArgType = int64 type CreateSharePayloadGetSpaceHardLimitGigabytesRetType = int64 func getCreateSharePayloadGetSpaceHardLimitGigabytesAttributeTypeOk(arg CreateSharePayloadGetSpaceHardLimitGigabytesAttributeType) (ret CreateSharePayloadGetSpaceHardLimitGigabytesRetType, ok bool) { if arg == nil { return ret, false } return *arg, true } func setCreateSharePayloadGetSpaceHardLimitGigabytesAttributeType(arg *CreateSharePayloadGetSpaceHardLimitGigabytesAttributeType, val CreateSharePayloadGetSpaceHardLimitGigabytesRetType) { *arg = &val } // CreateSharePayload struct for CreateSharePayload type CreateSharePayload struct { // Name of the Share Export Policy to use in the Share. Note that if this is not set, the Share can only be mounted in read only by clients with IPs matching the IP ACL of the Resource Pool hosting this Share. You can also assign a Share Export Policy after creating the Share ExportPolicyName CreateSharePayloadGetExportPolicyNameAttributeType `json:"exportPolicyName,omitempty"` // An optional object that represents the labels associated with the share keys are validated using the following regex '^[\\\\p{Ll}][\\\\p{Ll}\\\\p{N}_-]*$' and cannot be empty values are validated using the following regex '^[\\\\p{Ll}\\\\p{N}_-]*$' Labels CreateSharePayloadGetLabelsAttributeType `json:"labels,omitempty"` // Name of the Share Name CreateSharePayloadGetNameAttributeType `json:"name,omitempty"` // Space hard limit for the Share. If zero, the Share will have access to the full space of the Resource Pool it lives in. (unit: gibibytes) // Can be cast to int32 without loss of precision. SpaceHardLimitGigabytes CreateSharePayloadGetSpaceHardLimitGigabytesAttributeType `json:"spaceHardLimitGigabytes,omitempty"` } // NewCreateSharePayload instantiates a new CreateSharePayload 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 NewCreateSharePayload() *CreateSharePayload { this := CreateSharePayload{} return &this } // NewCreateSharePayloadWithDefaults instantiates a new CreateSharePayload 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 NewCreateSharePayloadWithDefaults() *CreateSharePayload { this := CreateSharePayload{} return &this } // GetExportPolicyName returns the ExportPolicyName field value if set, zero value otherwise (both if not set or set to explicit null). func (o *CreateSharePayload) GetExportPolicyName() (res CreateSharePayloadGetExportPolicyNameRetType) { res, _ = o.GetExportPolicyNameOk() return } // GetExportPolicyNameOk returns a tuple with the ExportPolicyName 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 *CreateSharePayload) GetExportPolicyNameOk() (ret CreateSharePayloadGetExportPolicyNameRetType, ok bool) { return getCreateSharePayloadGetExportPolicyNameAttributeTypeOk(o.ExportPolicyName) } // HasExportPolicyName returns a boolean if a field has been set. func (o *CreateSharePayload) HasExportPolicyName() bool { _, ok := o.GetExportPolicyNameOk() return ok } // SetExportPolicyName gets a reference to the given string and assigns it to the ExportPolicyName field. func (o *CreateSharePayload) SetExportPolicyName(v CreateSharePayloadGetExportPolicyNameRetType) { setCreateSharePayloadGetExportPolicyNameAttributeType(&o.ExportPolicyName, v) } // SetExportPolicyNameNil sets the value for ExportPolicyName to be an explicit nil func (o *CreateSharePayload) SetExportPolicyNameNil() { o.ExportPolicyName = nil } // UnsetExportPolicyName ensures that no value is present for ExportPolicyName, not even an explicit nil func (o *CreateSharePayload) UnsetExportPolicyName() { o.ExportPolicyName = nil } // GetLabels returns the Labels field value if set, zero value otherwise. func (o *CreateSharePayload) GetLabels() (res CreateSharePayloadGetLabelsRetType) { 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 *CreateSharePayload) GetLabelsOk() (ret CreateSharePayloadGetLabelsRetType, ok bool) { return getCreateSharePayloadGetLabelsAttributeTypeOk(o.Labels) } // HasLabels returns a boolean if a field has been set. func (o *CreateSharePayload) 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 *CreateSharePayload) SetLabels(v CreateSharePayloadGetLabelsRetType) { setCreateSharePayloadGetLabelsAttributeType(&o.Labels, v) } // GetName returns the Name field value if set, zero value otherwise. func (o *CreateSharePayload) GetName() (res CreateSharePayloadGetNameRetType) { 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 *CreateSharePayload) GetNameOk() (ret CreateSharePayloadGetNameRetType, ok bool) { return getCreateSharePayloadGetNameAttributeTypeOk(o.Name) } // HasName returns a boolean if a field has been set. func (o *CreateSharePayload) HasName() bool { _, ok := o.GetNameOk() return ok } // SetName gets a reference to the given string and assigns it to the Name field. func (o *CreateSharePayload) SetName(v CreateSharePayloadGetNameRetType) { setCreateSharePayloadGetNameAttributeType(&o.Name, v) } // GetSpaceHardLimitGigabytes returns the SpaceHardLimitGigabytes field value if set, zero value otherwise. func (o *CreateSharePayload) GetSpaceHardLimitGigabytes() (res CreateSharePayloadGetSpaceHardLimitGigabytesRetType) { res, _ = o.GetSpaceHardLimitGigabytesOk() return } // GetSpaceHardLimitGigabytesOk returns a tuple with the SpaceHardLimitGigabytes field value if set, nil otherwise // and a boolean to check if the value has been set. func (o *CreateSharePayload) GetSpaceHardLimitGigabytesOk() (ret CreateSharePayloadGetSpaceHardLimitGigabytesRetType, ok bool) { return getCreateSharePayloadGetSpaceHardLimitGigabytesAttributeTypeOk(o.SpaceHardLimitGigabytes) } // HasSpaceHardLimitGigabytes returns a boolean if a field has been set. func (o *CreateSharePayload) HasSpaceHardLimitGigabytes() bool { _, ok := o.GetSpaceHardLimitGigabytesOk() return ok } // SetSpaceHardLimitGigabytes gets a reference to the given int64 and assigns it to the SpaceHardLimitGigabytes field. func (o *CreateSharePayload) SetSpaceHardLimitGigabytes(v CreateSharePayloadGetSpaceHardLimitGigabytesRetType) { setCreateSharePayloadGetSpaceHardLimitGigabytesAttributeType(&o.SpaceHardLimitGigabytes, v) } func (o CreateSharePayload) ToMap() (map[string]interface{}, error) { toSerialize := map[string]interface{}{} if val, ok := getCreateSharePayloadGetExportPolicyNameAttributeTypeOk(o.ExportPolicyName); ok { toSerialize["ExportPolicyName"] = val } if val, ok := getCreateSharePayloadGetLabelsAttributeTypeOk(o.Labels); ok { toSerialize["Labels"] = val } if val, ok := getCreateSharePayloadGetNameAttributeTypeOk(o.Name); ok { toSerialize["Name"] = val } if val, ok := getCreateSharePayloadGetSpaceHardLimitGigabytesAttributeTypeOk(o.SpaceHardLimitGigabytes); ok { toSerialize["SpaceHardLimitGigabytes"] = val } return toSerialize, nil } type NullableCreateSharePayload struct { value *CreateSharePayload isSet bool } func (v NullableCreateSharePayload) Get() *CreateSharePayload { return v.value } func (v *NullableCreateSharePayload) Set(val *CreateSharePayload) { v.value = val v.isSet = true } func (v NullableCreateSharePayload) IsSet() bool { return v.isSet } func (v *NullableCreateSharePayload) Unset() { v.value = nil v.isSet = false } func NewNullableCreateSharePayload(val *CreateSharePayload) *NullableCreateSharePayload { return &NullableCreateSharePayload{value: val, isSet: true} } func (v NullableCreateSharePayload) MarshalJSON() ([]byte, error) { return json.Marshal(v.value) } func (v *NullableCreateSharePayload) UnmarshalJSON(src []byte) error { v.isSet = true return json.Unmarshal(src, &v.value) }