Sha256: 8b1bf2dbdbef14c789349762722b55524f9f302571a69dfdde9208cca7ec8adf

Contents?: true

Size: 865 Bytes

Versions: 4

Compression:

Stored size: 865 Bytes

Contents

# typed: false

require 'datadog/tracing/contrib/action_cable/event'
require 'datadog/tracing/contrib/action_cable/events/broadcast'
require 'datadog/tracing/contrib/action_cable/events/perform_action'
require 'datadog/tracing/contrib/action_cable/events/transmit'

module Datadog
  module Tracing
    module Contrib
      module ActionCable
        # Defines collection of instrumented ActionCable events
        module Events
          ALL = [
            Events::Broadcast,
            Events::PerformAction,
            Events::Transmit
          ].freeze

          module_function

          def all
            self::ALL
          end

          def subscriptions
            all.collect(&:subscriptions).collect(&:to_a).flatten
          end

          def subscribe!
            all.each(&:subscribe!)
          end
        end
      end
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
ddtrace-1.2.0 lib/datadog/tracing/contrib/action_cable/events.rb
ddtrace-1.1.0 lib/datadog/tracing/contrib/action_cable/events.rb
ddtrace-1.0.0 lib/datadog/tracing/contrib/action_cable/events.rb
ddtrace-1.0.0.beta2 lib/datadog/tracing/contrib/action_cable/events.rb