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.
13 14 15 16 17 18 |
# File 'lib/w3c_api/hal.rb', line 13 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.
11 12 13 |
# File 'lib/w3c_api/hal.rb', line 11 def default_value @default_value end |
#location ⇒ Object (readonly)
Returns the value of attribute location.
11 12 13 |
# File 'lib/w3c_api/hal.rb', line 11 def location @location end |
#name ⇒ Object (readonly)
Returns the value of attribute name.
11 12 13 |
# File 'lib/w3c_api/hal.rb', line 11 def name @name end |
#required ⇒ Object (readonly)
Returns the value of attribute required.
11 12 13 |
# File 'lib/w3c_api/hal.rb', line 11 def required @required end |
Instance Method Details
#path_parameter? ⇒ Boolean
28 29 30 |
# File 'lib/w3c_api/hal.rb', line 28 def path_parameter? @location == :path end |
#query_parameter? ⇒ Boolean
32 33 34 |
# File 'lib/w3c_api/hal.rb', line 32 def query_parameter? @location == :query end |
#validate! ⇒ Object
20 21 22 23 24 25 26 |
# File 'lib/w3c_api/hal.rb', line 20 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
36 37 38 39 |
# File 'lib/w3c_api/hal.rb', line 36 def validate_value(value) # Simple validation - accept any non-nil value !value.nil? end |