Class: Wes::Data::API::Model::Base
- Inherits:
-
Object
- Object
- Wes::Data::API::Model::Base
- Defined in:
- lib/wes/data/api/model/base.rb
Direct Known Subclasses
Address, Brand, BrandPartnerAccount, BrandUser, Brief, BriefAnswer, BriefQuestion, BriefRewards, BriefingAnswer, BriefingQuestion, Collective, CreatorUser, Showcase, Submission, TagVideoVersion, Transaction, Video, VideoPartnerAsset, VideoTranscodingState, VideoVersion
Instance Attribute Summary collapse
-
#attributes ⇒ Object
readonly
Returns the value of attribute attributes.
Instance Method Summary collapse
- #exist? ⇒ Boolean
- #id ⇒ Object
-
#initialize(attrs, check_id_set = true) ⇒ Base
constructor
A new instance of Base.
Constructor Details
#initialize(attrs, check_id_set = true) ⇒ Base
Returns a new instance of Base.
8 9 10 11 12 |
# File 'lib/wes/data/api/model/base.rb', line 8 def initialize(attrs, check_id_set = true) @attributes = attrs.is_a?(Hash) ? OpenStruct.new(attrs) : attrs id_set? if check_id_set end |
Dynamic Method Handling
This class handles dynamic methods through the method_missing method
#method_missing(sym, *_args, &_block) ⇒ Object (protected)
41 42 43 |
# File 'lib/wes/data/api/model/base.rb', line 41 def method_missing(sym, *_args, &_block) attributes.to_h.fetch(sym, nil) end |
Instance Attribute Details
#attributes ⇒ Object (readonly)
Returns the value of attribute attributes.
6 7 8 |
# File 'lib/wes/data/api/model/base.rb', line 6 def attributes @attributes end |
Instance Method Details
#exist? ⇒ Boolean
14 15 16 |
# File 'lib/wes/data/api/model/base.rb', line 14 def exist? !attributes.nil? end |
#id ⇒ Object
18 19 20 |
# File 'lib/wes/data/api/model/base.rb', line 18 def id attributes.id end |