# encoding: utf-8 # Code generated by Microsoft (R) AutoRest Code Generator. # Changes may cause incorrect behavior and will be lost if the code is # regenerated. module Azure::IotCentral::Mgmt::V2018_09_01 module Models # # The common properties of an ARM resource. # class Resource include MsRestAzure # @return [String] The ARM resource identifier. attr_accessor :id # @return [String] The ARM resource name. attr_accessor :name # @return [String] The resource type. attr_accessor :type # @return [String] The resource location. attr_accessor :location # @return [Hash{String => String}] The resource tags. attr_accessor :tags # @return [String] the name of the resource group of the resource. def resource_group unless self.id.nil? groups = self.id.match(/.+\/resourceGroups\/([^\/]+)\/.+/) groups.captures[0].strip if groups end end # # Mapper for Resource class as Ruby Hash. # This will be used for serialization/deserialization. # def self.mapper() { client_side_validation: true, required: false, serialized_name: 'Resource', type: { name: 'Composite', class_name: 'Resource', model_properties: { id: { client_side_validation: true, required: false, read_only: true, serialized_name: 'id', type: { name: 'String' } }, name: { client_side_validation: true, required: false, read_only: true, serialized_name: 'name', constraints: { Pattern: '^(?![0-9]+$)(?!-)[a-zA-Z0-9-]{2,99}[a-zA-Z0-9]$' }, type: { name: 'String' } }, type: { client_side_validation: true, required: false, read_only: true, serialized_name: 'type', type: { name: 'String' } }, location: { client_side_validation: true, required: true, serialized_name: 'location', type: { name: 'String' } }, tags: { client_side_validation: true, required: false, serialized_name: 'tags', type: { name: 'Dictionary', value: { client_side_validation: true, required: false, serialized_name: 'StringElementType', type: { name: 'String' } } } } } } } end end end end