Class: MockServer::HttpForwardValidateAction

Inherits:
Object
  • Object
show all
Defined in:
lib/mockserver/models.rb

Overview

Forward-and-validate action (org.mockserver.model.HttpForwardValidateAction): forwards the request to +host+/+port+ (+scheme+) and validates the request and/or response against the OpenAPI spec_url_or_payload.

validation_mode is the wire enum value "STRICT" (default) or "LOG_ONLY".

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(spec_url_or_payload: nil, host: nil, port: nil, scheme: nil, validate_request: nil, validate_response: nil, validation_mode: nil, delay: nil, primary: nil) ⇒ HttpForwardValidateAction

Returns a new instance of HttpForwardValidateAction.



2281
2282
2283
2284
2285
2286
2287
2288
2289
2290
2291
2292
2293
# File 'lib/mockserver/models.rb', line 2281

def initialize(spec_url_or_payload: nil, host: nil, port: nil, scheme: nil,
               validate_request: nil, validate_response: nil, validation_mode: nil,
               delay: nil, primary: nil)
  @spec_url_or_payload = spec_url_or_payload
  @host = host
  @port = port
  @scheme = scheme
  @validate_request = validate_request
  @validate_response = validate_response
  @validation_mode = validation_mode
  @delay = delay
  @primary = primary
end

Instance Attribute Details

#delayObject

Returns the value of attribute delay.



2277
2278
2279
# File 'lib/mockserver/models.rb', line 2277

def delay
  @delay
end

#hostObject

Returns the value of attribute host.



2277
2278
2279
# File 'lib/mockserver/models.rb', line 2277

def host
  @host
end

#portObject

Returns the value of attribute port.



2277
2278
2279
# File 'lib/mockserver/models.rb', line 2277

def port
  @port
end

#primaryObject

Returns the value of attribute primary.



2277
2278
2279
# File 'lib/mockserver/models.rb', line 2277

def primary
  @primary
end

#schemeObject

Returns the value of attribute scheme.



2277
2278
2279
# File 'lib/mockserver/models.rb', line 2277

def scheme
  @scheme
end

#spec_url_or_payloadObject

Returns the value of attribute spec_url_or_payload.



2277
2278
2279
# File 'lib/mockserver/models.rb', line 2277

def spec_url_or_payload
  @spec_url_or_payload
end

#validate_requestObject

Returns the value of attribute validate_request.



2277
2278
2279
# File 'lib/mockserver/models.rb', line 2277

def validate_request
  @validate_request
end

#validate_responseObject

Returns the value of attribute validate_response.



2277
2278
2279
# File 'lib/mockserver/models.rb', line 2277

def validate_response
  @validate_response
end

#validation_modeObject

Returns the value of attribute validation_mode.



2277
2278
2279
# File 'lib/mockserver/models.rb', line 2277

def validation_mode
  @validation_mode
end

Class Method Details

.from_hash(data) ⇒ Object



2309
2310
2311
2312
2313
2314
2315
2316
2317
2318
2319
2320
2321
2322
2323
# File 'lib/mockserver/models.rb', line 2309

def self.from_hash(data)
  return nil if data.nil?

  new(
    spec_url_or_payload: data['specUrlOrPayload'],
    host:                data['host'],
    port:                data['port'],
    scheme:              data['scheme'],
    validate_request:    data['validateRequest'],
    validate_response:   data['validateResponse'],
    validation_mode:     data['validationMode'],
    delay:               Delay.from_hash(data['delay']),
    primary:             data['primary']
  )
end

Instance Method Details

#to_hObject



2295
2296
2297
2298
2299
2300
2301
2302
2303
2304
2305
2306
2307
# File 'lib/mockserver/models.rb', line 2295

def to_h
  MockServer.strip_none({
    'specUrlOrPayload' => @spec_url_or_payload,
    'host'             => @host,
    'port'             => @port,
    'scheme'           => @scheme,
    'validateRequest'  => @validate_request,
    'validateResponse' => @validate_response,
    'validationMode'   => @validation_mode,
    'delay'            => @delay&.to_h,
    'primary'          => @primary
  })
end