Class: Integrations::MyMiniFactory::CollectionDeserializer
- Inherits:
-
BaseDeserializer
- Object
- BaseDeserializer
- BaseDeserializer
- Integrations::MyMiniFactory::CollectionDeserializer
- Defined in:
- app/deserializers/integrations/my_mini_factory/collection_deserializer.rb
Constant Summary
Constants inherited from BaseDeserializer
BaseDeserializer::USERNAME_PATTERN
Instance Attribute Summary collapse
-
#collection_slug ⇒ Object
readonly
Returns the value of attribute collection_slug.
Instance Method Summary collapse
Instance Attribute Details
#collection_slug ⇒ Object (readonly)
Returns the value of attribute collection_slug.
2 3 4 |
# File 'app/deserializers/integrations/my_mini_factory/collection_deserializer.rb', line 2 def collection_slug @collection_slug end |
Instance Method Details
#capabilities ⇒ Object
13 14 15 16 17 18 19 20 21 |
# File 'app/deserializers/integrations/my_mini_factory/collection_deserializer.rb', line 13 def capabilities { class: Collection, name: true, notes: false, creator: true, models: true } end |
#deserialize ⇒ Object
4 5 6 7 8 9 10 11 |
# File 'app/deserializers/integrations/my_mini_factory/collection_deserializer.rb', line 4 def deserialize return {} unless valid? r = fetch "users/#{CGI.escapeURIComponent(@username)}/collections/#{CGI.escapeURIComponent(@collection_slug)}" { name: r.body["name"], models: r.body.dig("objects", "items")&.pluck("url") }.merge(creator_attributes(r.body["owner"])) end |