Sha256: c0a1c5c04178a7b1806d01aba971ac6f63d9ed2b68174e51b7fd142ae1c0f50b

Contents?: true

Size: 603 Bytes

Versions: 2

Compression:

Stored size: 603 Bytes

Contents

# <%= autogenerated_event_warning %>

module LiveEvents
  class BaseEvent < CanvasSync::Job
    attr_accessor :raw_payload
    attr_accessor :payload
    attr_accessor :metadata

    def perform(event_payload)
      @raw_payload = event_payload
      @metadata = HashWithIndifferentAccess.new(event_payload["attributes"])
      @payload = HashWithIndifferentAccess.new(event_payload["body"])
    end

    # Live events will use a canvas global ID (cross shard) for any ID's provided. This method will return the local ID.
    def local_canvas_id(id)
      id.to_i % 10_000_000_000_000
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
canvas_sync-0.10.2 lib/canvas_sync/generators/templates/services/live_events/base_event.rb
canvas_sync-0.10.0 lib/canvas_sync/generators/templates/services/live_events/base_event.rb