# 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::StorageCache::Mgmt::V2020_10_01 module Models # # Type of the Storage Target. # class StorageTarget < StorageTargetResource include MsRestAzure # @return [Array] List of Cache namespace junctions to # target for namespace associations. attr_accessor :junctions # @return [ProvisioningStateType] ARM provisioning state, see # https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/Addendum.md#provisioningstate-property. # Possible values include: 'Succeeded', 'Failed', 'Cancelled', # 'Creating', 'Deleting', 'Updating' attr_accessor :provisioning_state # @return [Nfs3Target] Properties when targetType is nfs3. attr_accessor :nfs3 # @return [ClfsTarget] Properties when targetType is clfs. attr_accessor :clfs # @return [UnknownTarget] Properties when targetType is unknown. attr_accessor :unknown # @return [String] Polymorphic Discriminator attr_accessor :targetType # # Mapper for StorageTarget class as Ruby Hash. # This will be used for serialization/deserialization. # def self.mapper() { client_side_validation: true, required: false, serialized_name: 'StorageTarget', type: { name: 'Composite', class_name: 'StorageTarget', model_properties: { name: { client_side_validation: true, required: false, read_only: true, serialized_name: 'name', type: { name: 'String' } }, id: { client_side_validation: true, required: false, read_only: true, serialized_name: 'id', 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: false, read_only: true, serialized_name: 'location', type: { name: 'String' } }, system_data: { client_side_validation: true, required: false, read_only: true, serialized_name: 'systemData', type: { name: 'Composite', class_name: 'SystemData' } }, junctions: { client_side_validation: true, required: false, serialized_name: 'properties.junctions', type: { name: 'Sequence', element: { client_side_validation: true, required: false, serialized_name: 'NamespaceJunctionElementType', type: { name: 'Composite', class_name: 'NamespaceJunction' } } } }, provisioning_state: { client_side_validation: true, required: false, serialized_name: 'properties.provisioningState', type: { name: 'String' } }, nfs3: { client_side_validation: true, required: false, serialized_name: 'properties.nfs3', type: { name: 'Composite', class_name: 'Nfs3Target' } }, clfs: { client_side_validation: true, required: false, serialized_name: 'properties.clfs', type: { name: 'Composite', class_name: 'ClfsTarget' } }, unknown: { client_side_validation: true, required: false, serialized_name: 'properties.unknown', type: { name: 'Composite', class_name: 'UnknownTarget' } }, targetType: { client_side_validation: true, required: true, serialized_name: 'properties.targetType', type: { name: 'String' } } } } } end end end end