Class: W3cApi::SimpleParameter
- Inherits:
-
Object
- Object
- W3cApi::SimpleParameter
- Defined in:
- lib/w3c_api/hal.rb
Overview
Simple parameter class to satisfy lutaml-hal validation requirements
Instance Attribute Summary collapse
-
#default_value ⇒ Object
readonly
Returns the value of attribute default_value.
-
#location ⇒ Object
readonly
Returns the value of attribute location.
-
#name ⇒ Object
readonly
Returns the value of attribute name.
-
#required ⇒ Object
readonly
Returns the value of attribute required.
Instance Method Summary collapse
-
#initialize(name, location: :path, required: false, default_value: nil) ⇒ SimpleParameter
constructor
A new instance of SimpleParameter.
- #path_parameter? ⇒ Boolean
- #query_parameter? ⇒ Boolean
- #validate! ⇒ Object
- #validate_value(value) ⇒ Object
Constructor Details
#initialize(name, location: :path, required: false, default_value: nil) ⇒ SimpleParameter
Returns a new instance of SimpleParameter.
12 13 14 15 16 17 |
# File 'lib/w3c_api/hal.rb', line 12 def initialize(name, location: :path, required: false, default_value: nil) @name = name.to_s @location = location @required = required @default_value = default_value end |
Instance Attribute Details
#default_value ⇒ Object (readonly)
Returns the value of attribute default_value.
10 11 12 |
# File 'lib/w3c_api/hal.rb', line 10 def default_value @default_value end |
#location ⇒ Object (readonly)
Returns the value of attribute location.
10 11 12 |
# File 'lib/w3c_api/hal.rb', line 10 def location @location end |
#name ⇒ Object (readonly)
Returns the value of attribute name.
10 11 12 |
# File 'lib/w3c_api/hal.rb', line 10 def name @name end |
#required ⇒ Object (readonly)
Returns the value of attribute required.
10 11 12 |
# File 'lib/w3c_api/hal.rb', line 10 def required @required end |
Instance Method Details
#path_parameter? ⇒ Boolean
27 28 29 |
# File 'lib/w3c_api/hal.rb', line 27 def path_parameter? @location == :path end |
#query_parameter? ⇒ Boolean
31 32 33 |
# File 'lib/w3c_api/hal.rb', line 31 def query_parameter? @location == :query end |
#validate! ⇒ Object
19 20 21 22 23 24 25 |
# File 'lib/w3c_api/hal.rb', line 19 def validate! # Simple validation - just ensure name is present if @name.nil? || @name.empty? raise ArgumentError, "Parameter name cannot be empty" end end |
#validate_value(value) ⇒ Object
35 36 37 38 |
# File 'lib/w3c_api/hal.rb', line 35 def validate_value(value) # Simple validation - accept any non-nil value !value.nil? end |