Class: Omnizip::Progress::ProgressReporter Abstract

Inherits:
Object
  • Object
show all
Defined in:
lib/omnizip/progress/progress_reporter.rb

Overview

This class is abstract.

Subclass and override #report to implement a reporter

Abstract base class for progress reporters.

This class defines the interface for progress reporting strategies. Subclasses implement specific reporting mechanisms (console, callback, log file, etc.).

Instance Method Summary collapse

Instance Method Details

#finish(progress) ⇒ Object

Called when operation completes (optional hook)

Parameters:



35
36
37
# File 'lib/omnizip/progress/progress_reporter.rb', line 35

def finish(progress)
  # Optional hook for subclasses
end

#report(progress) ⇒ Object

Report progress to the output mechanism

Parameters:

Raises:

  • (NotImplementedError)

    if not implemented by subclass



21
22
23
# File 'lib/omnizip/progress/progress_reporter.rb', line 21

def report(progress)
  raise NotImplementedError, "#{self.class} must implement #report"
end

#start(progress) ⇒ Object

Called when operation starts (optional hook)

Parameters:



28
29
30
# File 'lib/omnizip/progress/progress_reporter.rb', line 28

def start(progress)
  # Optional hook for subclasses
end