Class: Assistant::TechnicalSupport::CaseReplayEpisodeReferenceValidator

Inherits:
Object
  • Object
show all
Defined in:
app/services/assistant/technical_support/case_replay_episode_reference_validator.rb

Overview

Ensures an extracted episode references real, disjoint event boundaries.

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(episode:, events:) ⇒ CaseReplayEpisodeReferenceValidator

Returns a new instance of CaseReplayEpisodeReferenceValidator.



11
12
13
14
# File 'app/services/assistant/technical_support/case_replay_episode_reference_validator.rb', line 11

def initialize(episode:, events:)
  @episode = episode
  @known_ids = Array(events).to_set(&:key)
end

Class Method Details

.call(episode:, events:) ⇒ Object



6
7
8
# File 'app/services/assistant/technical_support/case_replay_episode_reference_validator.rb', line 6

def call(episode:, events:)
  new(episode:, events:).call
end

Instance Method Details

#callObject



16
17
18
# File 'app/services/assistant/technical_support/case_replay_episode_reference_validator.rb', line 16

def call
  duplicate_fragment_error || unknown_fragment_error || required_boundary_error || overlap_error
end