Sha256: 896e1a9407f95ba9f07622da654fc454612b21449afc6eb403a83f84e37fbbea
Contents?: true
Size: 739 Bytes
Versions: 4
Compression:
Stored size: 739 Bytes
Contents
require 'time' module Notifications class Client class Template FIELDS = %i( id type created_at updated_at created_by version body subject ).freeze attr_reader(*FIELDS) def initialize(notification) FIELDS.each do |field| instance_variable_set(:"@#{field}", notification.fetch(field.to_s, nil)) end end %i( created_at updated_at ).each do |field| define_method field do begin value = instance_variable_get(:"@#{field}") Time.parse value rescue StandardError value end end end end end end
Version data entries
4 entries across 4 versions & 1 rubygems