Sha256: fdfea24a7253c7421ab93613690d18640cc924a23304d266c04ffff9b788d53b
Contents?: true
Size: 914 Bytes
Versions: 8
Compression:
Stored size: 914 Bytes
Contents
# frozen_string_literal: true module AnyCable module Rails module SocketIdTrackingController extend ActiveSupport::Concern included do around_action :anycable_tracking_socket_id end private def anycable_tracking_socket_id(&block) Rails.with_socket_id(request.headers[AnyCable.config.socket_id_header], &block) end end module SocketIdTrackingJob extend ActiveSupport::Concern attr_accessor :cable_socket_id def serialize return super unless Rails.current_socket_id super.merge("cable_socket_id" => Rails.current_socket_id) end def deserialize(job_data) super self.cable_socket_id = job_data["cable_socket_id"] end included do around_perform do |job, block| Rails.with_socket_id(job.cable_socket_id, &block) end end end end end
Version data entries
8 entries across 8 versions & 1 rubygems