/* * CLOUD API * * IONOS Enterprise-grade Infrastructure as a Service (IaaS) solutions can be managed through the Cloud API, in addition or as an alternative to the \"Data Center Designer\" (DCD) browser-based tool. Both methods employ consistent concepts and features, deliver similar power and flexibility, and can be used to perform a multitude of management tasks, including adding servers, volumes, configuring networks, and so on. * * API version: 6.0 */ // Code generated by OpenAPI Generator (https://openapi-generator.tech); DO NOT EDIT. package ionoscloud import ( "encoding/json" ) // Contract struct for Contract type Contract struct { // The type of the resource. Type *Type `json:"type,omitempty"` Properties *ContractProperties `json:"properties"` } // NewContract instantiates a new Contract 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 NewContract(properties ContractProperties) *Contract { this := Contract{} this.Properties = &properties return &this } // NewContractWithDefaults instantiates a new Contract 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 NewContractWithDefaults() *Contract { this := Contract{} return &this } // GetType returns the Type field value // If the value is explicit nil, the zero value for Type will be returned func (o *Contract) GetType() *Type { if o == nil { return nil } return o.Type } // GetTypeOk returns a tuple with the Type field value // 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 *Contract) GetTypeOk() (*Type, bool) { if o == nil { return nil, false } return o.Type, true } // SetType sets field value func (o *Contract) SetType(v Type) { o.Type = &v } // HasType returns a boolean if a field has been set. func (o *Contract) HasType() bool { if o != nil && o.Type != nil { return true } return false } // GetProperties returns the Properties field value // If the value is explicit nil, the zero value for ContractProperties will be returned func (o *Contract) GetProperties() *ContractProperties { if o == nil { return nil } return o.Properties } // GetPropertiesOk returns a tuple with the Properties field value // 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 *Contract) GetPropertiesOk() (*ContractProperties, bool) { if o == nil { return nil, false } return o.Properties, true } // SetProperties sets field value func (o *Contract) SetProperties(v ContractProperties) { o.Properties = &v } // HasProperties returns a boolean if a field has been set. func (o *Contract) HasProperties() bool { if o != nil && o.Properties != nil { return true } return false } func (o Contract) MarshalJSON() ([]byte, error) { toSerialize := map[string]interface{}{} if o.Type != nil { toSerialize["type"] = o.Type } if o.Properties != nil { toSerialize["properties"] = o.Properties } return json.Marshal(toSerialize) } type NullableContract struct { value *Contract isSet bool } func (v NullableContract) Get() *Contract { return v.value } func (v *NullableContract) Set(val *Contract) { v.value = val v.isSet = true } func (v NullableContract) IsSet() bool { return v.isSet } func (v *NullableContract) Unset() { v.value = nil v.isSet = false } func NewNullableContract(val *Contract) *NullableContract { return &NullableContract{value: val, isSet: true} } func (v NullableContract) MarshalJSON() ([]byte, error) { return json.Marshal(v.value) } func (v *NullableContract) UnmarshalJSON(src []byte) error { v.isSet = true return json.Unmarshal(src, &v.value) }