Class: Citrix::Training::Serializer::Training
- Inherits:
-
Object
- Object
- Citrix::Training::Serializer::Training
- Includes:
- Helpers::Initializer
- Defined in:
- lib/citrix/training/serializer/training.rb
Instance Attribute Summary collapse
-
#attributes ⇒ Object
Set attributes that can be (de)serialized.
Instance Method Summary collapse
Methods included from Helpers::Initializer
Instance Attribute Details
#attributes ⇒ Object
Set attributes that can be (de)serialized.
8 9 10 |
# File 'lib/citrix/training/serializer/training.rb', line 8 def attributes @attributes end |
Instance Method Details
#deserialize ⇒ Object
24 25 26 27 28 29 30 31 32 33 34 |
# File 'lib/citrix/training/serializer/training.rb', line 24 def deserialize { key: attributes['trainingKey'], name: attributes['name'], description: attributes['description'], timezone: attributes['timeZone'], dates: deserialize_dates(attributes['times'] || []), web_registration: !attributes['registrationSettings']['disableWebRegistration'], confirmation_email: !attributes['registrationSettings']['disableConfirmationEmail'] } end |
#serialize ⇒ Object
10 11 12 13 14 15 16 17 18 19 20 21 22 |
# File 'lib/citrix/training/serializer/training.rb', line 10 def serialize { name: attributes[:name], description: attributes[:description], timeZone: attributes[:timezone], times: (attributes[:dates] || []).map(&:serialize), organizers: (attributes[:organizers] || []).map(&:key), registrationSettings: { disableWebRegistration: !attributes.fetch(:web_registration, true), disableConfirmationEmail: !attributes.fetch(:confirmation_email, true), } } end |