# This file was generated by the Julia Swagger Code Generator
# Do not modify this file directly. Modify the swagger specification instead.



mutable struct ContainerServiceVMDiagnostics <: SwaggerModel
    enabled::Any # spec type: Union{ Nothing, Bool } # spec name: enabled
    storageUri::Any # spec type: Union{ Nothing, String } # spec name: storageUri

    function ContainerServiceVMDiagnostics(;enabled=nothing, storageUri=nothing)
        o = new()
        validate_property(ContainerServiceVMDiagnostics, Symbol("enabled"), enabled)
        setfield!(o, Symbol("enabled"), enabled)
        validate_property(ContainerServiceVMDiagnostics, Symbol("storageUri"), storageUri)
        setfield!(o, Symbol("storageUri"), storageUri)
        o
    end
end # type ContainerServiceVMDiagnostics

const _property_map_ContainerServiceVMDiagnostics = Dict{Symbol,Symbol}(Symbol("enabled")=>Symbol("enabled"), Symbol("storageUri")=>Symbol("storageUri"))
const _property_types_ContainerServiceVMDiagnostics = Dict{Symbol,String}(Symbol("enabled")=>"Bool", Symbol("storageUri")=>"String")
Base.propertynames(::Type{ ContainerServiceVMDiagnostics }) = collect(keys(_property_map_ContainerServiceVMDiagnostics))
Swagger.property_type(::Type{ ContainerServiceVMDiagnostics }, name::Symbol) = Union{Nothing,eval(Meta.parse(_property_types_ContainerServiceVMDiagnostics[name]))}
Swagger.field_name(::Type{ ContainerServiceVMDiagnostics }, property_name::Symbol) =  _property_map_ContainerServiceVMDiagnostics[property_name]

function check_required(o::ContainerServiceVMDiagnostics)
    (getproperty(o, Symbol("enabled")) === nothing) && (return false)
    true
end

function validate_property(::Type{ ContainerServiceVMDiagnostics }, name::Symbol, val)
end
