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


mutable struct ApplicationGatewayRewriteRuleCondition <: SwaggerModel
    variable::Any # spec type: Union{ Nothing, String } # spec name: variable
    pattern::Any # spec type: Union{ Nothing, String } # spec name: pattern
    ignoreCase::Any # spec type: Union{ Nothing, Bool } # spec name: ignoreCase
    negate::Any # spec type: Union{ Nothing, Bool } # spec name: negate

    function ApplicationGatewayRewriteRuleCondition(;variable=nothing, pattern=nothing, ignoreCase=nothing, negate=nothing)
        o = new()
        validate_property(ApplicationGatewayRewriteRuleCondition, Symbol("variable"), variable)
        setfield!(o, Symbol("variable"), variable)
        validate_property(ApplicationGatewayRewriteRuleCondition, Symbol("pattern"), pattern)
        setfield!(o, Symbol("pattern"), pattern)
        validate_property(ApplicationGatewayRewriteRuleCondition, Symbol("ignoreCase"), ignoreCase)
        setfield!(o, Symbol("ignoreCase"), ignoreCase)
        validate_property(ApplicationGatewayRewriteRuleCondition, Symbol("negate"), negate)
        setfield!(o, Symbol("negate"), negate)
        o
    end
end # type ApplicationGatewayRewriteRuleCondition

const _property_map_ApplicationGatewayRewriteRuleCondition = Dict{Symbol,Symbol}(Symbol("variable")=>Symbol("variable"), Symbol("pattern")=>Symbol("pattern"), Symbol("ignoreCase")=>Symbol("ignoreCase"), Symbol("negate")=>Symbol("negate"))
const _property_types_ApplicationGatewayRewriteRuleCondition = Dict{Symbol,String}(Symbol("variable")=>"String", Symbol("pattern")=>"String", Symbol("ignoreCase")=>"Bool", Symbol("negate")=>"Bool")
Base.propertynames(::Type{ ApplicationGatewayRewriteRuleCondition }) = collect(keys(_property_map_ApplicationGatewayRewriteRuleCondition))
Swagger.property_type(::Type{ ApplicationGatewayRewriteRuleCondition }, name::Symbol) = Union{Nothing,eval(Base.Meta.parse(_property_types_ApplicationGatewayRewriteRuleCondition[name]))}
Swagger.field_name(::Type{ ApplicationGatewayRewriteRuleCondition }, property_name::Symbol) =  _property_map_ApplicationGatewayRewriteRuleCondition[property_name]

function check_required(o::ApplicationGatewayRewriteRuleCondition)
    true
end

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