Exception: JetstreamBridge::BatchPublishError

Inherits:
PublishError show all
Defined in:
lib/jetstream_bridge/errors.rb

Overview

Raised when a batch publish has one or more failures.

Instance Attribute Summary collapse

Attributes inherited from PublishError

#event_id, #subject

Attributes inherited from Error

#context

Instance Method Summary collapse

Constructor Details

#initialize(message = nil, failed_events: [], successful_count: 0, context: {}) ⇒ BatchPublishError

Returns a new instance of BatchPublishError.

Parameters:

  • message (String, nil) (defaults to: nil)

    Human-readable error message

  • failed_events (Array<Hash>) (defaults to: [])

    Failed event details

  • successful_count (Integer) (defaults to: 0)

    Count of successful publishes

  • context (Hash) (defaults to: {})

    Additional diagnostic context



72
73
74
75
76
77
78
79
80
81
82
# File 'lib/jetstream_bridge/errors.rb', line 72

def initialize(message = nil, failed_events: [], successful_count: 0, context: {})
  @failed_events = failed_events
  @successful_count = successful_count
  super(
    message,
    context: context.merge(
      failed_count: failed_events.size,
      successful_count: successful_count
    )
  )
end

Instance Attribute Details

#failed_eventsArray<Hash> (readonly)

Returns Details of each failed event.

Returns:

  • (Array<Hash>)

    Details of each failed event



64
65
66
# File 'lib/jetstream_bridge/errors.rb', line 64

def failed_events
  @failed_events
end

#successful_countInteger (readonly)

Returns Number of events that published successfully.

Returns:

  • (Integer)

    Number of events that published successfully



66
67
68
# File 'lib/jetstream_bridge/errors.rb', line 66

def successful_count
  @successful_count
end