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


mutable struct IoK8sApiextensionsApiserverPkgApisApiextensionsV1beta1CustomResourceSubresourceScale <: SwaggerModel
    labelSelectorPath::Any # spec type: Union{ Nothing, String } # spec name: labelSelectorPath
    specReplicasPath::Any # spec type: Union{ Nothing, String } # spec name: specReplicasPath
    statusReplicasPath::Any # spec type: Union{ Nothing, String } # spec name: statusReplicasPath

    function IoK8sApiextensionsApiserverPkgApisApiextensionsV1beta1CustomResourceSubresourceScale(;labelSelectorPath=nothing, specReplicasPath=nothing, statusReplicasPath=nothing)
        o = new()
        validate_property(IoK8sApiextensionsApiserverPkgApisApiextensionsV1beta1CustomResourceSubresourceScale, Symbol("labelSelectorPath"), labelSelectorPath)
        setfield!(o, Symbol("labelSelectorPath"), labelSelectorPath)
        validate_property(IoK8sApiextensionsApiserverPkgApisApiextensionsV1beta1CustomResourceSubresourceScale, Symbol("specReplicasPath"), specReplicasPath)
        setfield!(o, Symbol("specReplicasPath"), specReplicasPath)
        validate_property(IoK8sApiextensionsApiserverPkgApisApiextensionsV1beta1CustomResourceSubresourceScale, Symbol("statusReplicasPath"), statusReplicasPath)
        setfield!(o, Symbol("statusReplicasPath"), statusReplicasPath)
        o
    end
end # type IoK8sApiextensionsApiserverPkgApisApiextensionsV1beta1CustomResourceSubresourceScale

const _property_map_IoK8sApiextensionsApiserverPkgApisApiextensionsV1beta1CustomResourceSubresourceScale = Dict{Symbol,Symbol}(Symbol("labelSelectorPath")=>Symbol("labelSelectorPath"), Symbol("specReplicasPath")=>Symbol("specReplicasPath"), Symbol("statusReplicasPath")=>Symbol("statusReplicasPath"))
const _property_types_IoK8sApiextensionsApiserverPkgApisApiextensionsV1beta1CustomResourceSubresourceScale = Dict{Symbol,String}(Symbol("labelSelectorPath")=>"String", Symbol("specReplicasPath")=>"String", Symbol("statusReplicasPath")=>"String")
Base.propertynames(::Type{ IoK8sApiextensionsApiserverPkgApisApiextensionsV1beta1CustomResourceSubresourceScale }) = collect(keys(_property_map_IoK8sApiextensionsApiserverPkgApisApiextensionsV1beta1CustomResourceSubresourceScale))
Swagger.property_type(::Type{ IoK8sApiextensionsApiserverPkgApisApiextensionsV1beta1CustomResourceSubresourceScale }, name::Symbol) = Union{Nothing,eval(Base.Meta.parse(_property_types_IoK8sApiextensionsApiserverPkgApisApiextensionsV1beta1CustomResourceSubresourceScale[name]))}
Swagger.field_name(::Type{ IoK8sApiextensionsApiserverPkgApisApiextensionsV1beta1CustomResourceSubresourceScale }, property_name::Symbol) =  _property_map_IoK8sApiextensionsApiserverPkgApisApiextensionsV1beta1CustomResourceSubresourceScale[property_name]

function check_required(o::IoK8sApiextensionsApiserverPkgApisApiextensionsV1beta1CustomResourceSubresourceScale)
    (getproperty(o, Symbol("specReplicasPath")) === nothing) && (return false)
    (getproperty(o, Symbol("statusReplicasPath")) === nothing) && (return false)
    true
end

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