Class: Rocketwheel::Command::Encoder

Inherits:
Object
  • Object
show all
Defined in:
lib/rocketwheel/command/encoder.rb

Instance Method Summary collapse

Constructor Details

#initialize(manifest) ⇒ Encoder

Returns a new instance of Encoder.



9
10
11
# File 'lib/rocketwheel/command/encoder.rb', line 9

def initialize(manifest)
  @manifest = manifest
end

Instance Method Details

#encode(files) ⇒ Object

Public: Starts an encoding job, sending the files to transloadit.



14
15
16
17
# File 'lib/rocketwheel/command/encoder.rb', line 14

def encode(files)
  files = files.map { |file| open(file) }
  @response = transloadit.assembly(assembly).submit! *files
end

#encoded?Boolean

Returns:

  • (Boolean)


19
20
21
22
# File 'lib/rocketwheel/command/encoder.rb', line 19

def encoded?
  response.reload!
  response.completed?
end

#store(destination) ⇒ Object



24
25
26
27
28
29
30
31
32
33
34
# File 'lib/rocketwheel/command/encoder.rb', line 24

def store(destination)
  response['results'].each do |name, result|
    result.each do |result|
      yield result if block_given?
      folder = File.join(destination, name)
      FileUtils.mkdir_p(folder)
      filename = File.join(folder, result['name'])
      download(result['url'], filename)
    end
  end
end