lib/cyclone_lariat/messages/v2/event.rb in cyclone_lariat-1.0.0.rc2 vs lib/cyclone_lariat/messages/v2/event.rb in cyclone_lariat-1.0.0.rc3
- old
+ new
@@ -1,19 +1,43 @@
# frozen_string_literal: true
-require 'cyclone_lariat/messages/v2/abstract'
+require 'cyclone_lariat/messages/abstract'
+require 'cyclone_lariat/messages/v2/validator'
module CycloneLariat
module Messages
module V2
class Event < Abstract
- include LunaPark::Extensions::Validatable
- validator Messages::V2::Validator
+ validator Validator
+ attrs :subject, :object
+
KIND = 'event'
def kind
KIND
+ end
+
+ def serialize
+ {
+ uuid: uuid,
+ publisher: publisher,
+ type: [kind, type].join('_'),
+ version: version,
+ data: data,
+ request_id: request_id,
+ sent_at: sent_at&.iso8601(3),
+ subject: subject,
+ object: object
+ }.compact
+ end
+
+ def subject
+ @subject ||= {}
+ end
+
+ def object
+ @object ||= {}
end
end
end
end
end