Class: Factorix::Progress::UploadHandler

Inherits:
Object
  • Object
show all
Defined in:
lib/factorix/progress/upload_handler.rb

Overview

Upload event handler for progress presenters

This class listens to upload events and updates a progress presenter accordingly.

Instance Method Summary collapse

Constructor Details

#initialize(presenter) ⇒ UploadHandler

Create a new upload handler

Parameters:



12
# File 'lib/factorix/progress/upload_handler.rb', line 12

def initialize(presenter) = @presenter = presenter

Instance Method Details

#on_upload_completed(_event) ⇒ void

This method returns an undefined value.

Handle upload completed event

Parameters:

  • event (Dry::Events::Event)

    event with total_size payload



30
# File 'lib/factorix/progress/upload_handler.rb', line 30

def on_upload_completed(_event) = @presenter.finish

#on_upload_progress(event) ⇒ void

This method returns an undefined value.

Handle upload progress event

Parameters:

  • event (Dry::Events::Event)

    event with current_size payload



24
# File 'lib/factorix/progress/upload_handler.rb', line 24

def on_upload_progress(event) = @presenter.update(event[:current_size])

#on_upload_started(event) ⇒ void

This method returns an undefined value.

Handle upload started event

Parameters:

  • event (Dry::Events::Event)

    event with total_size payload



18
# File 'lib/factorix/progress/upload_handler.rb', line 18

def on_upload_started(event) = @presenter.start(total: event[:total_size], format: "Uploading [:bar] :percent :byte/:total_byte")