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


mutable struct ConnectionMonitorSource <: SwaggerModel
    resourceId::Any # spec type: Union{ Nothing, String } # spec name: resourceId
    port::Any # spec type: Union{ Nothing, Int32 } # spec name: port

    function ConnectionMonitorSource(;resourceId=nothing, port=nothing)
        o = new()
        validate_property(ConnectionMonitorSource, Symbol("resourceId"), resourceId)
        setfield!(o, Symbol("resourceId"), resourceId)
        validate_property(ConnectionMonitorSource, Symbol("port"), port)
        setfield!(o, Symbol("port"), port)
        o
    end
end # type ConnectionMonitorSource

const _property_map_ConnectionMonitorSource = Dict{Symbol,Symbol}(Symbol("resourceId")=>Symbol("resourceId"), Symbol("port")=>Symbol("port"))
const _property_types_ConnectionMonitorSource = Dict{Symbol,String}(Symbol("resourceId")=>"String", Symbol("port")=>"Int32")
Base.propertynames(::Type{ ConnectionMonitorSource }) = collect(keys(_property_map_ConnectionMonitorSource))
Swagger.property_type(::Type{ ConnectionMonitorSource }, name::Symbol) = Union{Nothing,eval(Base.Meta.parse(_property_types_ConnectionMonitorSource[name]))}
Swagger.field_name(::Type{ ConnectionMonitorSource }, property_name::Symbol) =  _property_map_ConnectionMonitorSource[property_name]

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

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