/* * 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" ) // Template struct for Template type Template struct { // The resource's unique identifier. Id *string `json:"id,omitempty"` // The type of object that has been created. Type *Type `json:"type,omitempty"` // URL to the object representation (absolute path). Href *string `json:"href,omitempty"` Metadata *DatacenterElementMetadata `json:"metadata,omitempty"` Properties *TemplateProperties `json:"properties"` } // NewTemplate instantiates a new Template 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 NewTemplate(properties TemplateProperties) *Template { this := Template{} this.Properties = &properties return &this } // NewTemplateWithDefaults instantiates a new Template 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 NewTemplateWithDefaults() *Template { this := Template{} return &this } // GetId returns the Id field value // If the value is explicit nil, the zero value for string will be returned func (o *Template) GetId() *string { if o == nil { return nil } return o.Id } // GetIdOk returns a tuple with the Id 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 *Template) GetIdOk() (*string, bool) { if o == nil { return nil, false } return o.Id, true } // SetId sets field value func (o *Template) SetId(v string) { o.Id = &v } // HasId returns a boolean if a field has been set. func (o *Template) HasId() bool { if o != nil && o.Id != nil { return true } return false } // GetType returns the Type field value // If the value is explicit nil, the zero value for Type will be returned func (o *Template) 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 *Template) GetTypeOk() (*Type, bool) { if o == nil { return nil, false } return o.Type, true } // SetType sets field value func (o *Template) SetType(v Type) { o.Type = &v } // HasType returns a boolean if a field has been set. func (o *Template) HasType() bool { if o != nil && o.Type != nil { return true } return false } // GetHref returns the Href field value // If the value is explicit nil, the zero value for string will be returned func (o *Template) GetHref() *string { if o == nil { return nil } return o.Href } // GetHrefOk returns a tuple with the Href 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 *Template) GetHrefOk() (*string, bool) { if o == nil { return nil, false } return o.Href, true } // SetHref sets field value func (o *Template) SetHref(v string) { o.Href = &v } // HasHref returns a boolean if a field has been set. func (o *Template) HasHref() bool { if o != nil && o.Href != nil { return true } return false } // GetMetadata returns the Metadata field value // If the value is explicit nil, the zero value for DatacenterElementMetadata will be returned func (o *Template) GetMetadata() *DatacenterElementMetadata { if o == nil { return nil } return o.Metadata } // GetMetadataOk returns a tuple with the Metadata 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 *Template) GetMetadataOk() (*DatacenterElementMetadata, bool) { if o == nil { return nil, false } return o.Metadata, true } // SetMetadata sets field value func (o *Template) SetMetadata(v DatacenterElementMetadata) { o.Metadata = &v } // HasMetadata returns a boolean if a field has been set. func (o *Template) HasMetadata() bool { if o != nil && o.Metadata != nil { return true } return false } // GetProperties returns the Properties field value // If the value is explicit nil, the zero value for TemplateProperties will be returned func (o *Template) GetProperties() *TemplateProperties { 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 *Template) GetPropertiesOk() (*TemplateProperties, bool) { if o == nil { return nil, false } return o.Properties, true } // SetProperties sets field value func (o *Template) SetProperties(v TemplateProperties) { o.Properties = &v } // HasProperties returns a boolean if a field has been set. func (o *Template) HasProperties() bool { if o != nil && o.Properties != nil { return true } return false } func (o Template) MarshalJSON() ([]byte, error) { toSerialize := map[string]interface{}{} if o.Id != nil { toSerialize["id"] = o.Id } if o.Type != nil { toSerialize["type"] = o.Type } if o.Href != nil { toSerialize["href"] = o.Href } if o.Metadata != nil { toSerialize["metadata"] = o.Metadata } if o.Properties != nil { toSerialize["properties"] = o.Properties } return json.Marshal(toSerialize) } type NullableTemplate struct { value *Template isSet bool } func (v NullableTemplate) Get() *Template { return v.value } func (v *NullableTemplate) Set(val *Template) { v.value = val v.isSet = true } func (v NullableTemplate) IsSet() bool { return v.isSet } func (v *NullableTemplate) Unset() { v.value = nil v.isSet = false } func NewNullableTemplate(val *Template) *NullableTemplate { return &NullableTemplate{value: val, isSet: true} } func (v NullableTemplate) MarshalJSON() ([]byte, error) { return json.Marshal(v.value) } func (v *NullableTemplate) UnmarshalJSON(src []byte) error { v.isSet = true return json.Unmarshal(src, &v.value) }